controlling multiple 8x8 RGB LED matrix

I'd like to control about 10 8x8 RGB LED matrices and I'd like to figure out a easy way to do it. I saw several posts using shift registers to control a single RGB matrix (using a 74HC595), and I could probably expand that to work for more matrices.

Is there a better way to do this?

berkeleythings:
I'd like to control about 10 8x8 RGB LED matrices and I'd like to figure out a easy way to do it. I saw several posts using shift registers to control a single RGB matrix (using a 74HC595), and I could probably expand that to work for more matrices.

Is there a better way to do this?

Use some MAX7219s ... max7219 for sale | eBay

For 10 RGB matrices, wouldn't I need 15 of the MAX chips to control the LEDs + colors? I suppose I just cascade them?

MAX7219 doesn't really work for RGB LED matrix. I think you would need 3/matrix, with extra components to isolate them from each other so they don't interfere with each other as you multiplex the cathode sinks from the devices.
I'll draw something up to show what I mean.

I forgot to ask...do you want full color? (PWM on the leds). If so, forget the MAX2719...

fungus:
I forgot to ask...do you want full color? (PWM on the leds). If so, forget the MAX2719...

Full color would be ideal, but if having only the 3 color combinations is substantially easier to assemble, then that would be alright.

berkeleythings:

fungus:
I forgot to ask...do you want full color? (PWM on the leds). If so, forget the MAX2719...

Full color would be ideal, but if having only the 3 color combinations is substantially easier to assemble, then that would be alright.

I was just thinking some more about this...it's not an easy thing to do.

I think the only real way to do it is to multiplex it in software.

Assuming the matrices are in a horizontal row, you'll need to connect all the anodes together then use 8 PNP transistors to switch power to them (probably MOSFETs).

Along the bottom you'll need 3x8x10=240 current sinks for all the columns. 15 TLC5940s chained together would do it, plus you'd get full color. You could use non-PWM chips but in the long run it's not going to be any simpler to build.

Bear in mind that 240 LEDs at 20mA adds up to about 5A of current. Switching that much power at high speed is difficult. You might need to feed power in on both sides of the array to make it work (ie. 16 PNP mosfets, 8 on the left and 8 on the right). Put lots of big decoupling capacitors on all the power lines (a mixture of ceramics and electrolytics) and don't forget the usual decoupling on all the chips, etc. Bad power design will cause random glitches.

What you can do is use 3 MAC7219 per matrix, as long as the matrix are common cathode RGBs, and take advantage of their Shutdown mode:

"When the MAX7219 is in shutdown mode, the scan oscillatoris halted, all segment current sources are pulled to
ground, and all digit drivers are pulled to V+, thereby blanking the display."

You will need to add 8 schottky diodes (~0.3V drop) per MAX7219 on the DIGIT pins, which control the common cathode.
On each Digit pin, connect the diode anode to the common cathode of the matrix, and the diode cathode to the MAX7219, so the active MAX7219 can pull the common cathode low to enable the column being driven (MAX7219 muxes the matrix at 800 Hz, so you can't really do more than turn each one off or on).

Multiplex each color in software by having 2 MAX7219's in shutdown while the 3rd is active so that only 1 color at a time is being driven.
If each color is left on for 5mS at a time, that would yield a 15mS refresh time or 67 Hz. Could try 10mS per color, 33 Hz, see how that looks.
Be sure to use SPI.transfer( ) to send the data and shutdown commands out so the changes are made quickly.

MAX7219 available for $1.25 each from taydaelectronics.com
This diode
1N5817 Diode Schottky 1A 20V
wouldn't be too bad, 0.45V Vf.
One of the others might be better, they don't all have Vf listed, you can look them up at digikey.com or similar.

CrossRoads:
What you can do is use 3 MAC7219 per matrix, as long as the matrix are common cathode RGBs, and take advantage of their Shutdown mode:

I'm not sure you can because the anodes (or cathodes) are connected together in adjacent columns. If you connect more than 1 MAX7219 to the array they'll clash with each other.

I disagree - the use of Shutdown mode and diodes to isolate the cathode drivers will allow one MAX7219 at a time to control the cathodes.

[EDIT]March 2014 - just had a discussion with someone trying to use this schematic - turns out I have the diodes on the individual segment outputs, when I intended them to be on the shared common cathode digit outputs.[/EDIT]

sorry for the long delay and thanks a lot for the suggestions. I think I will try small versions of what both of you suggested and see if they work out as well as how hard they are for me to build. I'm much better at the software side than I am at hardware, so this is a little bit of an adventure for me.

I picked up the parts for the MAX7219 design (including diodes to isolate each led), as well as the parts that fungus described for a build based on the TLC5940, but I'm not the best at circuit/power design so I might be back with some basic suggestions once I get parts (on the way from China right now...).

Initially I'm only going to do 2-3 of the matrices. I'll post everything online (including circuit diagrams and what not) when it works!

CR,

Can a MAX7219 be made to dim/fade?

If so, please give this guy
http://arduino.cc/forum/index.php/topic,150219.0.html
some assistance.

Done.