How to Control a 12V RGB LED Strip with WLED and PWM on ESP8266 or ESP32

In this video, I show how to control a 12 V RGB LED strip using PWM with WLED running on an ESP8266 or ESP32. The demonstrations are with the open source hardware development board ANAVI Light Controller. You will learn how to connect the strip, configure the GPIO pins, and set up WLED to drive an analog RGB strip using PWM instead of addressable LEDs. This setup allows you to use the powerful WLED interface for simple 12 V RGB lighting projects. Using a USB-to-UART debug dongle, I connected the ANAVI Light Controller to my ThinkPad laptop. On my computer, I opened the Google Chrome web browser and navigated to WLED Web Installer at https://install.wled.me/ . As an open-source enthusiast, I am running a Ubuntu 24.04 Linux distribution, but the same process works from any operating system. To enter download mode on the ANAVI Light Controller and its ESP8266, I pressed and held the reset button labeled SW1 on the PCB while plugging in the 12 V power supply. Next, I clicked Install on the web page. Chrome prompted me to select the serial communication port. After selecting the correct port, the WLED installation started successfully. The installer first erased all existing data on the ESP8266 and then flashed the new firmware. Once the installation finished, I manually rebooted the board by unplugging and plugging the 12 V power supply back in. After the reboot, WLED started on the ANAVI Light Controller. In Chrome, I was prompted to configure my Wi-Fi network. I entered my Wi-Fi password so that WLED could automatically connect to my network. If everything completes successfully, the installer displays a pop-up with an option to visit the device. This link opens the web interface served by WLED on the ANAVI Light Controller. 🔗 Useful Links === https://install.wled.me/ https://www.crowdsupply.com/anavi-tec... https://github.com/AnaviTechnology/an... 📚 Chapters === 0:00 Intro 1:25 LED Strips 3:05 Install WLED 5:44 Configure WLED 7:50 Wiring 10:16 Home Assistant 12:16 Conclusions