]> Repositories - Adafruit_Blinka-hackapet.git/commitdiff
Merge pull request #917 from adafruit/use-pi5-pio-neopixel
authorLimor "Ladyada" Fried <limor@ladyada.net>
Mon, 16 Dec 2024 18:57:47 +0000 (13:57 -0500)
committerGitHub <noreply@github.com>
Mon, 16 Dec 2024 18:57:47 +0000 (13:57 -0500)
neopixel_write: Use new pio-based code on pi5

setup.py
src/neopixel_write.py

index 4ed24be227545acca1b70b7a5f43beaf7b228e20..5ec4231168b4c8b6bb8ac03e57d62afe9888aa04 100755 (executable)
--- a/setup.py
+++ b/setup.py
@@ -37,7 +37,11 @@ if os.path.exists("/proc/device-tree/compatible"):
         board_reqs = ["RPi.GPIO", "rpi_ws281x>=4.0.0"]
     # Pi 5
     if b"brcm,bcm2712" in compat:
-        board_reqs = ["rpi_ws281x>=4.0.0", "rpi-lgpio"]
+        board_reqs = [
+            "rpi_ws281x>=4.0.0",
+            "rpi-lgpio",
+            "Adafruit-Blinka-Raspberry-Pi5-Neopixel",
+        ]
     if (
         b"ti,am335x" in compat
     ):  # BeagleBone Black, Green, PocketBeagle, BeagleBone AI, etc.
index 77e577674498522bc1396ac44da3c7863185ca17..641a2021fa448b6f2b2f7f6a954f816750025f46 100644 (file)
@@ -10,13 +10,16 @@ Currently supported on Raspberry Pi only.
 
 * Author(s): ladyada
 """
-# pylint: disable=too-many-boolean-expressions
+# pylint: disable=too-many-boolean-expressions, ungrouped-imports
 import sys
 
-from adafruit_blinka.agnostic import detector
+from adafruit_blinka.agnostic import detector, board_id
 
 if detector.board.any_raspberry_pi:
-    from adafruit_blinka.microcontroller.bcm283x import neopixel as _neopixel
+    if board_id == "RASPBERRY_PI_5":
+        import adafruit_raspberry_pi5_neopixel_write as _neopixel
+    else:
+        from adafruit_blinka.microcontroller.bcm283x import neopixel as _neopixel
 elif detector.board.pico_u2if:
     from adafruit_blinka.microcontroller.rp2040_u2if import neopixel as _neopixel
 elif detector.board.OS_AGNOSTIC_BOARD: