2021-01-16
With (almost) endless combination of color and brightness, the addressable RGB LED strip is now one of the most commonly used on Arduino lighting projects. The main reason for that is the option to control not just the color and brightness, but controlling each led individually – hence the addressable. And highlighting part is that this RGB LED strip is capable of producing any color provided if you know its RGB code.
SO HOW IS THAT POSSIBLE: Each led is built from 3 color led (same as any RGB led) that is controlled by a built-in IC. The IC has its own protocol, and can receive data from the Arduino over 1 wire. Lucky for us, there are a few really good libraries that allow us to send color commands to the led without having to know the protocol itself – how lucky are we?
In this tutorial I will be covering the FastLED library. The reason for that is that this library support many different addressable LED IC, you can see the full list here. I will be demonstrating things with what is referred to as NEOPIXEL, a term marked by adafruit for the WS2182 & SK6812 LED control IC. This are the most common LED IC out there today. Note that this type of addressable LED comes in many forms, it can be an individual led on a small PCB, sets of them on Sticks, or rings or long Strips of 30/60 LED per meter, with coating for water protection and without. But in heart they are all the same, “Adafruit neopixel” variety.