ESP32 Smart LED Controller
View on GitHubThe goal of this project was simple: learn as many skills as possible related to microcontrollers and inter-device communication in preparation for larger IoT projects. Research led me to the ESP32-S3 for its processing power, memory, and, most importantly, Wi-Fi and BLE connectivity. Since I was already familiar with the Arduino framework, I also wanted to explore ESP-IDF for its superb hardware control and steeper learning curve, challenging me to truly understand the MCU.
Overview
To accomplish this goal, I decided to create a simple Flutter app to control the onboard addressable RGB LED on my ESP32-S3-DevKitC-1. The app consists of an on/off switch, color customization sliders, and two blink modes. The first, titled "Blinky", allows the user to blink the LED in a configurable millisecond interval (inspired by the common Blink project, the "Hello World" of embedded programming). The second is a Morse code encoder, where a user can type any message to be communicated by the LED in Morse code.
The app communicates with the ESP via HTTP POST requests. In the future, I plan to add BLE communication for the sake of learning the protocol.
Flutter App
ESP32-S3-DevKitC-1, equipped with a
small addressable RGB LED