Audio controlled party lights

[Thibault Brevet] wanted his own party lighting that pulsed and faded along with the tunes. He ended up building a system based on an Arduino and a PC running Processing. The output from a mixing board is fed into a PC and measured by the Processing script. From there, the calculated light levels are sent to the Arduino to address the LEDs via the control board seen above. [Thibault] built four LED modules that each have two 4-channel LEDs (red, green, blue, white) separated by a few feet. This means 32 PWM signals are necessary to drive the system. To get there, he utilized a pair of TLC5940 16-channel PWM chips, which function like cascading shift registers but have some fantastic current limiting and dot correction features. Take a look at the demo after the break to see what he’s accomplished.

The TLC5940 is a popular choice for driving RGB LEDs, and would be a nice part to use if you decide to make yourself a Ping Pong LED Wall.

Comments

  1. Bill Porter says:

    Very cool, and good work. But i’d like to see the need for the computer removed in a future version.

    You’ve offloaded the PWM to dedicated chips, and the audio processing to a computer, what’s left for the Arduino to do? Just translating?

  2. CalcProgrammer1 says:

    I did something similar with my RGB Fan Controller, used a Processing script to flash the LED’s to music. Using a 20MHz ATMega168 and interrupts I was also able to get 24 channels of 256-level software PWM out of 3 basic shift registers chained together to drive 8 RGB LED’s. I may have to look at this Processing script because the LED fading looks much nicer than what I was getting.

  3. RadBrad says:

    Nice hack… love the perf board!

  4. Anonymous says:

    Schematic? Possible brief explanation of the 4 ULN2004’s?

    @ CalcProgrammer1, I would also be interested in seeing a schematic for your project as well.

  5. afex says:

    c’mon, i can’t be the only one that cringed upon seeing those IC’s on non ESD-safe packing peanuts :)

  6. thibault says:

    hello!

    well i had some issues with the signal level coming out from the mixer so i had to use my external soundcard and first adjust the input level in Ableton Live, which was then sent to Soundflower (Minim on Macs doesnt let you use the line input of the computer, only the mic so i had to trick it with Soundflower)

    My point for the future would be a standalone system with only an audio jack input and the animations entirely done micro-controller side. But for now it’s super easy that way to write new animations in the processing script on the computer (strobos effect, lock only one pure color.. whatever, triggered through a key pressed on the keyboard)

  7. fluidic says:

    @Bill

    The TLC5940s use I2C, the computer uses a RS-232 serial port. It looks like the Arduino is just listening for commands on one then repeating them on the other.

  8. Bill Porter says:

    @fluidic

    Yeah, I figured, I was being somewhat rhetorical in the first post; trying to get the point across that the Arduino is hardly being used.

  9. phishinphree says:

    the tlc5940s use a serial interface but its not i2c. and they need a few other lines to control the pwm clocking and resetting. kudos for getting that figured out. why not a max7313 instead?

  10. Brad says:

    currently building a project with the TLC5940 and it is definately not a simple translation, bits have to be clocked in backwards. here’s all the steps for one cycle: http://focus.ti.com/lit/sw/slvc106/slvc106.pdf

  11. Marc says:

    I’m impressed by the amount of light generated by 8 LEDs. Awsome

  12. glonq says:

    International Dance Party approves

  13. Erik Johnson says:

    @Bill Porter Re: arduino
    Duh, blog cred.

  14. Bill Porter says:

    @Eric

    Lol, my bad.

  15. Elliott Danks says:

    yeah mate im doing my major project for year 12 anychance i get get the schematic on this it would be an awesome project!

    cheers mate

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Follow

Get every new post delivered to your Inbox.

Join 92,194 other followers