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.
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, with 3.3V logic pull-ups, and still safely sink up to 5.5V outputs (this is good for when you want to control common-anode 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. The terminal block included with your product may be blue or black.
- Green power-good LED
- 3 pin connectors in groups of 4 so you can plug in 16 servos at once (Servo plugs are slightly 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
This product comes with a fully tested and assembled breakout as well as 4 pieces of 3x4 male straight header (for servo/LED plugs), a 2-pin terminal block (for power) and a piece of 6-pin 0.1" header (to plug into a breadboard). A little light soldering will be required to assemble and customize the board by attaching the desired headers but it is a 15 minute task that even a beginner can do. If you want to use right-angle 3x4 headers, we also carry a 4 pack in the shop.
Check out our tutorial with CircuitPython & Arduino libraries/examples, wiring diagrams, schematics, Fritzing and more!
Technical Details
Specifications:
- Dimensions (no headers or terminal block) 2.5" x 1" x 0.1" (62.5mm x 25.4mm x 3mm)
- Weight (no headers or terminal block): 5.5grams
- Weight (with 3x4 headers & terminal block): 9grams
- This board/chip uses I2C 7-bit address between 0x40-0x7F, selectable with jumpers
Datasheets, EagleCAD PCB files, Fritzing object and more in the tutorial!
Revision History:
- As of Feb 16, 2015 we now use a much beefier polarity-protection transistor. Functionality is otherwise the same
Learn


Shipping rates Australia wide and New Zealand
FAQ:
- How do I estimate shipping for my order?
- Add products in the shopping cart and head to the checkout page to estimate the shipping.
Dispatch time
Unless expressly agreed otherwise with you, we will not commence delivery of an order until we have received cleared payment of the purchase price in full.
All orders placed before 11 am AEST (Monday to Friday) will ordinarily be processed on the same day.
We will endeavour to ship the Products by the applicable time indicated on the website, but all times are indicative only. All shipping times are dispatch times only, and actual delivery dates will depend on the shipping method chosen, delivery address and delivery service provider.
Note- Please make a note during purchase if you require any item urgently. However we cannot guarantee that we will be able to comply with any request.
*Go to Australia post delivery time calculation to get various Australia post service in your area please use our shipping postcode Thomastown, 3074 as the "from" address - https://auspost.com.au/parcels-mail/delivery-times.html?ilink=tools-open-deliv-times.
We ship all products throughout mainland Australia, Tasmania and New Zealand - Including Darwin, Melbourne, Sydney, Tasmania, Adelaide, Brisbane, Perth, all metro and regional areas but do not deliver to areas in Australia where the Australia Post delivery network is not available.
Check Express shipping delivery coverage area at - http://auspost.com.au/parcels-mail/delivery-areas.html
Receipt of deliveries
Deliveries to post office boxes are not permitted where delivery is by courier. If delivery is by courier and nobody is available at the delivery address to accept delivery when delivery is attempted then the courier may either:
- leave the relevant parcel at the unattended address (the courier will do so if specified in your delivery requirements); or
- re-attempt delivery at a later time or date, in which case we may charge you an additional re-delivery fee.
Note that if a delivery is left unattended at the shipping address and is subsequently stolen then the theft is your responsibility, not ours.
Payment & Security
Your payment information is processed securely. We do not store credit card details nor have access to your credit card information.