]> Repositories - Adafruit_Blinka-hackapet.git/blob - src/neopixel_write.py
Update pin.py
[Adafruit_Blinka-hackapet.git] / src / neopixel_write.py
1 """
2 `neopixel_write` - NeoPixel precision timed writing support
3 ===========================================================
4
5 See `CircuitPython:neopixel_write` in CircuitPython for more details.
6 Currently supported on Raspberry Pi only.
7
8 * Author(s): ladyada
9 """
10
11 import sys
12
13 from adafruit_blinka.agnostic import detector
14
15 if detector.board.any_raspberry_pi:
16     from adafruit_blinka.microcontroller.bcm283x import neopixel as _neopixel
17 elif detector.board.pico_u2if:
18     from adafruit_blinka.microcontroller.rp2040_u2if import neopixel as _neopixel
19 elif (
20     detector.board.feather_u2if
21     or detector.board.qtpy_u2if
22     or detector.board.itsybitsy_u2if
23     or detector.board.qt2040_trinkey_u2if
24 ):
25     from adafruit_blinka.microcontroller.rp2040_u2if import neopixel as _neopixel
26 elif "sphinx" in sys.modules:
27     pass
28 else:
29     raise NotImplementedError("Board not supported")
30
31
32 def neopixel_write(gpio, buf):
33     """Write buf out on the given DigitalInOut."""
34     return _neopixel.neopixel_write(gpio, buf)