SPI Protocols for Pixel LEDs
SPI Protocols for Pixel LEDs
SPI Protocols for Pixel LEDs
Pixel LEDs communicate using serial data protocols. Understanding these helps you choose the right chip and troubleshoot issues.

Single-Wire NRZ (WS2812B, SK6812, WS2815)
Uses one data wire with strict timing:
WS2812B timing (800kHz):
Bit 1 (high): 0.85µs high, 0.40µs low
Bit 0 (low): 0.40µs high, 0.85µs low
Reset: >280µs low (all zeros)Pros: Single wire, simple wiring Cons: Strict timing, no error checking, limited refresh rate
2-Wire SPI (APA102, SK9822, P9813)
Uses clock (CI) and data (DI) wires:
- Clock provides synchronized timing
- Data carries pixel values
- No strict timing — clock handles synchronization
Pros: Higher refresh rates (2kHz+), global brightness control, no timing issues Cons: 2 wires instead of 1, slightly more expensive chips
Comparison
| Feature | NRZ (WS2812B) | SPI (APA102) |
|---|---|---|
| Wires | 1 (data) | 2 (clock + data) |
| Refresh rate | ~400Hz | ~2-20kHz |
| Timing critical? | Yes | No |
| Global brightness? | No | Yes (5-bit) |
| Max frequency | 800kHz | 10-20MHz |
| Price per LED | ~$0.05-0.10 | ~$0.10-0.20 |
Other Protocols
- TM1814 — 4-channel (RGBW), 800kHz NRZ
- UCS1903 — 400kHz NRZ (older, slower)
- GS8208 — 12V, 800kHz NRZ with backup data line
- LPD6803 — 250kHz SPI-like (obsolete)