The "Light Bar" is an arduino controlled installation consisiting of a 2.5M long strip of 128 purple LED's that visualizes randomly generated numbers in various ways.
When I moved to New Zealand in February 2008, I had to leave all of my electronic stuff behind. I didn't even have a soldering iron. To get comfortable with my new surroundings, one of the first things I wanted to do was start on a new DIY electronics project. I had been looking at the arduino for a while as nice way of getting started with microcontrollers, but I didn't know what I could use it for. While sleeping on the couch one night, I was staring at an I-Beam that was half-sticking out of the apartment wall, leaving a nice crevice to stick something in. I thought it would be cool to have a line of LED's from floor to ceiling in this crevice behind the I-beam, lighting up the wall next to it.
I measured from floor to ceiling and realized that 128 LED's would fit perfectly, spaced 2 CM apart. I knew I wanted to be able to address each LED individually (have control over each LED) but didn't know how it could be done. That's when I found out about the MAX7219 and MAX7221 chips, which are able to control 64 LED's each and can be cascaded. Perfect.
I ordered an arduino to play with and a barebones arduino to be permanently part of this project, as well as a bunch of other random parts to mess with. I picked up purple LED's for about 20 cents each, which wasn't bad at all. I wanted the unit to be portable so I could ship it back to Canada when I move, so I made the whole thing in 8 segments that were able to fold up. I found a plastics supplier in Lower Hutt that custom cut the 8 strips of smoked plexiglass. I snuck off at lunch from my job at the Department of Labour to hop an electroic train to go pick up the plastic, which only cost around $20. I drilled all the holes for the LED's at 128 Abel Smith when I was there volunteering at the bike shop on Sundays.
After doing a breadboard test of the MAX7221 and arduino, I started building the actual unit. I wanted the "Light Bar" to display different patterns, so I included a button to advance to the next mode. Over the course of several weeks I programmed various modes that the display runs in, mostly including randomness as part of the display.
When the unit first powers up, it goes into a random mode. Some of the modes scroll random patterns downards at various speeds. A few of the other modes turn random LED's on and off at random intervals, some modes do this very slowly where the change isn't even noticeable. A few of the modes also control the brightness of the LED's (which is only controllable in 16 different steps, and only affecting the whole display at once). The first mode I programmed had all 128 LED's slowly "breathing" by slowly cycling through brightness levels. My favourite display modes are ones that emulate gravity, by having an LED "fall" from the ceiling to the floor like a rain drop, waiting a random length of time until the next one. There is also a mode that "shoots" an LED up from the bottom at a random velocity and arcs back down to the ground.
The arduino is very cool, and I do intend on using it for upcoming projects. The "Light Bar" turned out awesome and looks very cool at night. It was also a good excuse to buy a soldering iron and some other much-needed goodies.