Skip to product information

MCU-PCA9685 16 Channel 12-bit FM+I2C PWM Servo Driver Module
R 65.99 ZAR
The MCU-PCA9685 16 Channel 12-bit FM+I2C PWM Servo Driver Module enables precise control of up to 16 servos or LEDs through an I2C interface. Featuring 12-bit resolution, it offers fine-grained pulse width modulation for smooth and accurate movement. Ideal for advanced robotics, automation, and embedded systems, this module offloads PWM generation from the main microcontroller, simplifying complex multi-channel control with minimal wiring and improved timing stability. Its flexible frequency modulation supports a wide range of servo types and custom applications.
Pickup currently not available

PRODUCT INFORMATION
Specifications
Spec | Value |
---|---|
VCC Chip Supply | 3–5V DC |
Logic Signal Levels | 3–5V DC |
V+ Servo Supply | 6V DC Max |
Frequency | 40–1000Hz |
#include <Wire.h> |
#include <Adafruit_PWMServoDriver.h> |
Adafruit_PWMServoDriver myServo = Adafruit_PWMServoDriver(); |
#define SERVOMIN 150 |
#define SERVOMAX 600 |
uint8_t servonum = 0; |
uint8_t numberOfServos = 6; |
void setup() { |
Serial.begin(9600); |
myServo.begin(); |
myServo.setPWMFreq(60); |
delay(10); |
} |
void loop() { |
for (uint16_t pulselen = SERVOMIN; pulselen < SERVOMAX; pulselen++){ |
myServo.setPWM(servonum, 0, pulselen); |
} |
delay(500); |
for (uint16_t pulselen = SERVOMAX; pulselen > SERVOMIN; pulselen--){ |
myServo.setPWM(servonum, 0, pulselen); |
} |
delay(500); |
servonum ++; |
if (servonum > numberOfServos-1) |
servonum = 0; |
} |