mirror of
https://github.com/Klipper3d/klipper.git
synced 2026-01-06 14:57:53 -07:00
Implements support for the PCA9685 16-channel PWM controller over I2C, enabling [servo] and [output_pin] configurations for PWM and digital outputs. Supports configurable frequency (default 50Hz), I2C addressing, global MODE2 settings (invert_output, totem_pole), and per-pin software inversion. Designed primarily for applications like pick-and-place machines with servo-driven component feeders. Includes documentation and example configuration. Signed-off-by: Maja Stanislawska <maja@makershop.ie>
19 lines
403 B
INI
19 lines
403 B
INI
[pca9685 pca9685_1]
|
|
i2c_address: 64 #0x40
|
|
i2c_mcu: mcu
|
|
i2c_bus: i2c1
|
|
frequency: 50
|
|
invert_output: False # Global hardware inversion (MODE2 INVRT)
|
|
totem_pole: True # Use totem-pole output (MODE2 OUTDRV)
|
|
|
|
[servo my_servo]
|
|
pin: pca9685_1:pwm0
|
|
maximum_servo_angle: 180
|
|
minimum_pulse_width: 0.001
|
|
maximum_pulse_width: 0.002
|
|
invert: False
|
|
|
|
[output_pin my_pin]
|
|
pin: pca9685_1:pwm15
|
|
pwm: True
|
|
invert: True
|