summaryrefslogtreecommitdiff
path: root/wasp/drivers
diff options
context:
space:
mode:
Diffstat (limited to 'wasp/drivers')
-rw-r--r--wasp/drivers/vibrator.py20
1 files changed, 20 insertions, 0 deletions
diff --git a/wasp/drivers/vibrator.py b/wasp/drivers/vibrator.py
new file mode 100644
index 0000000..eba6018
--- /dev/null
+++ b/wasp/drivers/vibrator.py
@@ -0,0 +1,20 @@
+# Generic PWM capable vibrator
+
+import time
+from machine import PWM
+
+class Vibrator(object):
+ def __init__(self, pin, active_low=False):
+ pin.value(active_low)
+ self.pin = pin
+ self.freq = PWM.FREQ_16MHZ
+ self.period = 16000
+ self.active_low = active_low
+
+ def pulse(self, duty=50, ms=100):
+ pwm = PWM(0, self.pin, freq=self.freq, duty=duty, period=self.period)
+ pwm.init()
+ time.sleep_ms(ms)
+ pwm.deinit()
+ self.pin.value(self.active_low)
+