Specifications
Part NumberPCA9685
ManufacturerNXP Semiconductors
Device Type16-Channel, 12-Bit PWM Controller (LED/Servo Driver)
PWM Channels16 independent channels
PWM Resolution12-bit (4096 steps per cycle)
PWM Frequency Range24 Hz – 1526 Hz (programmable prescaler)
Duty Cycle Range0% – 100% (0 – 4095 counts)
Output Drive25 mA sink / 10 mA source per channel (5V-tolerant open-drain)
Output StatesON, OFF, or PWM with individual delay control per channel
PackageTSSOP-28 (9.7 × 4.4 mm)
Supply Voltage2.3 V – 5.5 V
Operating Temperature−40°C to +85°C
Supply Voltage (VDD)2.3 V – 5.5 V
Active Current~5 mA typical (internal oscillator active)
Standby Current< 10 µA (oscillator off, all outputs high-Z)
Output Low Voltage (VOL)0.4 V max @ 25 mA sink
Output High (open-drain)Pull-up to external voltage ≤ 5.5V
Output Edge RateProgrammable: fast (~10 ns) or slow (~100 ns)
Internal Oscillator25 MHz (trimmed to ±5%)
External Clock InputSupported (up to 50 MHz)
Output Enable (OE) PinActive-low, hardware shutdown of all outputs
Output Not Enable TimeAsynchronous, <1 µs response
Digital InterfaceI²C (2-wire: SDA, SCL) with Fast-mode Plus (Fm+) support
I²C Clock Rateup to 1 MHz (Fast-mode Plus)
I²C AddressProgrammable: 0x40–0x7F (6 hardware address pins)
I²C Address PinsA0–A5: 6 hardware-addressable pins → 62 unique addresses
Multi-Device SupportUp to 62 devices on single I²C bus (992 PWM channels total)
Register MapAuto-increment addressing for efficient burst writes
Output ControlPer-channel: ON/OFF/TOGGLE via I²C registers
Interrupt OutputOpen-drain interrupt pin, optional
GPIO ModeChannels can be used as general-purpose outputs
Pins28-pin TSSOP (SDA, SCL, A0–A5, OE, LED0–LED15, VDD, VSS)
Part NumberPCA9685
Orderable Qty1 pcs – 10,000+ pcs
Price (1–9 pcs)Contact for quote
Price (10–99 pcs)Contact for quote
Price (100–499 pcs)Contact for quote
Price (500+ pcs)Best pricing available
Lead Time (stock)3–7 business days
PackagingTape & Reel (T&R)
RoHS CompliantYes (Pb-free)

Please confirm exact parameters with manufacturer datasheet.

Product Description

The PCA9685 is a 16-channel, 12-bit PWM controller from NXP Semiconductors, designed for applications requiring precise, multi-channel pulse-width modulation control. With 4096-step resolution and a programmable frequency range of 24 Hz to 1526 Hz, it is the ideal chip for generating ESC control signals, driving servo gimbals, and controlling LED brightness in multi-rotor drones and robotics platforms.

Communication is handled via a standard I²C interface supporting Fast-mode Plus at up to 1 MHz, allowing low-latency updates even with multiple devices on the same bus. The chip features 6 hardware-addressable pins (A0–A5), enabling up to 62 unique I²C addresses and the theoretical capability to control up to 992 PWM channels from a single I²C bus — more than sufficient for the most complex drone control systems.

Each channel's output is an open-drain, 5V-tolerant driver capable of sinking 25 mA, making it directly compatible with standard servo and ESC signal inputs without level shifting. The Output Enable (OE) pin provides a hardware-level shutdown of all outputs simultaneously — a critical safety feature for drone applications where you need to instantly disarm all motors or servos in an emergency. The PCA9685 is widely used with Raspberry Pi and Arduino platforms and has extensive library support in Python (Adafruit_CircuitPython_PCA9685) and C++ (Adafruit_PWMServoDriver).

Key Features

  • 16 independent PWM channels with 12-bit (4096-step) resolution per channel
  • Programmable PWM frequency from 24 Hz to 1526 Hz via internal prescaler
  • I²C Fast-mode Plus interface up to 1 MHz for low-latency multi-channel updates
  • 6 hardware address pins (A0–A5): 62 unique addresses, up to 992 total PWM channels
  • Open-drain outputs, 5V-tolerant, 25 mA sink per channel — direct servo/ESC compatible
  • Hardware Output Enable (OE) pin for emergency all-channel shutdown
  • Auto-increment register addressing for efficient burst writes over I²C
  • Programmable output edge rate control (fast/slow slew rate per channel)
  • Internal 25 MHz oscillator with ±5% accuracy, external clock option available
  • Ultra-low standby current <10 µA for battery-powered drone applications
Frequently Asked Questions
Can PCA9685 be used to generate standard ESC PWM signals (1000-2000 µs)?
Yes. With a PWM frequency set to approximately 50 Hz (standard for servo/ESC), the 12-bit resolution provides 4096 steps across a 20 ms period. A typical 1000 µs pulse (5% duty) maps to count ~205, and 2000 µs (10% duty) maps to count ~410. This gives approximately 205 discrete position steps — more than sufficient for smooth servo gimbal control and precise ESC throttle mapping. For higher resolution at higher frequencies (e.g., 400 Hz for modern ESC protocols), consider using dedicated ESC protocols like DShot instead.
How many PCA9685 boards can I connect to one Raspberry Pi or Arduino?
You can connect up to 62 PCA9685 devices on a single I²C bus by configuring each with a unique address via the A0–A5 pins. However, practical limits are determined by PCB layout constraints and I²C bus capacitance. For typical drone applications, 1–4 boards (16–64 channels) is common. Each board handles 16 channels independently, and the I²C auto-increment addressing allows efficient burst updates to all channels on a single device with minimal bus overhead.
What is the difference between PCA9685 and software-based PWM on a microcontroller?
Software PWM (bit-banging) consumes CPU cycles and is limited by the microcontroller's timer resolution and interrupt latency. The PCA9685 offloads all 16 PWM channels to dedicated hardware, freeing the flight controller MCU for more critical tasks like sensor fusion, PID loops, and RF communication. It also provides consistent, jitter-free PWM generation regardless of CPU load — critical for smooth gimbal operation and stable ESC signals during high-compute flight maneuvers.

Need PCA9685 for Your Drone ESC or Servo Project?

Get competitive pricing and fast delivery from UAVCHIP. Stock available for immediate shipment worldwide.

UAV & Robotics Applications
Multi-Rotor ESC Signal Generator
Generates standard 50 Hz PWM pulses for up to 16 simultaneous ESC channels. Ideal for octocopter, coaxial, and redundant motor configurations requiring independent per-motor throttle signals.
Gimbal Servo Driver
Drives 2-axis or 3-axis camera gimbal servos with smooth, jitter-free PWM. 12-bit resolution ensures sub-degree positioning accuracy for cinematic aerial videography.
LED Navigation Light Controller
Controls up to 16 independent LED channels for drone navigation lights, landing lights, and status indicators. Programmable brightness via PWM duty cycle with 4096 dimming levels.
Payload Release Mechanism
Controls servo-actuated payload release mechanisms for delivery drones, search-and-rescue droppers, and agricultural spraying valve actuators via precise PWM position commands.
Similar Products (PWM & Motor Control)
Related Components (Used Together)

Need PCA9685 or PWM Control Components?

Submit your BOM with quantities and get competitive pricing within 48 hours. Global shipping available via DHL and FedEx.