]> Repositories - Adafruit_Blinka-hackapet.git/blobdiff - src/pulseio.py
rm debug
[Adafruit_Blinka-hackapet.git] / src / pulseio.py
index 0507b635d5329be7c6820386c84e63015f3d9ddd..a45461339cea709f3cba6900941d176167988f02 100644 (file)
@@ -1,20 +1,29 @@
-import sys
-from adafruit_blinka.agnostic import board_id
+# SPDX-FileCopyrightText: 2021 Melissa LeBlanc-Williams for Adafruit Industries
+#
+# SPDX-License-Identifier: MIT
+"""
+`pulseio` - Pulse Width Modulation input and output control
+===========================================================
+See `CircuitPython:pulseio` in CircuitPython for more details.
+Not supported by all boards.
 
 
+* Author(s): Melissa LeBlanc-Williams
+"""
 
 
-if board_id == "raspi_2" or board_id == "raspi_3":
-    from adafruit_blinka.microcontroller.raspi_23.pulseio.PulseIn import PulseIn as PulseIn
+import sys
 
 
-"""
-class PulseIn:
-    def __init__(self, pin, maxlen=2, idle_state=False):
-        self.pulsein = _PulseIn.PulseIn(pin, maxlen, idle_state=idle_state)
+from adafruit_blinka.agnostic import detector
 
 
-    def deinit(self):
-        self.pulsein.deinit()
-    def pause(self):
-        self.pulsein.pause()
-    
-    def resume(self, trigger_duration=0):
-        self.pulsein(trigger_duration)
-"""
+# pylint: disable=unused-import
+
+if detector.board.any_raspberry_pi:
+    from adafruit_blinka.microcontroller.bcm283x.pulseio.PulseIn import PulseIn
+elif "sphinx" in sys.modules:
+    pass
+elif detector.board.any_odroid_40_pin:
+    if detector.board.id in ("ODROID_C4", "ODROID_N2"):
+        from adafruit_blinka.microcontroller.amlogic.meson_g12_common.pulseio.PulseIn import (
+            PulseIn,
+        )
+else:
+    raise NotImplementedError("pulseio not supported for this board.")