Progrider

Programming discussion

Board index
Findings · Open discussion

RP2040 PIO makes WS2812 timing a non-issue

Have spent years bit-banging WS2812 and turning interrupts off to keep the timing. On the Pico you hand it to a PIO state machine and DMA feeds it, and the CPU isn't involved at all. There's a ws2812 example in pico-examples that's about 10 instructions. Wifi and a 300 pixel strip with no flicker on a Pico W. Should've moved years ago.

2 replies

ESP32 has RMT for the same thing!! Works great. But yes never bit bang, ever
Yep, RMT's good too. PIO just feels like cheating.

Add a reply

Plain text. Public, and removed when the thread expires.

Posts and requests are logged for research. Privacy notice.