Light The Way To Every Component

How do you organize your stock of components and modules? If an unruly pile of anti-static bags and envelopes from China stuffed into a cardboard box sounds familiar, then you need help from [Dimitris Tassopoulos]. He’s organized his parts into drawers and created a database, then linked it via an ESP8266 and a string of addressable LEDs to light up the individual drawer in which any given component resides. It’s a genius idea, as you can see in action in the video below the break.

Behind the scenes is a web server sitting atop an SQL database, with a PHP front end. It’s running on a Banana Pi board, but it could just as easily be running on any other similar SBC. The ESP8266 has a REST API to which the webserver connects when a component is sought, and from that it knows which LED to light.

The LED strip is not the tape with which most readers will be familiar, but a string of the type we might be more used to as Christmas lights. These have a 100mm spacing between LEDs, allowing them to be easily positioned behind each drawer. The result is a very effective parts inventory system. We’re not entirely sure that it would entirely banish the tide of anti-static bags here, but we’re impressed nevertheless.

47 thoughts on “Light The Way To Every Component

  1. it was my idea also, but i was too lazy, but an other idea is to take one sheet of withe paper, dump the content of one box and then take a photo of the content with your phone, do it with every little boxes, also link a coordinate to them, so next time you only need to look the pictures :)

  2. Trouble you still need to catalog AND kept up to date. everything. Once it’s cataloged almost any system will work.

    This does look much cooler than a box of ziplock bags …

  3. I like it but it seems overkill. A graphic on the web page would suffice. If you really wanted a pick to light system I would go with a laser pointer and two servos mounted to the ceiling. It could point to anything in the room then

    1. I love this idea for my living room – floor-to-ceiling bookshelves on three walls, thousands of books… Of course, I’d need to tell the system where each book was to start with… Unless I came up with a system whereby the books could tell the system where they were?

      This may be my next rabbit hole.

      Side note: a system like this would be _great_ for a scavenger hunt or puzzle room – each participant needs to solve a puzzle, upon which the laser illuminates their next clue.

      1. They used RFID tags in Makers (Doctorow). Scan the item, put it away, note where it was put.

        Bookshelves scream CV to me. Pan, scan, and determine location. Gimbal mount a laser pointer, and target the requested book.

      2. I bought a bar code scanner years ago at a 2nd hand store ($4?).
        It reads ISBN okay.
        I saw a $20 bar code (only) printer with lots of label spools at a different 2nd hand store this weekend.
        I think you should try something using barcodes for cataloging your books, and scan them into a spreadsheet or database. Label individual shelves for book locations.

    2. Go for one mounted in each corner, then you can triangulate them on flies and cook them midair, without having to use power that hurts a human… provided you’re wearing your laser geek filter goggles.

  4. Perhaps also add a stock ordering mode to colour code based on quantity.
    Maybe a microswitch on each draw to know when each has been opened. Like up a parts list and when the draw closes the next one illuminates.

    1. I thought it was amazing for 2 or 3 seconds, then saw the interface fumble and thought, wait, I’d have my part by now with any slight degree of organisation.

      Maybe if you could yell your part number and it popped the draw open quickly it would be an actual convenience/time saver. With a recent article complaining that there’s nothing to do with stacks of obsolete 3d printers you could fit the X-Y out of one on the back to select the drawer and push it out.

    2. Yeah, we have dozens of them (not a hundred, though, that’s kinda impressive) with a central inventory (~4k inventory items) and don’t seem to have problems finding things, just by labeling drawers with rows and columns and giving each case a designation with letters, e.g. CB23 would be the case CB, second row, third column. Not perfect, though, since the cases themselves are only roughly in order and spread out over a few areas, so people will be asking “Do you know where alpha india is? Where is alpha india?” etc. Some kind of photo system to ID the case would probably be useful.

      1. How does anyone not see that the Dewey decimal system is ideal for this, you can have the meta components, then the supernatural components then the hoax components, then the computer components, then the religious components.. and we’ve only got up to 003.0 or so ;-)

    3. That’s because you search using the component name.

      In my case, I can search using the component name, but most of the times I’m searching a part using keywords or tags. For example, I search for DAC or Vgs=5 for logic MOSFET, then the database returns the list with all the components that have those keywords and I just press the button and it points to the drawer. If that’s an overkill for you, then sure you can do it your way.

        1. Fair enough. I guess it’s a matter of preference. Before that I had this row+column system with a letter and a number, which I didn’t like it. As a matter of fact, I’ve added support for that in the web interface (you can see the last commit), because I still have chest of drawers with stuff and I have them ordered with the Letter+Number system. It works, sure. But having both, I enjoy more the LED indication and it’s also easier (at least for me).

  5. So if anyone else is a nurse, they’d also know this is how medications are stored and retrieved in the hospital units. The market leader is called Pyxis – and a lot of healthcare workers call any brand that, like Kleenex.

    Each drawer is locked with a solenoid, and has an indicator LED. You need to request a patient’s meds & verify your identity, then the drawer with the right med lights up and temporarily unlocks. Often, the drawer is sub-divided into compartments which also have locks and a blinking LED.

    1. Fastenal has a similar “vending machine” at the factory I work in. If a CNC operator needs a new bit, fastener, or tool, they login with their badge and request what they need. I think they also need to put in a project/customer/account number.
      The machine’s display indicates with drawer that has the part, and will only let the drawer open far enough to allow the next part to be removed.

    2. Is that the same brand that also has an “emergency unlock” button, that immediately releases all the drawers? I clearly remember a nurse mentioning a system that was “useless to work with” and that the fastest way to “get something out of that damn machine was to just push the emergency button”.

        1. Yeah, while arguably I guess getting a drug might be quicker with emergency unlock, provided I already know where the drug was.

          It also sounds like the quickest way to get fired.

          Truth be told, the system isn’t mean to help nurses find medications: it’s mean to improve accuracy of medical records, reduce errors, prevent tampering, abuse, and theft.

          Of note, the worst serial killer in documented history was a nurse; he was caught around 2003 because of the archived records of his withdrawals from a Pyxis machine. He had killed an estimated 400 patients until he was caught (this is when we’re allow to say: WTF!). (Strangely, the machine didn’t pick up any irregularity on its own. He tended to make mental notes of which drugs were stored next to what, and would pocket lethal drugs when he was presumably ordering benign or scheduled drugs in the same drawer. Detectives, who already had him under investigation, understandibly couldn’t make much sense of it on their own either. But as soon as one other nurse took one look at his machine logs she immediately knew something was way, way off).

          Thankfully, additional safeguards have since been added to machines such as these to reduce the likelihood someone could do what he did.

  6. So the boxes organized by project full of antistatic bags and china e-packets literally are stacked everywhere in my shop. I’ve also experimented with filing the antistatic bags in a file cabinet, which works pretty well

    1. I have an idea for you… either put 3 ring binder clips on your file hangers/folders so you can get 3 bags across held with a hole punched in top (many I’ve got come with one) or get cheap 3 ring binders and cut one side off and put them in clip up. You’d want the smaller diameter clips of course, not the huge ones. You might be able to double deck them, have a clip at half depth as well as at the top.

    1. What I came to say. Everything has to be Arduinos (substitute ESP if you’re hip) and LEDs, these days, with the user interface an “app” on your phone. No matter how you implement it, there still has to be a mechanism for entering the parts into a database, and tracking when parts are removed from the system. I would much rather get a drawer number than an array of lit-up LEDs.

    2. I think you miss the point. It’s harder to maintain a spreadsheet. Having an sqlite database allows you to search for any keyword in the fields. Try to find a MOSFET with a specific Vgs in a spreadsheet and do the same in a database. With the database and the web interface you just search for the keyword, not the part number and then you get a list with the results and you press a button that points you to the drawer.

      Of course you can use a spreadsheet and numbers, but hard to think how’s that simpler.

      1. What could be simpler than a spreadsheet? Each line Is numbered and == drawer number. Spreadsheets have built in search functions. Each line in the sheet can have part numbers, data, links to data sheets, links to sellers page for the device. Done, no need for SQL, controllers, wiring, completely extensible, with no coding or wiring.

  7. I love LEDs and think this is awesome. Could be used for hardware (screws, bolts, washers), or just about anything really. Nice job!👍

    I DO think it needs to have one more feature: a TETRIS screen saver! 😉😀😁. Just m…

  8. Lots of negative comments, but I happen to think its a well-implemented build. [Dimitris] had an idea, planned it out, and follwed through with building it to completion… That’s called a successful project in my book. Sure, there are simpler ways of finding parts, but sometimes you just have to build something because you can.

    1. Thanks Dave.

      I think that most of them they didn’t even bother to read and understand that is not just about a LED behind a drawer, but also there’s a database that you can search your components using every information in the table fields as a tag. So, the usual case for me it to look for a MOSFET, or a MOSFET with Vgs=5. I just write this I the search, get the results in a list, press the button, get the component. Can’t really get more simple than that.

      1. Dude. This is awesome. (Yep, I’d like to see someone do this in a spreadsheet. Go ahead. I’ll wait.)
        Yeah, I can do it in Excell too! Orrrr notepad. Orrrrr a piece of paper for that matter. Why not? Just use a piece of paper with little notes all over it. When you move a part, cross it out and rewrite it somewhere else. Even better- use pencil.
        Right, the POINT is, it’s autoooomaaaated. And like you said, you can search for keywords.
        It gives you a picture.
        And the DATASHEET!
        I applaud you!
        And you’re not too far from opening the drawers automatically with some electro-mechanical stuff but, let’s not get crazy!
        You could also barcoded/RFID the drawers so you could swap positions quickly.

        You could query several parts at once, (although too many matches and all the drawers would light up, but maybe light them in different colors).

        I love that the database part of this is connected to the *real* world.
        By extension, you *could* track stuff in multiple locations.
        I’m thinking of doing this with everything I own: “Computer! Where’s my 16′ tape measure?” . . . “Behind the refrigerator.” “Computer, how much soap do I have?” . . . “Soap?”

        Make them out of wood and sell them. You can do so much with this.
        I’m currently building a little chest of shallow drawers (2, 3 and 4 inches high) out of nice wood for my electronics stuff.
        As time/energy allows, I may implement some parts of your work.

        Great project!

    2. Agreed! As I’ve mentioned elsewhere in these comments, similar systems are used in healthcare for documenting medications and reducing their loss and theft. I could almost imagine this being used in Maker Spaces and Community workshops.

      A lot of comments mention their places of employment making do with simpler systems, despite greater SKUs and many people accessing it. That’s likely because the inventory is more static. In a community setting, when people may have excess components/materials to meet minimum orders or from parting stuff out, I could imagine the inventory turnover to be much more dynamic and a system such as this being useful.

  9. The database behind it is the important part, the LEDs are a nice gimmick, but impractical for growing parts collections. Unless collecting and organising your parts is your hobby.

  10. The data base is the big key here, but I have 1500 part drawers and it would take me months to enter all those parts with data that I can more easily search for on the internet. My drawers are already very well organized, if I want a MOSFET, I go to the transistor section, skip the BJT’s to the FET’s, look at the labels, find Vgs=5 and pick the part I want. In reality, when designing stuff, we all have our favourite “goto” parts. That’s what made the 2N2222 as common as salt. If you are repairing something, then you need to just go by part numbers and the chances are, even with 1500 drawers, you don’t have the part! LOL.

    This system is definitely very cool and lots of fun, but also lots of work and I’d really like to hear back from people that use it after 1 year, 5 years? But sometimes, electronics hobby is not about being practical, it’s about being fun and loving what you do!

    We choose to go to the moon, not because it’s easy, but because it’s fun!


  11. The next step for this project is to put a barcode on each drawer and attach a barcode reader to the DB when new stuff comes in, if it has a barcode you scan it and the data sheet gets pulled up to be used or annotated, and the appropriate drawer gets lit up green if there is one already, yellow for new drawer. Then you scan the drawer number and deposit(stuff without barcode can get entered manually but the drawer still gets scanned) When it’s time to withdraw the light locates the drawer and the part can be scanned to remove from the db and add to the reorder list(this works better if all items are barcoded, but dummy codes can be stuck on things that don’t come coded). obviously there is a field for entering multiple items or requesting another drawer if one is full. One non-obvious benefit is if the setup is big enough(and items are stored randomly rather than by type) few people will be able to find things from memory so the reorder feature becomes semi mandatory and you get to track who is using what if that sort of thing appeals to you, if not just flush the DB logs hourly.

  12. When you get enough components on hand, you will realize that these drawers are not the way to go… If you need to travel “into the field”, whether that be your yard, your vehicle, a customer site, whatever, you cannot grab the components you might need for on site modification… Snap top containers are the only way to go, plano makes great ones and still made in USA so the snaps don’t break off like the chinesium ones do… I have more than 500k components on hand and if I had them in drawers it would take up more walls than I have in my house… Instead it’s all categorized in snap top containers, labeled on shelves and can be grabbed any time for lab use or field visit… These drawer cabinets used to drive me crazy and life was so much better when I discovered plano!

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.