Introduction: WiFi LED Strip Controller Based on ESP-8266

Picture of WiFi LED Strip Controller Based on ESP-8266

I have a LED strip in my room. It's cool, but there is one small problem. Sometimes you need to exercise yourself to turn it on/off or change color, so decided to improve a controller of the strip.

I used some basic electronics (for me) and stuff to create the "Mighty Box". Here is an instruction how I made this awesome thing.

Let's begin!

Step 1: How Does It Work?

Picture of How Does It Work?

The Idea is simple.

I wrote a website (photo above) that looks exactly like original remote then connected IR LED to NodeMCU and set a server on it.

When you access the website (or just site because it is only on your local network) you can click buttons. When you click one Arduino (or in this case ESP8266) sends IR code to the original controller, just like a normal remote.

And this is the whole philosophy of this thing.

Let's create it!

Step 2: What Do You Need?

Picture of What Do You Need?

Here is a small list of things I used.

  • ESP8266 - I used NodeMCU (same MCU but easier to program)
  • 12v to 5v Step-Down conventer (cheap USB car charger works really well)
  • IR diode - to send IR codes (like original remote)
  • DC Jack and DC socket (which fits between power supply from strip and controller)
  • box - I used one after bigger TicTac's
  • of course, I used RGB LED strip with controller

Step 3: Test the IR Diode and Library

Picture of Test the IR Diode and Library

I programmed everything in Arduino IDE. It needs some adaptations. I'll not write them here. You can find them on the Internet e.g here

I tested the original IR remote library (default in Arduino environment) and now I know (as I expected) that it doesn't work. I've found a version prepared for ESP8266. You have to download the library and install in Arduino IDE.

Download the IRremoteESP8266 library.

In this step also connect and test your IR diode. In a gallery, there's a schematic. Basing on it connect IR LED, then upload following Sketch and point the IR LED to the controller. The LED strip should blink (turns on and off).

Step 4: Upload Sketch

Upload following Sketch to NodeMCU.

Change SSID of your WiFi in line 26 and password in 27.

In line 29 You can change IP adress, 30 - gateway, 30 - network mask (in case you need)

No more configuration is needed.

Step 5: Make Power System!

Picture of Make Power System!

First I took apart car USB charger. I separated PCB board, found GND, 5V, 12V. Then I made "extension" cable for LED's power supply because I needed to get 12V from the power supply. I connected 12V and GND to PCB board. Then 5V and GND from charger connected to NodeMCU.

Check a schematic above ;)

Step 6: Time for Enclosure

Picture of Time for Enclosure

I searched for appropriate enclosure in local stores, but I failed. I decided to use big TicTac box.

I took off all labels by holding box above kettle. A steam melted glue and it was really easy to peel off labels.

Then I drilled one hole on the bottom of the box. It is not circular at all. It has one distortion coming to a corner of the box. I made it for power cable outcoming from the box.

Ther's also another hole. It is on the top (I mean closing) of the box. It's for IR LED's cable.

Step 7: Put Everything Together

Picture of Put Everything Together
  1. Drag DC jack through the bottom hole, from inside of a box to outside.
  2. Place DC socket (from inside of the box) in the bottom hole, then screw it using a nut.
  3. Isolate PCB board e.g. using tape.
  4. Insert NodeMCU to the box.
  5. Drag the IR's cable through the hole in closing.
  6. Add some plastic material between a wall of the box and NodeMCU, to prevent it from moving.
  7. Add some LED frame/holder into top hole to make it look better and prevent the cable from moving.

Step 8: Use It!

Picture of Use It!

Connect the power supply to "Mighty box" and point IR LED to the controller.

Type (or another in case you changed it). You can also access this device through link http://led.local

Have fun!

Show me your implementations of this project ;)


LaZerC (author)2017-07-18

after uploading the code with the first released Esp8266ir Library I didn't found any wifi network to connect please help I really want to make this project :)

TheJarOS (author)LaZerC2017-07-20

Generally no Sketch from above skan for WiFi networks. You have to edit the code to connect to WiFi. In each code there's place to put your's network details: SSID and password. If you want to skan for networks you can use Sketch from examples from IDE: Examples -> ESP8266WiFi -> WiFiSkan

Hope you manage to overcome this problem :D

ulayer (author)2017-06-22

cant control the leds ...wer do i access the remote as shown in the last step

TheJarOS (author)ulayer2017-06-23

use IP address

Remember to set correctly network settings. You can check if the device is correctly connected to WiFi through Serial Monitor

DIY Hacks and How Tos (author)2017-06-10

Clever design. I never thought about using a tic tac container as a housing for electronics projects.Good idea.

Thanks :D

"Fames artium magistra"