adafruit / Adafruit_Blinka

Add CircuitPython hardware API and libraries to MicroPython & CPython devices
https://learn.adafruit.com/circuitpython-on-raspberrypi-linux
MIT License
439 stars 327 forks source link

rpi_ws281x not compatible with pi 5 #747

Open mundo1979 opened 7 months ago

mundo1979 commented 7 months ago

Board Name

Raspberry Pi 5

Steps

Output of example from here- https://learn.adafruit.com/neopixels-on-raspberry-pi/python-usage:

File "/root/test.py", line 64, in pixels.show() File "/root/env/lib/python3.11/site-packages/adafruit_pixelbuf.py", line 204, in show return self._transmit(self._post_brightness_buffer) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/root/env/lib/python3.11/site-packages/neopixel.py", line 180, in _transmit neopixel_write(self.pin, buffer) File "/root/env/lib/python3.11/site-packages/neopixel_write.py", line 42, in neopixel_write return _neopixel.neopixel_write(gpio, buf) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/root/env/lib/python3.11/site-packages/adafruit_blinka/microcontroller/bcm283x/neopixel.py", line 83, in neopixel_write raise RuntimeError( RuntimeError: ws2811_init failed with code -3 (Hardware revision is not supported) swig/python detected a memory leak of type 'ws2811_t *', no destructor found.

Description

The error appears to be from rpi_ws281x

The issue is currently being worked on: https://github.com/jgarff/rpi_ws281x/issues/528

Additional information

No response

makermelissa commented 7 months ago

Yep, we're aware of it. Thanks. It doesn't sound like it will happen very soon. In the mean time, you might want to try out https://github.com/adafruit/Adafruit_CircuitPython_NeoPixel_SPI.

stephinson commented 6 months ago

@makermelissa I also faced a similar problem and tried SPI, as you suggested. See here

makermelissa commented 6 months ago

Another option to try if you don't want to wait for the driver to be fixed, is to have use a NeoDriver (https://www.adafruit.com/product/5766) to separately control the lights.

stephinson commented 6 months ago

Another option to try if you don't want to wait for the driver to be fixed, is to have use a NeoDriver (https://www.adafruit.com/product/5766) to separately control the lights.

I bought an Arduino Uno instead for now