Adafruit 16-Channel 12-bit PWM/Servo Driver - I2C interface - PCA9685
Adafruit 16-Channel 12-bit PWM/Servo Driver - I2C interface - PCA9685 is backordered and will ship as soon as it is back in stock.
Delivery and Shipping
Delivery and Shipping
Delivery Options
We offer several delivery choices to fit your needs:
- FREE Delivery: $0. Enjoy Free AusPost Parcel Standard Delivery on orders over $100 in value. Exclusions may apply.
- AusPost Untracked Letter: $3. Delivery in 3-8 business days (untracked). No refunds or replacements without proof of receiving the order.
- AusPost Parcel Standard: $9. Tracked delivery in 2-6 business days.
- AusPost Parcel Express: $13. Express tracked delivery in 1-3 business days.
- Pickup: $0. Email us to arrange a pickup from our location in Huntingdale 3166 in Melbourne at support@zaitronics.com.au. More details can be found in our contact page.
Additional Information
- Non-metro addresses in WA, NT, SA & TAS may require extra time.
- Certain batteries (like LiPo) cannot be shipped by air, affecting Express Post availability.
- We recommend selecting tracked options for valuable items. Untracked orders will not receive tracking numbers or refunds without proof of delivery.
- Note: Wherever possible, we will combine orders to save on shipping and reduce packaging waste.
- Note: Orders containing backordered item will delay delivery until all items are available
Warranty & Refund Policy
Warranty & Refund Policy
Warranty & Refund Policy
- Standard Warranty: 12 months for all products. Low-cost hobby parts have a 90-day warranty unless safe handling is shown.
- Exceptions: Kits and interfaceable electronics may not be covered if damaged due to misuse.
- Returns: Contact support via your order confirmation email within 14 days of purchase. Items must be unopened and in original packaging. Proof of purchase is required.
- Defective/Damaged Items: Notify us within 30 days for a free refund or replacement. Exclusions apply.
- Return Shipping Costs: Paid by the customer unless the item is defective. Shipping costs are non-refundable.
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, it's 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 of 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.
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 December 20, 2022 – we've updated this PCB with Adafruit Pinguin to make a lovely and legible silkscreen - you may get the new PCB or the older version with vector fonts - both are identical other than the fancy silkscreen.
- As of Feb 16, 2015 we now use a much beefier polarity-protection transistor. Functionality is otherwise the same




