book collections email follower instructable user
Picture of FindyBot3000 - a Voice Controlled Organizer

As any maker can attest, over the years, one collects a lot of parts. Perhaps it all started with a few resistors and LEDs, a breadboard, and an Arduino. But soon there were motors and motor drivers, IR rangefinders and tactile switches. Accelerometers, microphones, heatshrink tubes, potentiometers, relays, hookup wire, all those things salvaged from that printer you took apart... and the list goes on.

Now, organizing such a collection of goodies is no easy task. Some may have turned to baggies, for others, boxes. And then there were those who filled shelves with boxes, filled with baggies, filled with parts. All intricately labelled, yet still so cumbersome to manage.

This Instructable takes a stab at solving the age-old problem of organizing a bunch of things. So without further ado, FindyBot3000.

Step 1: The Problem

Picture of The Problem

'nuff said.

This was an excellent project! I plan to make one as well, but I have many more parts than a set of single drawers can hold. If I built my shelves 5 deep, I can use flashing leds in the groups of 4 to identify which bin in that row contains the parts. No flash could be the front drawer and each flashing led would indicate drawer 2,3,4 and 5!

Thank you for the inspiration! Waiting for parts to arrive to get this started. I will post progress, and may have some programming questions to handle the 3D array...
Inventor22 (author)  zpaeric21 hours ago
Thanks. That sounds great, a 3D setup would definitely be more compact. A bunch of different ideas could be used to represent the Z-axis, I like the flashing LEDs idea you mentioned. For sure, feel free to PM me or post any questions here.
great job bro
unbelivable! It is FANTASTIC! thank you so much for sharing, it is so cool! Have a great day :)
KitP67 days ago
The linked solid state relay is not one that can work on 5v DC switching input (They may have changed the product listing). :(
Inventor22 (author)  KitP66 days ago
Thanks, I've updated the Instructable with a new link and price.
KonradO612 days ago
Will it work with other languages supported by Google Assistant?
I’m from Brazil and I tried to test ifttt with google assistant in português and it wouldn’t work because ifttt was set to English. After changing my google assistant to English it worked , so I guess that if ifttt supports your language than you can use it
Thank you. So currently it's English only.
Or maybe there's an alternative to IFTTT.
Inventor22 (author)  KonradO69 days ago
Looks like IFTTT only supports English so far, as KonradO6 mentioned:
When using the ifttt app on my iphone and creating a google assistant applet there is a picker where eu can chooose one of 6 languages.
Can I use the google assistant app on an iPhone?
If I use a nodeMCU instead of photon do I need to change any code?
Inventor22 (author)  PortalGamesMais.14 days ago
Yeah, Google Assistant is available on iPhone:

You will need to change some code around if you use nodeMCU, primarily in two main ways:
1. Use the Arduino-version of the neomatrix.h, Adafruit_GFX.h, neopixel.h, ArduinoJson.h libraries that I make use of in FindyBot3000.ino. These should auto resolve as you load the code into the Arduino IDE.
2. You can't use the Webhooks as implemented in the code, as they are configured through the Particle website (See Step 23: Software - Link Particle Photon to Azure Function). There will be a way to work around this though, but I couldn't tell you how off the top of my head, as I've never used nodeMCU. You might need to write custom HTTP requests. I did find this Instructable which looks promising: and this: Those should help get you started.
Also can I use 5050 LED’s?
Inventor22 (author)  PortalGamesMais.13 days ago
If you plan on using the Akro-Mils cabinets that I linked in the Instructable, I recommend against using LED strips which have 5050 LEDs. The horizontal spacers between rows is only 3-4mm wide, so if you were using a 5mm wide or greater LED strip with 5050 LEDs, you run the risk of snagging the strip when you pull a box open. The 4mm-wide LED strips I linked to don't have this problem.
I live in Brazil $1 US dollar is R$4 Brazilian reais so it’s quite expensive for me. Do you know if I can find them cheaper anywhere? I actually found cheaper, ones here in Brazil but they are 12 v if I buy them and a 12 v power supply can I use sparkfuns Logic level converter with 12 v hv and 3v lv?
Inventor22 (author)  PortalGamesMais.12 days ago
Aliexpress is the cheapest place I know of for LED strips. If you really want to save money, you can do away with the LED strips altogether, and wire up individual LEDs instead. I did this with a previous version of this project that I built with a few friends. You can see it in operation here:

Can you link the model number of the LED strip you're thinking of using - i'll check to see if it's compatible with the libraries I use, and we can go from there.
Thanks a lot for the help, I’ll post link at end but it’s in portuguese so I’ll translate the specs first:
-3528 rgb led strip
-200 Lumens approximately 180w
-60 LED’s/meter
- can cut each 9 LED’s (5cm)
-9.6 W/M

It actually comes with a controller but i obviously won’t use it. it costs 40 reais for 5 m which would be like 10 US dollars.


I’ve decided to build my own organizer out of wood and acrylic drawers because I couldn’t find any good ones here in Brazil and the space between rows will actually be 1.5 cm so technically I could use 5v 5050 LED’s. How can I check my self if they will work with your libraries?
Inventor22 (author)  PortalGamesMais.9 days ago
I can't tell from the listing whether the LEDs are individually addressable or not. However, given that the product page doesn't show any images of different colored LEDs on the same strip, i'm going to assume that the LED are not individually addressable. There was no sign of a datasheet either, so I really can't recommend this product for this project.

If the Aliexpress prices are outside your budget, there is a cheaper alternative -- using regular LEDs and an LED driver chip (MAX7219). Although the Max7219 chips aren't the cheapest either:
This route does get fairly technical fair quickly though, in terms of wiring and programming.
audrius-a9 days ago
Really awesome and well made project. I was dreaming to make something simar and this might be just enough to inspire me to finally do it.

What do you think of Akro-Mils drawers quality? They look reasonably priced, but are they well built?
Inventor22 (author)  audrius-a9 days ago
Thanks audrius. The drawers on the Akro-Mils cabinet are well made, from a semi-rigid plastic. Durable enough to store any bolts and screws. No loose bits of plastic from the injection molding process, and the design of the drawer makes it easy to pull out/push in without snagging on the frame. The black plastic frame to hold all the drawers is made from a more rigid, but more brittle plastic. The screw mounts on the back leave something to be desired though; I wouldn't trust a wall mounted cabinet if it was filled with screws, batteries, and other heavier items. That's not an issue in this project though, as the cabinets are sandwiched in the wooden frame.
AlexJ7418 days ago
You Sir, are my hero. Totally blow away by this creation.
Inventor22 (author)  AlexJ7414 days ago
Thanks AlexJ74!
Fascinating. As a Java programmer/system designer, I can really relate to this. It would have been awesome even if it didn't work. But it does.
However, what if the user puts the LED in the wrong drawer?
Next up. Micro servos for the drawers.
When entering a new item into the system, you need a webcam and an image recognition system that will open the correct drawer, thereby ensuring total system integrity at all times.

Thanks Turnimator Cyberdelix! Great ideas too. At this point it's still up to the user to put the items in the correct box. In future iterations I want to add image recognition with a robotic arm to add a self-organizing feature. I alluded to this feature with one of the photos in the Instructable - the green/silver robot arm off to the left. That's still a ways away though, but stay tuned!
IMO, a robot arm would break the elegance, the physical beauty of your system.
Consider a DoF cartesian, like a plotter/engraver turned on its side, attached to the front of the drawer. One rail for X, one for Y, with a little claw to open and close the drawers.
No huge IK equations to solve, no rotations, only displacement.
And it will look even more awesome. The LED strips will become pure visual feedback, which gives you a lot more freedom to come up with flashy displays.
I wish I had the skills to do this myself.
I agree, a large robot arm would break the symmetry of the design. I'll experiment with a Cartesian system as you mention, but that does impose some limitations on self-sorting by constraining the mechanics to essentially a plane.
A 3DoF spherical wrist with a gripper as end effector mounted on the 2DoF frame would let you open and close drawers at random, manipulate any object inside.
You could watch the most mesmerizing implementation of the Quicksort algorithm ever.
You'll probably sit there for hours.
You could even have a 'comparator' function, where the robot holds up two pieces, asking which is 'greater than' the other.
Having built it, you should consider it for mass production.
Think of people with CD or LP libraries, +++
A Pixy2 Camera - Image Recognition for Arduino & Raspberry Pi would do the job nicely

Inventor22 (author)  ChrisCullen18 days ago
Thanks for the recommendation, I haven't heard about the Pixy2. I'll look into it.
ChrisCullen20 days ago
Whoa finally a Totally Awesome Project that I can relate to and make use of some of the parts and components that are taking over my house due to lack of insprtaion.

But because I'm lazy and still have nightmares about my past MS, Azure experiences
I'm gonna Go the stand alone Raspberry Pi + voice kit Approach and cut out all the middle men and perhaps with some Jiggery Pokery Use Snowboy's Hotword Detection Engine instead of google assistant or even both and have just 3 servos to kick open the draws

Thanks for this brilliant project that has got me hooked again.
I'm trying to recreate a simpler version as well. I was thinking about using Amazon echo dot and Google Firebase (I already have this), but just using a raspberry pi sounds even better! Could you post a remix of this project if you do make it? I'm sure there are a lot of people here looking for cheaper/simpler versions.
Hmm I'm yet to post a Instructable its sounds a lot of work did i not mention that I'm lazy?
But I will Give it a go I have made a few voice controlled devices so far just using The Google AIY Voice Kit + PI with good results
the only Issue is for me is the latency up to 10 secs or more on a bad day is a little long for me and updates to the google assistant api tend to break things so I'm gonna play with the Snowboy Solution (no internet required) to see If i can get the same results with out any delays.
Good points! I'm super lazy too, trying to fix it rn. I have mixed feelings about the Google AI kits. They're really good, too good. I mean I really wish it was some startup or company that did this instead (well some startup probably has, but more like I wish google hadn't). All that stuff like Distribution of power, Google's-already-set-to-be-scary-good-at-AI, etc.
Inventor22 (author)  mr.knex1318 days ago
Yeah I was thinking of making a smaller, cheaper, version as well without all the bells and whistles with using cloud services and virtual assistants and so on. I just went full out on this project to show what can be done. I still have a couple bags of parts that I couldn't fit into the organizer as is, so I already have an excuse for building another organizer :D

I do have an older version of this project I built with a few friends while I was in university. I don't recall if I still have the code for it, but that version was certainly cheaper -- but a lot more work too. It involved manually soldering hundreds of LEDs, and wiring them up to a few MAX7219 LED drivers. It was entirely controlled with an Arduino and a little bluetooth dongle, which I linked to a custom windows phone app I wrote at the time. You can find an old video of it here:
That version only supported rudimentary finding, no searching via tags, no flashy RGB LEDs, no text scrolling, parts had to be inserted manually, and the database was local to the phone app so others couldn't easily use it. And you had to open the phone app and pair with bluetooth every time you wanted to use it, which was a pain.
zkus Inventor2218 days ago
The nice thing about the "overkill" led strip approach that you have is that it acts like a crude display. If/when i do this i was thinking of using that to display which of ~3 giant storage bins i put some large components (just having it display "top bin" as a string, or something like that)
Inventor22 (author)  ChrisCullen19 days ago
Thanks Chris!
Let me know how the RPi + voice kit approach goes for you.
Np Thanks Again for the Inspiration :)
Will do I might have a go at posting a remix if it all goes well.
dart70ca19 days ago
Come a ways since 2012.

Looking for something more robust and without the voice control. Keyboard would be better for my situation. Doable?
Inventor22 (author)  dart70ca17 days ago
Ah yeah, I came across this project several years ago actually. Industrial versions of part-finding systems like this exist all over the place, but not too many hobby level ones. In warehouses, they actually hove robots shuttling around entire shelves of items, and other algorithms which plan the shortest-path trajectory between parts bins for a human to pick up for packaging.

The Cartesian bin push-out feature mentioned in some of the comments on this project is actually implemented in the project you linked -- pretty cool.

As for entering commands via text, that's already supported by default :). You can open up google assistant from any android device (that you've logged into) and type in the same command you would otherwise speak. Take a look at the photo I've attached. It's verbatim the command I used in the demo video.

1-40 of 117Next »