**PCA9685 16-Channel 12-Bit PWM Servo Motor Driver I2C Module**
Unlock the potential of your robotics and automation projects with the PCA9685! This advanced 16-channel, 12-bit PWM driver communicates via I2C, utilizing just two pins on your microcontroller, perfect for Arduino, ESP32, and Raspberry Pi. Control servos and LED lighting with ultra-smooth 4096-step resolution and a frequency range of 24 Hz to 1526 Hz.
**Key Features:**
- **16 Independent Channels:** Manage multiple devices simultaneously
- **Built-In Oscillator:** No extra clock needed, enhances performance
- **Adjustable PWM Frequency:** Tailored for various applications
- **Daisy-Chain Capability:** Connect up to 62 boards for expansive control
- **Reverse Polarity Protection:** Safeguards against power errors
**What You Need:**
- Compatible microcontroller (Arduino, ESP32, etc.)
- External 5â6V DC power supply for servo power
- Servo motors or LEDs
**Applications:** Ideal for robotics, animatronics, RC vehicles, LED lighting, and STEM education.
**Fast Free US Shipping!** Shop now for a seamless building experience!
PCA9685 16-Channel 12-Bit I2C PWM Servo Motor Driver Module
The PCA9685 is a 16-channel, 12-bit PWM servo motor driver module that communicates over I2C, using only two pins on your microcontroller. It generates all PWM signals internally with its built-in oscillator, freeing your processor for other tasks while independently controlling up to 16 servos or LEDs.
⚠️ Pin headers require soldering. Servo motors, power supply, jumper wires, and microcontroller are sold separately. An external 5–6V power supply is required to power servos.
🔧 How It Works
- Connect VCC and GND to your microcontroller for chip logic power.
- Connect SDA and SCL to your microcontroller's I2C pins.
- Connect an external 5–6V power supply to the V+ terminal block for servo power.
- Plug servos into the 3-pin output headers (channels 0–15).
- Install the Adafruit PWM Servo Driver Library and upload your code -- the PCA9685 handles all PWM signal generation automatically.
⚡ Key Features
- 16 Independent PWM Channels: Control servos, LEDs, or other PWM devices simultaneously
- 12-Bit Resolution (4096 Steps): Ultra-smooth servo positioning and LED dimming
- I2C Interface: Uses only 2 pins (SDA & SCL) on your microcontroller
- Built-In Oscillator: No external clock needed -- outputs run independently and free-running
- Adjustable PWM Frequency: 24 Hz to 1526 Hz to suit servos, LEDs, or other loads
- Chainable Design: Daisy-chain up to 62 boards (992 channels) via pass-through headers
- 6 Address-Select Jumpers: Easily assign unique I2C addresses to each board
- Output Enable (OE) Pin: Instantly disable all outputs with a single signal
- Built-In Protection: 220Ω series resistors on all output channels
- Plug-and-Play Servo Connectors: Standard 3-pin headers for direct servo connection
- Reverse Polarity Protection: On the V+ terminal block power input
- 3.3V & 5V Compatible: 5V-tolerant inputs work with both logic levels
📐 Specifications
| Controller IC |
PCA9685 (NXP) |
| PWM Channels |
16 |
| PWM Resolution |
12-bit (4096 steps) |
| PWM Frequency Range |
24 Hz – 1526 Hz |
| Interface |
I2C (up to 1 MHz) |
| Default I2C Address |
0x40 |
| Addressable Range |
0x40 – 0x7F (62 unique addresses) |
| Logic Voltage (VCC) |
2.3V – 5.5V |
| Servo Power (V+) |
Up to 6V (separate terminal block) |
| Output Current (per channel) |
25 mA sink / 10 mA source |
| Operating Temperature |
-40°C to +85°C |
| Board Dimensions |
~62 mm × 26 mm (2.4" × 1.0") |
📦 What's in the Box
- 1x PCA9685 16-Channel 12-Bit I2C PWM Servo Motor Driver Module
- 1x Set of pin headers (loose, will require soldering)
Servo motors, power supply, jumper wires, and microcontroller are not included.
🛒 What You'll Need
- Microcontroller -- Arduino, ESP32, ESP8266, Raspberry Pi Pico, or compatible
- External 5–6V DC power supply -- rated for your total servo current draw
- Servo motor(s) or LEDs -- to connect to the output channels
- Jumper wires -- male-to-female recommended for I2C connections
- USB cable -- for programming your microcontroller
🔌 Compatible With
- Arduino Uno, Nano, Mega, Leonardo, Due
- ESP32 & ESP8266
- Raspberry Pi Pico / Pico W
- Raspberry Pi (via I2C GPIO)
- STM32, Teensy, and other I2C-capable microcontrollers
- Standard hobby servos (SG90, MG90S, MG996R, etc.)
- LEDs and LED strips (common anode)
🎯 Typical Applications
- Robotics -- hexapod walkers, robotic arms, pan-tilt camera mounts
- Animatronics -- coordinated multi-servo character movements
- RC vehicles -- multi-channel steering, throttle, and accessory control
- LED lighting -- smooth 12-bit dimming for RGB LED arrays and architectural lighting
- Home automation -- motorized blinds, vent controllers, smart locks
- IoT projects -- cloud-controlled servo/LED systems via ESP32 or Raspberry Pi
- STEM education -- learning I2C communication and PWM signal generation
💡 Tip: Full documentation including wiring diagrams, Arduino code examples, I2C address configuration, and troubleshooting is available on the Envistia Mall product support website.
⚠️ Important Notes
- VCC powers the PCA9685 chip only -- you must also connect an external power supply to V+ to power servos.
- Do not power servos from your Arduino's 5V pin -- always use a separate power supply for V+.
- All ground connections (MCU, module, and external power supply) must be connected together.
- Do not exceed 6V on the V+ servo power rail.
- Pin headers may require soldering before use.
🏪 About Envistia Mall
Envistia Mall is a US-based electronics retailer specializing in development boards, sensors, modules, and components for makers, engineers, and educators. We ship from the United States with fast handling times. Product documentation and technical support are available at our dedicated support site.
📦 Fast Free US Shipping | 🔄 Hassle-Free Returns | 📧 Responsive Customer Support
Visit our eBay Store for compatible Arduino-compatible boards, jumper wires, power supplies, and more accessories for your robotics and automation projects.