#smart-leds #driver #ws2812 #pio #led-driver #peripheral #rp2040 #timer #blocking

dev ws2812-pio

Driver implementation for the WS2812 smart LED using the RP2040's PIO peripheral

8 breaking releases

0.9.0 Dec 22, 2024
0.8.0 Mar 16, 2024
0.7.0 Sep 1, 2023
0.6.0 Feb 18, 2023
0.1.0 Jan 3, 2022

#2772 in Hardware support

Download history 91/week @ 2025-12-29 78/week @ 2026-01-05 83/week @ 2026-01-12 144/week @ 2026-01-19 164/week @ 2026-01-26 146/week @ 2026-02-02 45/week @ 2026-02-09 143/week @ 2026-02-16 185/week @ 2026-02-23 98/week @ 2026-03-02 142/week @ 2026-03-09 127/week @ 2026-03-16 99/week @ 2026-03-23 163/week @ 2026-03-30 120/week @ 2026-04-06 134/week @ 2026-04-13

539 downloads per month
Used in 18 crates

Apache-2.0

12KB
188 lines

WS2812 PIO Driver for the RP2040

This driver implements driving a WS2812 RGB LED strip from a PIO device of the RP2040 chip.

You should reach to [Ws2812] if you run the main loop of your controller yourself and you want [Ws2812] to take a hold of your timer.

In case you use cortex-m-rtic and can't afford this crate to wait blocking for you, you should try [Ws2812Direct]. Bear in mind that you will have to take care of timing requirements yourself then.


Ws2812b-pio

Implements SmartLedsWrite for the Raspberry's RP2040 using the PIO peripheral.

Refer to the rp-hal for examples.

Dependencies

~9.5MB
~190K SLoC