Skip to content

Commit 93953cd

Browse files
Add PWM frequency setter and gettter.
1 parent 9c0e95e commit 93953cd

File tree

1 file changed

+12
-2
lines changed

1 file changed

+12
-2
lines changed

adafruit_motorkit.py

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,7 @@ class MotorKit:
6767
6868
Alternately, if using with multiple I2C devices, you can specify the I2C bus."""
6969

70-
def __init__(self, address=0x60, i2c=None, steppers_microsteps=16):
70+
def __init__(self, address=0x60, i2c=None, steppers_microsteps=16, pwm_frequency=1600):
7171
self._motor1 = None
7272
self._motor2 = None
7373
self._motor3 = None
@@ -77,7 +77,7 @@ def __init__(self, address=0x60, i2c=None, steppers_microsteps=16):
7777
if i2c is None:
7878
i2c = board.I2C()
7979
self._pca = PCA9685(i2c, address=address)
80-
self._pca.frequency = 1600
80+
self._pca.frequency = pwm_frequency
8181
self._steppers_microsteps = steppers_microsteps
8282

8383
# We can save memory usage (~300 bytes) by deduplicating the construction of the objects for
@@ -296,3 +296,13 @@ def stepper2(self):
296296
microsteps=self._steppers_microsteps,
297297
)
298298
return self._stepper2
299+
300+
@property
301+
def frequency(self):
302+
"""The overall PWM frequency in Hertz."""
303+
return self._pca.frequency
304+
305+
@frequency.setter
306+
def frequency(self, pwm_frequency=1600):
307+
self._pca.frequency = pwm_frequency
308+

0 commit comments

Comments
 (0)