]> Repositories - Adafruit_Blinka-hackapet.git/blobdiff - src/pulseio.py
Revert "Add versioning to the top-level Python files"
[Adafruit_Blinka-hackapet.git] / src / pulseio.py
index e2d69fc2246b158fae0534978febd58ea5256824..dc20e3dc029ab97207794897584b41925fa1b4f6 100644 (file)
@@ -1,6 +1,36 @@
+"""
+`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
+"""
+
 import sys
-from adafruit_blinka.agnostic import board_id
 
+from adafruit_blinka.agnostic import detector
+
+# pylint: disable=unused-import
 
-if board_id == "raspi_2" or board_id == "raspi_3":
-    from adafruit_blinka.microcontroller.raspi_23.pulseio.PulseIn import PulseIn as PulseIn
+if detector.board.any_raspberry_pi:
+    from adafruit_blinka.microcontroller.bcm283x.pulseio.PulseIn import PulseIn
+    from adafruit_blinka.microcontroller.bcm283x.pulseio.PWMOut import PWMOut
+elif detector.board.any_coral_board:
+    from adafruit_blinka.microcontroller.generic_linux.sysfs_pwmout import PWMOut
+elif detector.board.any_giant_board:
+    from adafruit_blinka.microcontroller.generic_linux.sysfs_pwmout import PWMOut
+elif detector.board.any_beaglebone:
+    from adafruit_blinka.microcontroller.am335x.sysfs_pwmout import PWMOut
+elif detector.board.any_rock_pi_board:
+    from adafruit_blinka.microcontroller.generic_linux.sysfs_pwmout import PWMOut
+elif detector.board.binho_nova:
+    from adafruit_blinka.microcontroller.nova.pwmout import PWMOut
+elif detector.board.greatfet_one:
+    from adafruit_blinka.microcontroller.nxp_lpc4330.pwmout import PWMOut
+elif detector.board.any_lubancat:
+    from adafruit_blinka.microcontroller.generic_linux.sysfs_pwmout import PWMOut
+elif "sphinx" in sys.modules:
+    pass
+else:
+    raise NotImplementedError("pulseio not supported for this board.")