Introduction: XLights and WLED-controllable LED Lights

For a school project, I decided to create a grid of individually addressable LED lights. I integrated them with both xLights and WLED so I could control their color and do a bunch of cool designs. I learned a lot from Mr. Bauer, my engineering teacher, while doing this project, such as how to solder and wire microcontrollers. Here's how I did it:

Supplies

For this project, you require the following hardware:

  • Two 5 volt, 1 amp power adapters.
  • A ESP8266 Node MCU (here's the one I used)
  • String of 50 individually addressable LED lights (here's the one I used)
  • Plenty of female-to-male breadboard jumper wires.
  • A soldering iron
  • A computer
  • A USB B to USB A adapter.

You also need the following software:

Step 1: Soldering

The first step is to solder one of the power supplies to the lights, and solder the other power supply to jumper cables attached to the NodeMCU.

To begin, start by cutting off the barrel end of each power supply. Then, use a potentiometer to figure out the positive and negative wire (typically the wire with writing on it is the negative wire).

Next, strip the power wires on the female end of the lights, and solder the wires to the positive and negative wires of one of the power supplies (refer to the second image).

After that, attach a black and red female-to-male jumper wire to the VIN and GND pins of the NodeMCU respectively. (images are attached). Cut off the male end of the jumper wires, strip the wires, and solder them to the positive and negative wires of the other power supply. It should look like the first image before the wires are connected to the NodeMCU.

That's it! The next step is to configure the NodeMCU.

Step 2: Configure the NodeMCU

The second step is to get the right software onto the NodeMCU microcontroller. The software that needs to be loaded is WLED, and it allows the board to send signals to the lights to change colors.

First, download an ESP8266 flasher onto your computer. Refer to the "Supplies" section for the link. Be sure to choose the right version for your machine.

Next, download the WLED file onto your computer. Once again, refer to the "Supplies" section for the link. When you click on the link, download the ESP8266 file in the "Assets" section (refer to the first image).

Next, connect the NodeMCU to your computer using the USB B to USB A adapter.

After that, open up the flasher on your computer. It should look the second image at the top of this section (keep in mind I'm on Mac).

If the NodeMCU doesn't show up in the "Serial Port" tab, you may need to download additional drivers. Refer to the following link: https://cityos-air.readme.io/docs/1-usb-drivers-for-nodemcu-v10.

Click on the "Browse" button, select the WLED file from your computer, and click "Flash ESP." The console should show a bunch of information and data. Wait patiently until the console says that the flash has been finished.

That's it! The next step is to configure the WLED software.

Step 3: Configure the WLED Software

The third step is the make sure the WLED software can connect to the Internet, and control the lights. This will require some configuration.

First, connect to the WLED-AP WiFi on your machine. The default password is "wled1234." Once you connect, you will automatically be taken to the WLED UI.

From there, go to the "Wifi Settings" tab (refer to the first image), and configure the network to your home network. You can also set the mDNS address to something more rememberable, but that's optional (note down the mDNS address).

From there, you're done! The next step is to wire the NodeMCU up to the lights.

Step 4: Wire It Up and Enjoy!

The last step is to connect a jumper wire from the D4 pin on the NodeMCU to the middle part of the female end of the light (refer to the first image). From there, plug in all the power supplies, and the lights should light up!

To change the patterns, search up the mDNS address mentioned earlier (make sure your device is connected to the same network as the same network the NodeMCU is connected to). Refer to this video if you want to know how to use the UI.

Well, that's it for the WLED portion of the project. Next, we will be adding this to xLights.