I'll create a DB (yaml) which the arduino will read
I will store the info about which items goes where, manually on my computer. I can write a ruby or C program to do this.
I'll create a DB (yaml) which the arduino will read and show me where can I find the item I'm looking for.
This should be do-able, though you might have power issues if you try to turn on all 25 lights at the same time.The first step would be having an Arduino that reads from the USB two digits (skipping the space and newline characters) the pin number to light up or 0 to turn off the light, and then turn on that particular light.I would first write a variant of the program that just goes through each of the 25 lights turns it on for 1-2 seconds, and then turns it off. This can help isolate wiring issues where you might not have a light properly connected, or it has burnt out. Presumably you want to start with just a few lights, and then add lights until you get to 25.Note, most Arduinos don't have 25 separate pins to turn on lights, and there are various ways to multiplex a greater number of lights over a smaller number of pins. However, there is a variant (Mega 2560) that has 54 digital pins and 16 analog pins, and it would be simpler to use that so you don't have to dive into multiplexing immediately.You would need 25 lights (leds or light emitting diodes) and 25 resistors (usually 220k). You can get lights that have the resistors already attached with longer cords for more money, so it depends on your budget and skill level (you might be a newbie now, but do anticipate you can learn to do it).Since you anticipate having 5x5 drawers, I would think about using an ethernet (cat 5or 6) cable for each set of 5 led controls plus ground. That way you just have to plug one cable in per drawer assembly. You can get ethernet jacks that allow you to connect up to 8 separate wires to the jack, and then you can connect the cat 5/6 cable to the jack. Maybe have an additional light on the front of each drawer.After you have the light setup, you can think about using servos to push the drawers in/out, but wait until you've gotten the first step done, rather than jumping in trying make the device in its finished form immediately.
QuoteI'll create a DB (yaml) which the arduino will readReally? How will you do this? Making the Arduino talk to a PC that is running an application that is listening/talking to the serial port, that that knows how to talk to the DB is possible. Writing DB software for the Arduino is much more challenging, given the small amount of SRAM available.
[..] Add an lcd panel and some buttons to scroll and select and the unit could be stand alone.