driving 128 LEDs for ARCduino

I'm looking to build a monome ARC clone (http://monome.org/)

and I don't quite know how I will drive the leds. it's 64 leds per knob and the should be able to fade.

any suggestions?

I’m working on something very similar. You need some sort of driver/shift register+transistors to drive that many LEDs, and may need to multiplex them.

I’m really interested in how they’ve segmented the LEDs up that well.

You talking about the knobs with the LEDs around them? Some of the setting look like an epileptics nightmare if prone to seizures caused by flashing lights.

Looks like about 64 LEDs around each knob - so the equivalent of an 8x8 matris but arranged differently. So two shift registers with PWM on the Output enable for the fading effect.

Just found this image looking into what an arc is and what it does

Looks deeeeeep!

Dont actually know if it helps at all, just thought it was cool

Yeah I was looking at that image last night, really wish I could manufacture parts like the black 'cogs' for my project.

Those are just light blockers, s lot of shift registers or led drivers and two pots/encoders, really simple in terms of electronics.

the "cogs" are only necessary if you're using smd leds. In my project I'm using an octagon of led bargraphs It should look similar to this mock up I made. (http://post.monome.org/?PostBackAction=Download&AttachmentID=4479)

unless anyone has seen an eight-segmented led bargraph then I will use ten-segmented one s and just not use the first and last leds on each unit.

would this do for what I need? http://www.sparkfun.com/products/10136

Well, something similar is necessary for my project, as I want to segment the light coming from 60 leds in a circle into individual 'rectangles'. Pretty sure it's possible with a load of black card, but I'm just waiting on all the LEDs to turn up :)

@ tomm Oh, that makes sense.


So would a 74HC595 work?

I'm using the 74HC595 as I have a load of them spare. I'm using 2 together to control the anodes of 12 individual LEDs and another two to control the common cathodes of 11 strips of these LEDs (using transistors). You just have to be careful that you're not sourcing/sinking too much current.

Well, a 74HC595 is really only good for 7-8mA, if that is bright enough. With high efficiency LEDs that might be plenty. If not, ashift register like the 74AC299PC (DIP) can do 24mA. Still available at newark.com for 56 cents each.

If you are arranging matrix style and multiplexing, you would drive Anodes High with the 595 and drive a common cathode low for the first row, then reset the anodes and drive the next common cathode row, etc, until you went thru all 8 rows. Do it fast enough and they could all look to be on, going thru all 8 rows at 24 times a second, or faster (like ~40ms). The trick is to get a common cathode driver that can sink the current from all 8 LEDs being on at once - that could be 8 arduino pins driving a ULN2803, or a 595 driving the ULN2803, or a shift register with high current drive capability like a tpic6b595. Architecture is your choice.

Im working on the exact same project (I post under bobsagat666 at monome.org) using 64 2mm leds drawing 20ma each. My setup is using the TLC5926http://focus.ti.com/lit/ds/symlink/tlc5926.pdf which is basically a constant current sinking 16bit IC with a resistor to set the led current. MY question is how to power four of these chained together. My board has a V+ ring connecting all the anodes of the leds with the cathodes going to the respective TLC5926 inputs. According to my calculations, my V+ would have to deliver 1280ma plus the current draw of the ICs. SO what would be the best route for pulling this kind of current off the 5v supply of the arduino or the USB itself (Usb limited to 500ma right?)? And one final question, I assume stringing these 4 IC s together simply requires send the SO to the SI of the next IC and connect the signal lines (CLK, OE, LE) together? Thanks for the help!

Sounds like you need another wallwart for LED current. I use this one for my 5V arduino based projects.


Thx for the reply. Yeah it seems my current setup would definitely require a wall wart. Is there any way to "pulse" the leds with software in such a fashion that all 64 could appear lit without exceeding USB supply current?

Yes, that's the basis of multiplexing. What you could do is use the OE pin - have a seperate signal going to each device, and quickly turn each one on for 1/4 o f the time. That would get you down to the 320mA range for LED current if one device had all 16 LEDs on.

This would give an effective average current draw of 5mA - so why not just dial down the current instead? "Users can adjust the output current from 5 mA to 120 mA through an external resistor, Rext, which gives flexibility in controlling the light intensity of LEDs."

unless anyone has seen an eight-segmented led bargraph then I will use ten-segmented ones

There are two three and four segment bar displays here:-