Driving a 4X12 array of RGB LEDS


I am looking to drive a 4x12 array of RGB leds. I using a DUE but was hoping to only have to use 4-6 PWM Digital I/O pins.

I need chip recommendations for multiplying my PWMs to control all 48 LEDs for each of the 3 colors, so a way to get 144 PWM signals from 4-6 pins.

If this won't work does anyone have any good recommendations for simply driving the 144 outputs with out using a PWM?

Specific language would be helpful too so I can search google for different implementations.


Hi, welcome to the forum,

I don't know how you would like to control the leds, If they all need to display the same colour, you could build a circuit requiring just 3 pwm-pins.

If not and you're also using normal RGB-leds, you'll need more PWM-pins as available on your due.
You could use an tlc5940 (or similar) IC in such case.
The TLC5940 uses a few pins for example, it gives you 16 PWM-pins in return and the nice part is that you can daisy-chain them. Whether you just want to control 1 chip or many, the number of arduino-pins needed stays the same.

Besides normal leds, you can also use 'intelligent' Leds. The WS2812(b) for example needs 1 pin of your arduino to be connected to its input, but has an output as well, which you can use to control/daisy-chain the next led.

There is a limit to the number of leds/chips you can daisy-chain btw, the more you add, the longer it takes to update all leds. It should be possible to control a few hundred rgb-leds smoothly though.

Some other chips you could use are the WS2801, ws2803, ws2811 and LPD8806, but there probably are more available.

Since you need more as a few leds, googling "addressable led-strips" may be interesting as well.