Same same but different!
As time goes by, I’m discovering more and more types of programmable LEDs!
Do you know of any other kind and their specificity or compatibility? Please comment on those! A lot of info is available at NormanLED or the Tacklind list.
- Non-programmable, analog (not supported by FAB_LED)
Non programmable LED strips will usually have a common Vdd rail and a ground for each color it supports, aka 4 wires for an RGB strip. All LEDs will shine with the same color. Often sold with an LED controller and cheap.- Standard single color LED, requires a resistor, usually (Vdd – Vdiode) / Idiode, and Vdiode, often 3.4V, Idiode often 20mA (regular) or 30mA (bright), sor for 5V power, 68 Ohm to 86Ohm.
- RGB with 4 pins, one pin per color plus common ground, which may have different voltage requirements from 2.2V to 3.6V, aka different resistors on each pin.
- Fast or slow blink RGB LED, wired the same way as above, super convenient for quick color fun. You can’t dim them because it would reset their sequence.
- One wire – return to zero signal
(all have compatible signal clocking, but different color orders)
These LEDs are programmable, usually with 1 pin transporting the data (labelled DI or BI), and are the cheapest option for programmable LED strips. The timing of the signal is critical so it may be a bit harder to drive them. The protocols are usually all compatible but come from different vendors.- WS2812B (see WS2812, UCS1903 etc.), PWM at 430Hz
- WS2811 (12V power, with 5V signal)
- WS2813(redundant data on 2 wires DI and BI, to resist LEDs failure), PWM at 2kHz
- WS2815 (like WS2813 but 12V), send 5V signal on BI.
- SK6813(redundant like WS2813)
- SK6812 (can support up to 4 colors, commonly GRBW), PWM at 1.1kHz
- SK6805 (3 colors)
- UCS2904 (4 colors, separate control chip like WS2811 5V to 24V), PWM at 1.8kHz
- APA104
- APA106 (COM-12877)
- SPI
(data+clock pins, easy to control, faster, but more wires)
These LEDs are programmable, usually with 2 pins (clock CI and data DI). The timing is done manually by sending the clock and data
I plan to support all programmable LEDs including WS2801 and P9813 in FAB_LED. It may requires me revisiting the SPI support I have, as part of my overhaul of the library.
The SK6812 LED protocol is also used on non-RGB strips. Sometimes they support multiple white LED temperatures (warm to cold), or even one single color. Those can be found on eBay or AliExpress, but are more rare. I suspect they would be programmed all the same way.
Some Arduino libraries to control programmable LEDs include FastLED, Adafruit NeoPixel or DotStar libraries, and FAB_LED. These libraries are available on GitHub.
LED sizes
The most common size is the 5050 (5mm) but there’s many sizes. Programmable LEDs are becoming available in 3535 and 2020, with some vendors selling denser and narrower LED strips of those sizes at a premium (each pixel is less powerful). With 5050 LEDs, LED strips are usually sold as 30, 60, 96 or 144 LEDs/meter, with the bulk of the offer at 60/m.
- 5050 (5mm)
- 3535 (3.48mm)
- 4020 (4x2mm)
- 2020 (2mm)
- 1515 (1.5mm)
LED strips
Density
Common densities of standard 5050 LED strips:
- 30 LED/m
- 60LED/m (most commonly used)
- 96LED/m
- 144LED/m (very dense, LEDs next to each other
Waterproofing
IP rating indicates how much water and humidity the LED strip can handle in normal operations.
- IP30: bare LED strip
- IP65: LED strip molded with silicon
- IP67: LED strip within a silicone tube
Diffusers
It’s becoming more common to have LED strips presented to look like neon lights, or have diffusers to smooth the light:
Neon Light LED Strip ($23/5m)
LED Strip Light Silica Gel Soft Lamp Neon Rope Tube (T0513 $10/5m)
Prices
- WS2812B: IP30 60LED/m 5m $14
- WS2813: IP30 60LED/m 5m $22
LED Specifications
Most programmable LEDs are interchangeable and belong to two categories.
For One-wire LED protocols, the main subtle differences will be the PWM frequency. A higher frequency will be better for persistence of vision applications and for photography. The timings of the data also vary making them more or less prone to glitches.
WS2812B | WS2813A~D CS2803 |
APA104 | SK6812 SK6805 |
SK6813 | |
---|---|---|---|---|---|
Vdd | +3.5V ~ +5.3V | +3.5V ~ +5.3V | +3.5V ~ +5.3V | +3.5~+5.5 | +3.5~+5.5 |
IiPWM | 1µA
430Hz |
1µA
2kHz |
1µA
. |
.
1.1kHz |
.
. |
Fosc | 800kHz 1.25µs | 800Kbps 800kHz 1.25µs | 800kHz 1.25µs | 800kHz 1.25µs | 800kHz 1.25µs |
red | 620-625nm 390-420mcd | 620-622nm 360mcd | 620-625nm 390-420mcd | 620-630nm 1000-1500mcd 1.0-2.0lm | 620-630 |
green | 522-525nm 660-720mcd | 522-525nm 1150mcd | 522-525nm 660-720mcd | 515-530nm 2200-3300mcd 3.0-4.0lm | 515-530 |
blue | 465-467nm 180-200mcd | 467-470nm 220mcd | 465-467nm 180-200mcd | 460-475nm 400-700mcd 0.5-1.0lm | 460-475 |
T0H | 400ns ±150ns | 300ns~450ns | 350ns ±150ns | 300ns ±150ns | 200-400ns |
T1H | 800ns ±150ns | 750ns~1000ns | 1360ns ±150ns | 900ns ±150ns | 620-1000ns |
T0L | 850ns ±150ns | 750ns~1000ns | 1360ns ±150ns | 900ns ±150ns | >800ns |
T1L | 450ns ±150ns | 300ns~450ns | 350ns ±150ns | 300ns ±150ns | >200ns |
TH+TL | 1.25µs±600ns | 1.25µs±300ns | 1.25µs ±600ns | 1.25µs±600ns | 1.20 |
reset | > 50µs | > 300µs | > 24µs | > 80µs | > 80µs |
Quiescent I | 0.6mA | 1mA | 1mA | ||
Constant I | 18mA | 12mA |