PureData CEAMMC library web documentation
aliases: [hw.rpi.pwm.pca9685]
available since version: 0.9.8
Note: default PWM freq is 50Hz Servo Control Many digital servos run on a 20ms pulse width (50Hz update frequency) based duty cycle, and do not utilize the entire pulse width for their control Typically, 2.5% of the 20ms pulse width (0.5ms) represents -90° offset, and 12.5% of the 20ms pulse width (2.5ms) represents +90° offset Be aware that driving some 180° servos too far past their -90°/+90° operational range can cause a little plastic limiter pin to break off and get stuck inside of the servo's gearing, which could potentially cause the servo to become jammed and no longer function Continuous servos operate in much the same fashion as 180° servos, but instead of the 2.5%/12.5% pulse width controlling a -90°/+90° offset it controls a -1x/+1x speed multiplier, with 0x being parked/no-movement and -1x/+1x being maximum speed in either direction.
CHAN device PWM channel. If equals to 16 means all channels
type: int
required: True
VALUE value
type: bool
required: True
[DELAY] the setting is delayed by the given phase value.
type: float
CHAN device PWM channel. If equals to 16 means all channels
type: int
required: True
DUTY duty cycle value
type: float
required: True
[PHASE] phase offset
type: float
enable_restart_and_disable
put the controller to sleep while keeping the PWM register contents in
preparation for a future restart
CHAN device PWM channel. If equals to 16 means all channels
type: int
required: True
WIDTH pulse width
type: float
units: ms
required: True
[PHASE] phase offset
type: float
restart
re-enable the controller after a sleep with restart enabled so that previously
active PWM channels are restarted
CHAN device PWM channel. If equals to 16 means all channels
type: int
required: True
ON ON counter time value
type: int
required: True
OFF OFF counter time value
type: int
required: True
TYPE prog address type
type: atom
required: True
I2C_ADDR new I²C address
type: int
required: True
@i2c_addr (initonly)
Get/set I²C address. Also 'default' value is accepted (for addr 0x40)
type: int
range: -4..119
default: -1
@i2c_bus (initonly)
Get/set I²C bus
type: atom
enum: 1, 2, 3, 4, 5, 6, default, none
default: none
Authors: Serge Poltavsky
License: GPL3 or later