The COMPLETE guide to selecting individually addressable LED strips
Today on the hookup I’m going to test all the most popular types of individually addressable LED strips, talk about their technical specifications, and help you figure out which one is best for your use case.
First of all, if you’re looking for the one “best” LED strip, I unfortunately can’t give you a single answer. The actual answer is that there are many factors to consider and each application will likely have one type of strip that will be best suited for it. The purpose of this video is to help you determine what variety of individually addressable LED will work best based on the parameters of your project. For easy viewing purposes I’ve linked a chart in the video description with the results of my tests and a quick reference sheet for choosing LED strip variety.
Test Results Spreadsheet:
Quick Reference Guide:
Pretty Power Consumption Guide:
Before we get into it I want to give a huge thanks to BTF Lighting for providing me with one of each type of their LED strips to do my testing, they’re a great vendor that I’ve used at least a dozen times and they have both an Amazon and Aliexpress store, check out the links down in the description to see their huge LED selection.
Lets start by getting a physical look at each strip type. In order to keep my tests as standardized as possible each strip has the same LED density and waterproofing, specifically these are all 150 LEDs per 5 meters and IP65 silicon coated, but there are significantly more varieties to choose from.
When selecting your LED strip you will typically get to choose a few options. First will be the color of the flexible PCB that they are mounted to, you can usually choose between black and white. Second will be the pixel density, or how many LEDs are in a single meter. I tend to use the 30 LED per meter variety because it makes power requirements more manageable, but they come in a variety of densities all the way up to 144 LEDs in a single meter. Third you’ll need to choose what type of waterproofing you want for your project. As I said before, the ones I’m testing are IP65 which means they are coated with a flexible clear silicone to keep water and dust out, but cannot be submerged in water, in my experience they are both splashproof and rainproof. If you require more waterproofing you can choose the IP67 version that come in a sealed silicone sleeve, but keep in mind they get to be a bit annoying if you need to cut the strips to length. Of course, if your project is indoors and you don’t need any waterproofing, that is available as well.
The last choice you need to make is the specific chip that will drive your individually addressable LEDS. This chip is where each of these strips get their name and I’ll specifically be working with these 7 microcontroller types today. These LED strips all work with the same basic idea: data is sent down a single wire where it is read by a microcontroller chip which produces pulse width modulated signal that controls the brightness of each channel of an LED chip that contains a red segment, a green segment and a blue segment. Each segment can have 256 levels of brightness which results in 256 to the third power different colors that can be produced. If you see the term 5050 LED on product pages that just refers to the size of the LED chip, not necessarily the type of LED or any of the other components that may be integrated into it.
As for their power draw specifications, there are hundreds of forum posts linking to the LED datasheets and giving generalized rules for calculating current draw, but I couldn’t find much in the way of testing and comparison. So for this video I tested each type of LED strip by first measuring the current draw of strip with all the LEDs off, then the current draw of a single channel of one pixel, all channels of one pixel, a single channel on all pixels, and the overall current draw for the entire strip with every channel at maximum brightness. I also evaluated the loss of color accuracy due to voltage drop for each strip type.
Starting with the oldest model of LEDs that I tested, the WS2811, these strips are available in both 5 volt and 12 volt varieties. The advantage of a 5V strip is that projects using individually addressable LEDS are generally being run by microcontrollers that also use 5 volts, so using a 5V LED strip means you’ll only need a single power supply for your whole project. A 12V strip shines when you want to power these strips over larger distances.
Voltage drop is the term used to describe the difference in voltage at the beginning of a wire run and the end of that run. Voltage drop is a result of the actual wire, or in our case the copper traces on the LED strip contributing a significant amount of electrical resistance. If you output 5 volts and have 2.5 volts of drop after 30 feet that means we’ve had a 50% voltage drop and our strip is only going to be receiving 2.5 volts total, which isn’t enough to accurately drive these LEDs and produce the correct colors. If you instead start with 12 volts and have that same 2.5 volt drop, it only represents a 21% drop in voltage and the remaining 9 and a half volts will produce significantly more accurate colors than the 5 volt strip.
You can see the difference in color accuracy between the 12V WS2811 and the 5V WS2812B strip here when outputting white at 100% brightness. The fix for this is to apply power at both ends of the LED strip in a method called “power injection”, but in cases where frequent power injection is not possible 12V strips like the WS2811 should be favored. Typically WS2811 strips are the least expensive, but they do come with a few downsides. Most importantly, the cheapest versions of the WS2811 are not truly individually addressable. Typically in WS2811 strips a single microcontroller actually powers 3 LED pixels, or a total of 9 channels. This means that it isn’t truly possible to control each LED, but instead each pixel in your code represents a group of 3 LED chips. There are versions that have one 2811 chip per LED chip, but there is typically not any cost savings if using that variety.
When questions are asked about the power consumption of these chips the standard answer is that each segment of the LED chip requires 20 milliamps, and therefore 3 full RGB led chips outputting full white should have a current draw of 180 milliamps, but I’m almost positive these estimations were made using 5V pixels, and are wildly inaccurate for 12V strips. A better way to compare 12V and 5V strips is to use wattage since Watts = Amps x Volts.
In my tests, the WS2811 had one of the highest power usages when no LEDS were lit, drawing 1.27 watts to power the microcontrollers, but full brightness white on 3 LED chips only increased the baseline draw by 46 milliamps or .552 watts and lighting the entire strip with pure white pulled a total of 1.64 amps, 19.68 watts or at full brightness, which is significantly less than the 9 amps or 108 watts you’d estimate using the 20 milliamp per channel calculation.
You can also see that color accuracy is really consistent through the entire 5 meter strip, even without power injection, which as I mentioned before is the huge advantage of a 12V strip vs a 5V strip.
As for use case, the WS2811 strips should be considered when cost is an important factor or when power injection can’t be easily accomplished, but being able to control each pixel individually is not necessary.
Next up on this list is by far the most common type of LED strip, the WS2812B, which unlike the WS2811 has the controller chip embedded directly in the led package. The 2812B only comes in the 5V variety so it will need more power injection than a WS2811 12V strip, but the smaller components mean less materials are required to produce the strip and theoretically costs should be lower for strips where each LED can be controlled individually.
The WS2812B also has slightly different chip timing, but not significant enough that WS2811 programs won’t also drive WS2812B strips.
In my tests the WS2812B consumed half as much power as the WS2811 when no LEDs were lit, but as expected, the power consumption for the LEDS was almost exactly the same at 60 milliwatts per channel, and the full strip consumed 13.6 watts, about 6 watts less than the WS2811.
I also have a new variety of the WS2812B chip called the “ECO”, which is supposed to have less power consumption, possibly for using with a battery. In my tests the ECO version did have the lowest baseline power consumption needing only 56 milliwatts with no LEDs lit, but with the LEDS lit the difference was less apparent having a difference of only 40 milliwatts with all the LEDs on full brightness white.
Being 5V strips, both types struggled to reproduce accurate colors near the end of the strip due to voltage drop, with the ECO version performing slightly worse than the non-eco version.
In battery powered situations using relatively few LEDS that are normally off the ECO version may be worth checking out in order to increase battery. In general I use WS2812B strips as “general purpose” LED strips. They are relatively cheap, come in a huge variety of pixel densities, waterproofing types, and strip colors and they are compatible with basically every library that is meant for individually addressable LEDs.
If I lost you when I started talking about chip timing and libraries, you may need a quick crash course on how these LEDs are actually controlled. Since all of the data for these strips is sent over a single wire there will be very short pulses of “on” meaning at least 70% of the Vcc voltage, or 3.5V in a 5V system, and low, which should be less than 30% of the Vcc voltage, so less than 1.5 volts.
These chips are programmed to expect a new bit of information, meaning an “on” or “off” signal at set intervals. In order to send enough bits to get each pixel 24 bits of color data multiple times a second the chips are expecting that data to come through very quickly. For a WS2812B chip the color is changed by sending “off” for 50 microseconds, and then either sending an “on” signal by pulsing the voltage high for at least 700 nano seconds, or an “off” signal by pulsing high for 300 nanoseconds and then off for around 800 nanoseconds. If you don’t send the data during those timings your LEDs will not work as expected, so the main job of the individually addressable LED libraries is to allow you to control your LEDs using simple commands rather than meticulously coordinating the timing of your digitalWrite functions, but issues can arise when you are trying to do other things in your program and you end up maxing out the capabilities of your microcontroller and missing your timings.
In strips that contain the SK9822 chip, timing is handled a bit differently. Instead of having hard coded timings that your microcontroller needs to adhere to, it includes another wire called the “clock pin”, this clock pin dictates the rate of data transfer between the microcontroller and the chip. It not only means that the microcontroller can be pushed to its maximum potential by speeding up the rate of data transfer more than the WS2811 or WS2812B would allow, but it also allows the data transfer to be slowed down if frames per second are not important and the microcontroller has a significantly secondary work load.
The SK9822 chips had the highest idle power consumption of any of the 5V strips, but had comparable power consumption numbers for lighting the entire strip. One important thing to not was the significantly worse color accuracy due to voltage drop in these strips. When injecting power into WS2812B strips it is generally enough to power each end of a 5m strip, but in SK9822 strips I would suggest injecting power every 2 and a half meters to maintain color accuracy if you’ll be running them at full brightness.
The SK9822 cost a little more than 2812B and require an additional conductor in the wiring for the clock pin, but in situations where errors in animation are unacceptable and data accuracy is the most important consideration the SK9822 strips are well worth the increase in price.
The other downfall to serial communication is that since all the data is being passed over a single wire any break in that chain will cause the entire strip after the break to fail. The WS2813 strips were made to address this downfall. On the WS2813 strip there are two different data channels labelled DI and BI, meaning data in and backup in. This allows the strip to continue functioning in the event of a dead pixel because the BI channel will act as a passthrough. As long as two consecutive LEDs don’t fail, the rest of the strip should continue to function, this makes the WS2813 strips ideal for situations where the strips will not be accessible for repair, like if they were encased in epoxy.
Unfortunately, like the SK9822 the WS2813 strips performed very poorly in terms of color accuracy exhibiting noticeable yellowing after about 45 pixels on full brightness. The power consumption of the strip was predictably less given the increased internal resistance requiring only 12.15 watts for the entire strip when lit at full brightness. I’d expect his number to go up significantly with more power injection points.
If you want a backup data channel without the voltage drop issues, the WS2815 may be the answer. The WS2815 is a 12V strip, and as you can see, there is no significant depreciation in color rendering thoughout the entire strip, even at full brightness. The tradeoff is price and power consumption. You can see the really odd behavior of the WS2815 when it comes to current draw. Basically, a single pixel draws the exact same amount of current at 50% red as it does at 50% white, even though the white consists of red, green, and blue. An awesome commenter in another one of my videos explained why, but the cliffsnotes is that each channel is powered in series instead of parallel, and if only a single channel is wanted the other two are shorted out by a transistor resistor combo to keep the current constant.
The WS2815 has both the highest idle power consumption at 3.52 watts, and the highest full white power consumption at 20.18 watts per 150 leds. That being said they are extremely reliable due to the backup channel and are great at reproducing correct colors despite voltage drop in the strip.
WS2815’s seem pretty great, but I’ve saved my favorite led variety for last. The SK6812 is very similar to the WS2812B in that it’s 5 volt, has an embedded microcontroller, and lacks a backup data channel, but the SK6812 has the ability to control one additional channel of LEDs that is used for controlling a large white segment on the 5050 LED package. Normally RGB LED strips produce white by tuning the red, green, and blue channels to the same percentage, which produces a slightly blue or purple light. By having a dedicated white channel on the LED you can produce familiar true white light in either the warm white, neutral white, or cool white variety. It’s true that it does make the programming a little more complicated, but the results or well worth it.
Any time I’m using LED strips in place of a normal lightbulb I always opt for the RGBW variety. For applications like outdoor holiday LEDs it’s much less important since I want those to make crazy patters, but for adding subtle backlighting while still being able to get fancy from time to time the SK6812 RGBW strips are absolutely the best.
In my tests the SK6812 had a moderately high power consumption at idle of .83 watts, and used 14.4 watts when fully lit with a significant amount of yellowing around LED number 90, but that’s not really a valid test since to produce white light you would only turn on the white channel, not all the channels. And while the white channel draws more than any other single channel, lighting the whole strip with white results in only 10 watts of power draw, the lowest white power consumption of any of the strips that I tested with the added benefit of near perfect color accuracy without power injection.
So as you can see there’s not really a “one size fits all LED strip”, but instead they all have their strengths and weaknesses. If I was forced to pick a single LED strip type to use in all my projects I would absolutely choose the SK6812 RGBW, either in the warm white or cool white variety depending on my use case. Maybe there will be a 12V RGBW strip with backup data in the future, but for now the SK6812 is my go to strip, if I’m overlooking some other amazing variety that I need to check out, or if I got something in this video wrong, please let me know down in the comments.
Thank you to all of my awesome patrons over at patreon for your continued support of my channel. If you’d like to support my channel please check out the links in the description. If you enjoyed this video, please consider subscribing, and as always, thanks for watching the hookup.