16 Channel 12-bit PWM / Servo / RGB LED Driver I2C interface

Suits Raspberry Pi & Arduino

Sold Out

Calculate Shipping

Auspost Express Post - $9.95 (ETA: 2 days)
Average Delivery Time 1-2 days.Tracking & Signature
Auspost eParcel Shipping - $6.95 (ETA: 5 days)
5-7 Business Days, Parcel is sent by road. Tracking & Signature

3-5V 16-Channel 12-bit PWM/Servo Driver I2C Interface Module for Arduino or Raspberry Pi.
These will work on pretty much any microcontroller with an I2C interface. PCA9685
I have code available for Arduino using a library  and Raspberry Pi 2 using Python.
This can drive servo's, LEDs, anything that needs or requires a PWM. It's very very flexible.
Great for anyone tinkering with robotics or anything that needs precise control.
You want to make a cool robot, maybe a hexapod walker, or maybe just a piece of art with a lot of moving parts. Or maybe you want to drive a lot of LEDs with precise PWM output. 
Then you realize that your microcontroller has a limited number of PWM outputs! What now? You could give up OR you could just get this handy PWM and Servo driver breakout.
  • 12C input and control 16-Channel PWM output
  • Independent power supply of steering engine, with V+ input, the maximum is 6V
  • Individual output of logic signal and logic power: 3-5V
  • Frequency: 40-1000Hz
  • Number of channels: 16-Channel
  • Resolution ratio: 12 bit
  • Size: Approx. 62.23 x 25.4mm / 2.45 x 1 inch
  • Location hole: Approx. 55.88 x 19.05mm / 2.2 x 0.75 inch, Pitch-row: Approx. 3mm

You will need to solder the pins and terminal connector to the board yourself


When we saw this chip, we quickly realized what an excellent add-on this would be. Using only two pins, control 16 free-running PWM outputs! You can even chain up 62 breakouts to control up to 992 PWM outputs (which we would really like to see since it would be glorious)

  • It's an i2c-controlled PWM driver with a built in clock. That means that, unlike the TLC5940 family, you do not need to continuously send it signal tying up your microcontroller, its completely free running!
  • It is 5V compliant, which means you can control it from a 3.3V microcontroller and still safely drive up to 6V outputs (this is good for when you want to control white or blue LEDs with 3.4+ forward voltages)
  • 6 address select pins so you can wire up to 62 of these on a single i2c bus, a total of 992 outputs - that's a lot of servos or LEDs
  • Adjustable frequency PWM up to about 1.6 KHz
  • 12-bit resolution for each output - for servos, that means about 4us resolution at 60Hz update rate
  • Configurable push-pull or open-drain output
  • Output enable pin to quickly disable all the outputs
  • We wrapped up this lovely chip into a breakout board with a couple nice extras
  • Terminal block for power input (or you can use the 0.1" breakouts on the side)
  • Reverse polarity protection on the terminal block input
  • Green power-good LED
  • 3 pin connectors in groups of 4 so you can plug in 16 servos at once (Servo plugs areslightly wider than 0.1" so you can only stack 4 next to each other on 0.1" header
  • "Chain-able" design
  • A spot to place a big capacitor on the V+ line (in case you need it)
  • 220 ohm series resistors on all the output lines to protect them, and to make driving LEDs trivial
  • Solder jumpers for the 6 address select pins


Technical Details:
16 PWM drivers, each output can be programmed to:
Turn off / Open
Programmable LED brightness
Programmable fuzzy group (dim) / Flashing LED brightness independent mixed with
 1MHz Fast-mode Plus is compatible with high drive capability has 30mA on SDA I2C bus interface to drive highly capacitive bus
 Each LED output can be achieved from the fully closed (the default) to 4096 (12) between the maximum brightness linear programmable brightness
 Software programmable open-drain LED output selection (the default is a push-pull) of 16 push-pull outputs (at 5V 25mA sink can absorb and provide 10mA current draw), no input function
 Programmable output state is in response to an order to change or stop to achieve simultaneously update all outputs or by-byte (byte-by-byte) update output (default is "Stop command to change")
 Effective low output enable input pin when the pin is high, the LED output can be programmed to 0,1 or tri-state (high impedance power-on default)
 6 hardware address pins so that the same can be connected to 62 PCA9685 I2C devices on the bus
 LED output frequency (all LED) is typically 40Hz to 1000Hz (When the oscillator is 25MHz, the prescaler register default value 1EH 200Hz refresh rate will generate a)
 4 software programmable I2C bus address (an LED group call (Call) address and three sub-LED call (Call) address) such that the device can be set in any combination to be addressed at the same time (e.g., a register used for " All calls (All Call) "then all PCA9634 devices on the I2C bus can be addressed at the same time, while the second register for three different addresses, then a device group 1/3 bus devices can be addressed at the same time), you can enable and disable the software I2C bus address
 Software reset feature (SWRST Call) allows the device via I2C bus reset
 25MHz internal oscillator requires no external components
 The maximum allowable 50MHz external clock input
 Internal power-on reset
 In the SDA / SCL inputs with noise filter
 Output pin has edge generation rate control
 No glitches on power-up (glitch) output
 Low standby current
 Operating voltage range: 2.3V to 5.5V
 5.5V tolerant inputs
 Can operate at minus 40 degrees Celsius to 85 degrees Celsius environment
 ESD protection exceeds 2000V HBM / JESD22-A114,200V MM / JESD22-A115 and 1000V CDM / JESD22-C101
 JEDEC standard JESD78 lockout exceed 100mA test
 Package: TSSOP28 and HVQFN28

Package Includes:


  • 1 x Servo / PWM Module
  • 6 x Lots of Headers to suit the board
  • 1 x Green Terminal Connector


Brand Logicware

Be The First To Review This Product!

Help other Logicware Pty Ltd users shop smarter by writing reviews for products you have purchased.

Write a product review

More From This Category