Which controller to take for 3x16bit PWM?

Hello all,

as many others I am also playing around with RGB LED stripes. My first version is running with a ATmega328P and 8bit PWM. As I also want to dimm the light and still have smooth colour changes 8 bit is not enough. Therefore I want to try with 16 bit.

As the 328P has only 2 16bit PWM channels I am looking for a solution to have three of them. Now I could take an external PWM controller or another AVR chip. What do you think is the best solution and which the best controller for this? The chips should be available in DIP case because it's a prototype on perfboard. Besides the three PWM channels there is only a IR detector (one digital input). So I don't need a lot of I/Os.

Any hints and your experience would be greatly appreciated.


The ATtiny861 was three 10 bit PWM outputs.

The ATmega1284 family has two 16 bit timers with two outputs each (four 16 bit PWM outputs).

How about this?

A Teensy3 is $19 is much smaller than a normal Arduino and has 10 16-bit hardware PWM pins.


Thanks for the replies!

I decided to try a ATmega1284, already ordered it. This will be the first 40 pin DIP package I'm using after my old Z80 days :wink: but can do so much more... The socket is already waiting for the chip :smiley: