Saturday, September 29, 2012

Well, after quite a bit of work, I have succeeded in designing, building, programming and installing a completely custom set of liquor shelves for my friends' apartment. I could not be happier with the results. The controller design I came up with works perfectly, and I was able to write code for it that is bug free and fits neatly within the small amount of program memory available in the attiny2313 microcontroller I used. The finished product looks like it would be more at home in a high end bar than an apartment!

Monday, September 24, 2012

I've got another project near completion now, RGB LED underlit color changeable liquor shelves! After visiting the Lazy Dog Cafe that's opened recently nearby and seeing the LED lit shelves at the bar there, my friends decided we needed to build some for their apartment. So, after a visit to Ikea, we returned with three of their "lack" floating wall shelves. I recommended some LED strip from an eBay seller, picked out an appropriate 12v power supply, and set to work designing a controller to select the light color.
I decided that one controller and input device per shelf would simplify the wiring scheme and allow the use of low power microcontrollers. Each shelf will be its own unit, and all we will have to do is chain power from one shelf to the next when they are installed.

I put a lot of thought into how the controller should allow a color to be selected, and after considering potentiometers, rotary encoders, and pushbuttons, I decided that the cleanest way would be to use Atmel's "qtouch" series of capacitive touch sensors to detect the presence of a finger over a copper pad etched on the backside of the control panel. This creates a completely flat, blank front panel for the controller, which shows the positions of the three touch buttons by an LED glowing through the PCB substrate.

I already had some Attiny2313 microcontrollers on hand, so I designed the controller around them. Two buttons on the front change the color of the light by going around the color wheel clockwise or counterclockwise, but this only allows fully saturated colors and not white, so a third button selects white, and if held turns off the lights. A cycling mode can also be entered where the controller cycles around the color wheel by itself, and the arrow buttons instead select the speed at which it does so.

The hollow construction of the shelves will make it easy to hide all wiring and electronics on the interior of the shelves.

Haven't updated in a while, but I spent quite a bit of the last part of my summer working on a project for my dad. Last Christmas, I built him a word clock following instructions from this instructable for him to keep in his office. He has gotten a lot of comments on it since its been in his office, but particularly from his boss, so my dad asked me to build another one to give to him. This time I decided to make a PCB instead of using perfboard, and made a few small improvements on the design.

Of course, now that my dad was helping build the enclosure for the clock it came out much better than the one I built myself. He has a 3D printer rapid prototyping machine in his office, so rather than building the LED holder out of cardboard and the front panel from transparency sheets, this time he drew up and printed the whole thing. The light dividers and LED holder are all one piece, and the front panel was printed in two layers so that the light can shine through the lower layer of white plastic. I'll post up the .stl files for those parts and the Cadsoft Eagle board files if anyone is interested.