How To Program LED Light Strips for Your Project With Arduino

Table of Contents

Today, we’ll look at how LED strips may be used in a variety of projects. They’re a terrific and easy component that can provide a lot of aesthetic impact to any project. LEDs provide brilliant, colored, and (in some cases) adjustable light, and you may save a lot of time and effort on the soldering table by getting them in strip form.

Despite the fact that there are various “LED kits” available on the Internet, most of them only cycle through one color at a time. They might blink once in a while if they’re lucky. Individuals who are willing to go the additional mile can find plenty of chances with a little more work and creativity. The purposes of LEDs will be explained in this post, as well as how to set them up step by step. You can create your own personalized LED strip arrangement even if you don’t know how to program!

Today, we’ll look at how LED strips may be used in a variety of projects. They’re a terrific and easy component that can provide a lot of aesthetic impact to any project. LEDs provide brilliant, colored, and (in some cases) adjustable light, and you may save a lot of time and effort on the soldering table by getting them in strip form.

I decided to work on a little project of my own to learn more about flexible lighting. My living room lighting is a problem for me, especially when viewing movies. Except for the screen, all overhead lights and lamps are turned off, and the room is completely dark. When any room light is turned on, glare occurs on the TV. As a result, I decided to place a strip of lights on the back of the screen to create a soft glow to the wall behind it as a simple lighting project.

Three Types of LED Strip Lights

pinterest progroma strip

Single Color, Non-addressable: This is your standard “dumb” LED strip. They come in a range of hues and are ideal for illuminating a fixed spot with brilliant, colorful lights. These are commonly used to produce a pleasant sunken glow behind cabinets or tables or as a source of indirect lighting for a home theater system or display case. They are reasonably priced and are available in a variety of colors and intensities.

Pinterest white strip

RGB, Non-addressable: RGB strips may display any RGB color and are capable of changing dynamically. They’re ideal for lighting projects in which you wish to be able to create a variety of moods. They’re more expensive than monochrome strips and require a microcontroller to operate. You can also utilize a pre-built kit that comes with everything you need.

Pinterest RGB strip

RGB Addressable: The most adaptable, controllable, and, in many cases, the best-LED strip. Addressable LED strips change color like the previous category, but they go a step further by including a microchip between each LED, allowing you to control them individually. They’re the most expensive, and you’ll need a microcontroller to get the most out of them. They can be employed for the most complicated lighting projects and even serve as standalone works of art. They’re also ideal for projects that require visual persistence to generate images in the air.

Pinterest sk6812

Furthermore, the addressable LED strips are the only one of the three that can be programmed. They are one-of-a-kind in that they use programming data rather than electricity to implement them.

Getting ready to program LED strips

Programming Instruments

led strip

So, what are the prerequisites for getting started? We required LED strips, but also had to figure out how to manage them. We need something to tell our LEDs what color they should be and when they should be because they can be tweaked so much. This is when Arduino comes into play. Don’t worry if you don’t know how to program; we’ll get you up and running soon. Finally, we needed to figure out how to keep everything running. All we need now is a 5V power brick to get started.

The following things are required for the programming and subsequent control of the LED strip.

  • An Arduino user interface
  • A computational machine.
  • LED strips that can be programmed
  • You’ll need a 5V power supply if you want to run a long LED strip.

 Power Supply and LED Strip Lighting


So, what sets these LEDs apart? Why put in the extra effort and time to use these lights? Unlike other LED strips, you can control and alter the color of each pixel on this one. As a result, we can develop a wide range of bespoke animations. In a number of ways, they can flash, chase, and dance.

A helpful 3-pin connector is found on most LED strips from reputable LED strip manufacturers, such as the ones listed above. If you don’t want to solder, you can connect your Arduino with a pair of jumpers and the power supply with a barrel jack. While the power and ground wires can be attached to either side of the strip, make sure the data wires are connected to the right side. It’s worth noting that connecting a small resistor to the data cable to protect the LED strip is standard procedure. This resistor, however, is already included in the above-mentioned strip.

The Fundamentals of RGB

Pinterest addressable strip

Let’s take a step back and think about how we can translate statements like “I want the LED to be green” or “I want two independent sections of the LED to transition from blue to purple” into something Arduino and the light can comprehend. Because each of our LEDs may have a different color, we’ll need a way to tell Arduino about it. Let’s examine what happens if we make the first-pixel purple and the second pixel yellow in the strip.

We can see that each LED pixel is made up of three LEDs: red, green, and blue when we zoom in. We can make practically any color we want by altering the brightness of each of these three hues. Each of the three colors can have a value ranging from 0 to 255, with 0 representing no brightness and 255 representing maximum brightness.

To receive green, red, or blue light, all you have to do is turn on a specified LED. We must experiment with the brightness of multiple LEDs if we want more complicated hues. To make our first LED purple, set the red and blue values to 255 and turn off the green. Increase the red and green values to 255 and turn off the blue to produce yellow.

The second issue we must address is that the Arduino only understands 1s and 0s, therefore we must save our data in binary format. Between 0 and 255, just 3 decimal digits are required, while 8 binary digits are required. As a result, each color is assigned 8 bits (commonly known as 1 or 0) to hold a value between 0 and 255. Because each pixel has three colors, the total number of bits in the pixel is 24. We now have a 24 (1 or 0) character string that describes the pixel’s color. We set the colors to 255 in this example, but we can lessen their brightness by scaling them down.

Let’s dive into code now that we’ve learned more about how LEDs perceive color. Instead of just copying and pasting a bunch of code and calling it every day, let’s go through it line by line and make sure we’re doing everything correctly. We’ll be able to develop more sophisticated animations with a greater understanding of how to do so.

Steps in programming

Pinterest Arduino

The first code segment is dedicated to setup. Each command line is run line by line and executed once by Arduino. Let’s have a look at what they’re up to.

The first thing we’ll do is build the FastLED library. This enables Arduino to understand the commands we’ll be issuing. The FastLED library is capable of converting decimal integers to the binary format required by Arduino.

Second, we need to tell Arduino how many LEDs we’ll be using. We’ll just use two LEDs in this example; if you want to use more, change this number.

Finally, we must inform the FastLED library about the type of light bar or light we are utilizing. We must use WS2812 because the FastLED library can work with many LEDs (although technically we are using WS2812b).

Following that, we tell Arduino which PIN we’re utilizing. This is where the data connection is connected to the Arduino. It connects to pin 2, which may be in position 3,4, or pin 5, depending on where your strip is put, as shown in the diagram.

The sixth consideration is how we organize our colors. This tells FastLED that we’d like to use green first, then red, and finally blue.

Finally, we give it the same name as the strip we produced in step 2.


A loop is the name of the second part of the code. This is because instead of running once, it traverses the line of code, then returns to the top of the loop and starts over.

First, we select the LED to be adjusted. The programming tradition of counting from 0 adds confusion. As a result, our “first” LED is 0 and our “second” LED is 1.

After that, we tell Arduino what color we want each LED to be. In this case, we increase the red and blue values on the first LED to make it purple. Then the second LED turns yellow by turning up the red and green while turning off the blue. The “RGB” function comes from the FastLED package and works its magic by taking out (255, 0, 255) and modifying everything.

Finally, we have to send the color data to our LED. So far, only our Arduino knows the color we want for our LED. When we execute the display command, we send all the data from the Arduino to the LED. assuming we’ve done everything, we should now have a purple and a yellow LED.

Finally, we provide a delay command at the end. This causes Arduino to wait 1000 milliseconds or one second before continuing to the next line. However, since we have reached the end of the loop, we go back to the top and start again. The Arduino again adjusts the values of the two LEDs and sends them to the light. The only difference this time is that the lights are already on and the color values haven’t changed, so even though they continue to update every second, we don’t see any change in the lights.


Now go ahead and turn on the lights! Reddick can handle more than 60 LEDs, but you’ll need to replace the power supply before you can start stringing light bars together.

Do you require more LEDs? Visit our MSHled Website and place an order; you’ll be able to discover whatever LED strip you require there.

Related Posts

Get in Touch with Us Now!

Do you have questions or feedback? We’d love to hear from you! Just fill out the form below, and our friendly team will respond ASAP.


    Ask For A Quick Quote

    We will contact you within 1 working day, please pay attention to the email with the suffix “”

    Sign up and get

    25% Off

    Join our mailing list to be the FIRST to know about Sales, New Products & More!

    Let's Have A chat

    Learn How We Helped 100 Top Brands Gain Success