WS2812B sporadic wrong color - DMA issue or?
I have a custom designed board using a single WS2812B RGB LED.
I use the DMA to control, just as "all" examples and drivers use it.
Fairly simple, and it works as a charm.
99% of the time...
Symptom:
Once in while, it starts to show a wrong color.
Fx. if I want to blink 3 times yellow, it may show 1*white + 2*yellow. Or other variations.
Green sometimes get cyan-like.
Red may also show as white.
More rare: OFF shows as green.
The wrong color is not completely random: It is most often white (-ish), or it is the wanted color but in a brighter version.
The LED can work OK for hours, and suddenly fails for a couple of minutes. Then OK again.
Tests performed:
Checked with oscilloscope: The timing is spot-on, and the control signal is sharp and OK.
Debugged code = OK
Hardware/Software
STM32H730
WS2812B is driven and controlled directly form 3V3 supply and MCU pins
Also running other timer interrupts. Running FreeRTOS.
Possible causes:
I am running out of ideas where to search for the problem.
I have searched everywhere for similar problems, but can't find any.
Do you have any ideas in which direction I should go?
- Timing ?
- Supply voltage ?
- Or ?
Thanks in advance !
