I Made an ESP32-C3 SuperMini That I Can Control From My Phone
by Ritchey Vision in Circuits > Wireless
267 Views, 1 Favorites, 0 Comments
I Made an ESP32-C3 SuperMini That I Can Control From My Phone
I wanted to see how far I could take a tiny ESP32-C3 SuperMini.
I started with a simple LED, then added a button, Wi-Fi control, and finally a way to control the light from my phone. The goal was to make a small device that could actually respond to commands from my phone.
Here’s how I built it.
Disclosure: This project is not sponsored by or affiliated with any of the brands, products, or software mentioned in this tutorial. I used these tools because they were useful for building the project.
I wanted to see how far I could take a tiny ESP32-C3 Mini.
I started with a simple LED, then added a button, Wi-Fi control, and finally a way to control the light from my phone.
Supplies
What I Used
Hardware
- ESP32-C3 SuperMini
- Breadboard
- Jumper wires
- LED
- Resistor
- Push button
- Relay module
- Larger LED/light
- USB cable
- Computer
- Smartphone
Software & Tools
- Arduino IDE
- Blynk
- Apple Shortcuts
- ESP32 board support for Arduino IDE
- A web/API connection between the ESP32 and the phone
No fancy equipment was needed. Most of the project was built and tested directly on a breadboard.
Getting the ESP32-C3 Working
I started with the simplest thing possible: getting an LED to turn on and off with the ESP32-C3 Mini.
After connecting the board to my computer, I programmed it through the Arduino IDEand tested the basic GPIO control.
This gave me a working starting point before adding anything more complicated.
The idea was basically:
ESP32 → GPIO → LED
Once that worked, I knew the board was ready for the next step.
Adding a Physical Button
Next, I wanted to control the LED without changing the code every time.
So I added a push button to the breadboard.
Now I could press the button and have the ESP32 detect the input and change the LED state.
This was a small step, but it made the project feel much more like an actual device.
Press button → ESP32 detects it → LED changes
Giving the ESP32 Wi-Fi
This is where things started getting interesting.
The ESP32-C3 Mini has built-in Wi-Fi, so I connected it to my Wi-Fi network and programmed it to receive commands over the internet.
Instead of only controlling the LED physically, I could now send a command to the ESP32.
For this part, I used Blynk to help connect the phone side of the project with the ESP32.
I also used a simple URL/API system where:
1 = turn the light ON
0 = turn the light OFF
That gave me a very simple way to send commands to the device.
Connecting It to My Phone
Once the ESP32 could receive commands, I wanted to make the process easier.
I created a Shortcut on my iPhone that sends the appropriate command to the ESP32.
So instead of opening a development app every time, I could simply run my shortcut from my phone.
The basic idea was:
Phone → Shortcut → Internet → ESP32 → Light
This was probably my favorite part because the tiny ESP32 was no longer just sitting on a breadboard doing a basic LED demo.
It was actually responding to something happening on my phone.
Controlling the Bigger Light
Finally, I connected the ESP32 to a relay and used it to control a larger light.
The final setup stayed on the breadboard because I wanted to keep the project simple and focus on the functionality.
Now I could send a command from my phone and have the ESP32 control the light.
The complete system looked like this:
📱 Phone → Wi-Fi → ESP32-C3 Mini → Relay → 💡 Light
And that’s the whole project!
It started as a tiny ESP32-C3 Mini controlling an LED and ended with me controlling a larger light from my phone.
The best part is that this same idea can be expanded much further. You could use the ESP32 to control motors, LEDs, sensors, appliances, or build an entirely different IoT project around it.
Thanks for checking out my project!
If you build something similar, I’d love to see what you make.