Documentation

ShillehTek PCA9685 16 Channel 12-Bit PWM Servo Motor Driver I2C for Arduino | ShillehTek Product Manual

ShillehTek PCA9685 16 Channel 12-Bit PWM servo motor driver board for Arduino

What it is

The ShillehTek PCA9685 16 Channel 12-Bit PWM Servo Motor Driver I2C for Arduino is an I2C PWM expansion board for controlling many servos or LEDs without using up your microcontroller PWM pins. It provides 16 channels of 12-bit PWM (4096 steps per channel) over the SDA/SCL bus and supports daisy-chaining for large robotics and lighting arrays.

Pins

This module communicates over I2C (SDA/SCL) and includes terminals/headers for logic power and separate external motor power. For exact pin names and orientation (pinout), refer to the silkscreen labels on the board/module and the listing photos.

Technical Specifications

Item Details
Controller IC PCA9685
PWM channels 16-channel PWM output
PWM resolution 12-bit (4096 steps per channel)
Interface I2C (SDA/SCL)
Logic compatibility Works with 3.3V and 5V logic
External motor power input Screw terminal with protection capacitor; up to 6V motor power (separate from logic power)
Daisy-chain capacity Addressable up to 62 modules (theoretical 992 PWM outputs)
Typical platforms Arduino, Raspberry Pi, and other I2C-capable microcontrollers

Frequently Asked Questions

How do I connect a PCA9685 servo driver to an Arduino over I2C?

Connect the board to your Arduino using the I2C lines (SDA and SCL) plus logic power and ground. Power your servos/LEDs from the board’s external power input so motor power is separate from logic power.

Can the ShillehTek PCA9685 work with Raspberry Pi (3.3V logic)?

Yes. This PCA9685 module supports 3.3V and 5V logic, making it suitable for Raspberry Pi and many microcontrollers that use the I2C interface.

How many servos can a PCA9685 control?

One board provides 16 PWM channels for servos or LEDs. Multiple boards can be daisy-chained on I2C—up to 62 addressable modules for a theoretical 992 PWM outputs—assuming your power supply can support the total load.

Do I need external power for servos on the PCA9685 board?

For servo projects, use the board’s external motor power input (separate from logic power). The module includes a screw terminal and protection capacitor and is described as accepting up to 6V motor power.

Where can I find the PCA9685 pinout or datasheet details for this module?

Use the silkscreen labels on the PCB and the product listing photos for the exact pin names and layout. For deeper register-level information, consult a PCA9685 datasheet and your Arduino/Raspberry Pi library documentation.