Hello.
Hardware: Raspberry Pi v2, with good PSU.
On pin 18: one LED strip of 12V groups of WS2811 (12 blocks); then, the data line is sent to a serie of individual WS2812 LEDs (5V). For a total of 12+48+1=61 pixels.
Took me some time to understand how to send my very first WS2811 frame, and I had a few hardware bugs (I was supplying the 12V stripe only from one end; when putting full power light, the end of stripe was having lower voltage, and could not transmit the signal correctly to the 5V part).
The problem I have now is that, "once in a while", the LEDs show an unexpected pattern. The bug is completely random; it does not correlate with any particular pattern, ambiant parasite, or crontab execution. Bug can happen only once in a minute, or twice in the same second.
To have bug tracking more consistent, I am now always sending the same frame (the same pattern). My pattern is using the sequence RED-GREEN-BLUE-WHITE-BLACK at 10% intensity.
I have tried 3 different APIs to communicate with the chips:
https://github.com/joosteto/ws2812-spi.git
which depends on https://github.com/doceme/py-spidev.git
and this code includes two methods:
- brute force, where the bug produces the good pattern, but shifted, a bit like is the first bytes were dropped.
- numpy optimisation, where the bug produces a completely random pattern, with some LEDs at full intensity on random colors (like pink or purple, which is not part my pattern)
https://www.fabriqueurs.com/raspberry-p ... pollution/
which uses https://github.com/jgarff/rpi_ws281x.git and neopixel library
... and this produces the same bug as the numpy methode.
Since the behaviour depends on the API used, I have concluded there is nothing wrong with my stripes, and the problem is the API itself.
Whatever goes wrong, the pattern is fine on the next frame.
Is there any chance to get SW2811 100%reliable, or is it a lost cause with rPi2 ?
If it's a lost cause, can you indicate me a better chip that works 100.000000% ? sk9822, APA102, WS2813, WS2818 ?