WS2812b addressable RGB LEDs are devices widely used in lighting projects. They are found in the format of LED matrices and strips.

LED strips, for example, are widely used in decorative lighting, luminaire construction and many other applications.

And to ensure the correct color, it is necessary to use a controller to control the color, luminous intensity and lighting effects of the LEDs.

Most WS2812B LED controllers use a remote control. However, our goal is to develop a controller that can receive these control commands over WiFi with a cell phone application.

Therefore, in this article we will develop a controller with ESP8266 along with WLED firmware. This firmware consists of a cell phone application and the user can register several controllers in the same application. This makes the system simple and makes it easier to control multiple lighting points from a single location.

Next, we will present the electronic schematic of the project and the explanation of each block of the electronic circuit.

Circuit Design of the WS2812B LED Controller

Below we present the electronic schematic of the controller. It consists of 6 circuit blocks.

The circuit for this controller is quite simple. We will start the explanation from the power connectors and LEDs circuit.

Power Circuit Connectors and LEDs

The project circuit is powered with +5V. This voltage will be used to power the LED circuit and used in the voltage regulator input circuit for the ESP8266.

After the connector circuit, we have the voltage regulator circuit.

Regulator Circuit Voltage +3V3

The AMS1117 voltage regulator circuit has the purpose of regulating the voltage to supply the ESP8266 circuit with +3V3. The electronic schematic is presented below.

From the voltage regulator circuit, we can power the ESP8266 circuit.

ESP8266 Circuit

This circuit is composed of the basic ESP8266 configuration circuit, the buttons to configure the ESP8266 in programming mode and the programming pins.

The first circuit has the basic operating configuration of the ESP8266. The Reset and Flash buttons are responsible for putting the ESP8266 into programming mode. To perform the code transfer, you must use a USB-TLL converter and connect it to pins +3V3, TX, RX, and GND, as shown in the programming pin circuit.

After creating the electronic schematic, the following layout of this printed circuit board was obtained. From this circuit, it is possible to control the WS2812B LEDs.

There are two ways to control them with the ESP8266. You can use WLED firmware or WS2812FX library (Arduino IDE).

In this project we will use the WLED library. It consists of a firmware and an application. Through the app you can register several devices on your WiFi network and control them through your cell phone.

The WLED application for controlling addressable RGB LEDs

WLED is a system with several features that allows us to control different types of addressable RGB LEDs through a web server with ESP8266/ESP32. Among these LEDs, we have the WS2812B, which will be the LEDs that we will control in our application.

To use this system, you need to create lines of code to control the LEDs, as there is already a firmware ready to be installed and connect your driver to the WiFi network through an application or web page made available by the community.

The control page can be accessed via cell phone or computer.

Now let's move on to the stage of installing the WLED firmware on the controller.

How to install WLED firmware on ESP8266?

The WLED installation process is very simple. You need to access the website to start the process of transfer the firmware to your electronic board. After accessing the website, put your ESP8266 in programming mode using the Flash and Reset buttons and, after that, click Install to start the firmware transfer.

Now you must configure your WiFi network data in the controller settings. This...

Read more »