Howdy,
For those interested, also check out the
www.rgbled.org site
It's a RGBLED controller project. There are currently two different boards -- a 13 RGBLED board and a 3 RGBLED board. The boards can each have their own unique IDs so they can all be daisy chained together allowing over 2,000 RGBLEDs to be controlled (or 6,000 regular LEDs).
In addition to setting each LED to one of 16.7 million possible colors, you can tell it to do "animations" -- that is color transitions of your choice. That could be a slow pulsing of a color, or a slow wash between two, three or more different colors (or fast wash or "absolute" steps instead of washes). Timing of the color effects can be set from 1/.100 of a second to 254 seconds in 1/100 increments (each LED can have it's own animations and time bases). You can pre-program the controller and store the settings in it so it'll light up with the colors/animations you choose at power up. You can also control it real time via serial or USB (via a USB to serial converter). You only need one serial port/USB adapter to control up to 254 boards.
This is an "open source" project -- all the source code for the firmware and PC board CAD files are available for download. Prototype houses will be able to create the boards for you (for the small RGBLED controller, you can wire it up with radio shack parts (except the PIC chip -- get that online almost anywhere). Once I'm finished with a few things, I will be making the boards available for folks who don't want to fabricate them (bare, with a pre-programmed PIC chip or fully built). That announcement will probably come in about 2-3 weeks.
The larger board even has automatic current limiting onboard, so you don't have to fuss with calculating LED resistor values -- it will auto-adjust to insure each LED is getting it's full current (for super high power LEDs, you can gang outputs together, allowing a board to drive from 10ma per color to 260ma per color). There is also a power driver board design to allow driving lots of LEDs or high power LEDs easily.
In terms of control software, it's very, very easy to control and refitting it into a front end would be pretty easy. For example, sending a command like #000200FF00FF would change LED #0 on board #0 to magenta (1st two bytes are the board ID #0 (could also be FF to address all boards), next two the command 02 - set color), next are the LED #0 (FF again being a broadcast for all LEDs) and the rest is the RGB code for magenta (FF00FF or R=255,G=0,B=255). Follow it with a CR (carriage return) and that's it.
I'm writing my own MAME front end right now that "knows" what buttons are needed for each game and lights only the
right ones (with their "original" colors) for each game. It's pretty specific to my use, but I'll eventually release it in case anyone wants it.
FYI
Gerry