Simple, stripped down, educational, no_std-compatible driver for WS28XX (WS2811/12) RGB LEDs. Uses SPI device for timing/clock, and works definitely on Linux/Raspberry Pi.
The main goal of this crate was to work on Raspberry Pi. As the title says, this is bound
spi-device for sending data. But you can use it also on other systems, i.e. embedded systems
(no_std-environments) but in these cases you must provide an own
encoding.rs file if the
refresh rate doesn’t match the value in
Generic Hardware Abstraction Layer, no_std-compatible.
Adapter for SPI-dev on Linux-systems. This requires std.
Utility functions for the encoding of data. This functions respect the restrictions from
Module with all code + comments related to timing. The WS2818 has specific restrictions how long high and low signal must be send on DIN-wire in nanoseconds. All logic and constants needed to cope with this are placed here.