]> Repositories - Adafruit_Blinka-hackapet.git/blob - src/neopixel_write.py
Merge pull request #508 from lesamouraipourpre/versioning
[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
12 __version__ = "0.0.0-auto.0"
13 __repo__ = "https://github.com/adafruit/Adafruit_Blinka.git"
14
15
16 import sys
17
18 from adafruit_blinka.agnostic import detector
19
20 if detector.board.any_raspberry_pi:
21     from adafruit_blinka.microcontroller.bcm283x import neopixel as _neopixel
22 elif detector.board.pico_u2if:
23     from adafruit_blinka.microcontroller.rp2040_u2if import neopixel as _neopixel
24 elif (
25     detector.board.feather_u2if
26     or detector.board.qtpy_u2if
27     or detector.board.itsybitsy_u2if
28     or detector.board.qt2040_trinkey_u2if
29 ):
30     from adafruit_blinka.microcontroller.rp2040_u2if import neopixel as _neopixel
31 elif "sphinx" in sys.modules:
32     pass
33 else:
34     raise NotImplementedError("Board not supported")
35
36
37 def neopixel_write(gpio, buf):
38     """Write buf out on the given DigitalInOut."""
39     return _neopixel.neopixel_write(gpio, buf)