Illuminated with Lee Cyborg: Addressable LEDs, Which One Is Right for Me?!
Decoding addressable LED part numbers so you can get the results you want!
I’ve been using LEDs for a long time, but it took me a while before I got the hang of what the different types of addressable strips do and what their advantages are. In this article, I’m not going to make an exhaustive list of addressable LEDs, but instead offer some advice on how to pick the right strip for your project. We’ll look at speed, density, and power concerns, and understand concretely what LED is best for you!
If you’re new to addressable LEDs, a great way to get started is to get yourself a set of WS2812B 5V LEDs. These LED strips are pretty cheap and easy to use with only three wires: data, ground, and power. This is great because you can share power between your micro controller and your LEDs, so wiring can be as simple as plugging a small strip directly into your controller to start off. You can easily get up and going with almost any addressable library, my favorite is fastLED, but NeoPixel is great too. On that note, I’d just like to mention that NeoPixel is a brand name for Adafruit WS2812B LEDs. For first experimentations, I like this Pixel Stick, which is just eight LEDs, or this Pixel Ring. Both are on solid, non flexible PCBs so they minimize any risk of a single pixel not working. Once you’ve got the hang of a small amount of LEDs, you can grab a long strip and explore! I really like this guide about the WS2812B. In fact, I like the WS2812B so much I sell stickers of it in my shop.
Reliability and power
Even though I love the WS2812B, it's not without its issues. One major issue with the WS2812B LEDs is that if one LED is busted, the entire strip following it will be disrupted. This can cause pretty major issues, especially if you have LEDs in a large installation where you can’t access them easily. If a single light is damaged, it's sometimes just easier (but not cheaper) to replace the entire strip. For this reason, when I’m working on large scale installations that have complex installs, I usually choose the WS2813. In these LEDs you will find that even if a single LED fails, the rest of the strip will still work. This is because there is a backup data line that can bypass individual LEDs if they aren’t working. You can recognize this feature visually because WS2813 strips have a Data In (DI) / Data Out (DO) line, whereas the WS2812Bs only have a single signal connection.
If you’re on a budget, it's possible you encountered WS2811 LEDs, which are 12V. These are pretty cheap and suitable for most home decor projects. The major drawback of them is that they don't have individual LED control. Instead, you have to control LEDs in groups of 3. These are easy to recognize because the chip is external to the LED, unlike any of the other strips I’ve listed here. If you just want something cheap to light up in your lawn or personal project, this is still a solid option. Especially since, as I’ll discuss below, the 12V makes powering long strips of WS8211s much easier.
Power is another major consideration when you’re making an installation with LEDs. Most of these (except the WS8211s) are 5V. This means that if you have more than a few meters, you’ll need to inject power into the strip periodically. A general recommendation is about every 2 to 2.5 meters, but this can vary greatly depending on some of the factors I’lll address below. This occurs because of the natural power drop throughout the strip itself. In a 12V strip, there's more room for voltage drop to happen before it starts to affect the colors of your LEDs. Depending on your setup, it may be worth choosing an option like the WS2815, which is more expensive, but offers a 12V option. It really depends on your design and constraints. This chart by TheHookup gives a really solid overview of the pros and cons of these LEDs and more.
Speed
For the most part, these LEDs will satisfy most of your requirements for standard projects. However, if you want your LEDs to react faster, you might want to reconsider your options. If you’re making something that involves persistence of vision (POV), very fast reacting effects or displays, you may want to consider your refresh rate. The WS2812B can run at about 400 Hz, which is plenty for most applications but can really slow down in large clusters. The WS8213 is about 2kHz. Otherwise, there are a range of options that utilize a clock pin. While this does mean another wire to hook up, they can get pretty fast.
There are some more options like the SK9822 which has a rate of 4.7kHz The APA102 is extremely fast, running at about 20kHz. The APA102 is the same as DotStar by Adafruit, and is very similar to SK98225. If you’re looking for something even FASTER, then HD107 and HD108 can get up to 40kHz. Honestly, all of these are great, high quality LEDs and if you want a detailed overview of them you can check it out here.
A few other things to keep in mind are density and LED packaging. LED strip density indicates how many LEDs per meter there are in your strip. This can impact both the speed and of course the power consumption. One thing I’m always amazed by is both how bright only a few LEDs are on my desk, and how dim they can be once they’re put in an installation outside. I recommend testing various densities in the actual environment they will be in before you make a choice. Finally, I want to touch briefly on LED packaging. LED package size does not necessarily refer to the chip set for controlling the lights, but rather in the actual component size of the LED. 5050 is the most common packaging size which refers to the actual LED module being 5.0x5.0 mm, but there are lots more, including different lighting orientations such as side emitting and even some that look like holiday lights.
As far as programming your LEDs goes, that's a whole other topic I’ll be writing about in a few weeks. One of my favorite places to get started is this Tweaking For All article that has a big range of examples that you can tweak.
Hope this helped clarify some LED information!
Artist, cyborg, maker.