Inspiration

I wanted to solve a simple but common problem: getting out of bed to turn off a light switch. Instead of replacing existing switches or changing electrical wiring, I wanted to create a low-cost device that could make traditional switches smarter.

What I Built

SwitchMate is a retrofit smart switch that physically controls an existing wall switch using a servo motor. The device connects to Wi-Fi through an ESP8266 NodeMCU and allows users to control the switch from a phone through a web interface.

The system uses a servo motor to press the switch, allowing smart control without modifying the home's electrical system.

How It Works

The ESP8266 NodeMCU hosts a local web server. When a user presses the button on the mobile web interface, the command is sent through Wi-Fi to the NodeMCU, which controls the servo motor.

The device also uses EEPROM memory to save the current switch state, allowing it to remember whether the switch was ON or OFF after a restart.

Technologies Used

  • ESP8266 NodeMCU for Wi-Fi connectivity and control
  • Arduino IDE for programming
  • SG90 servo motor for physical switch control
  • EEPROM for saving device state
  • Arduino-compatible board for stable 5V power
  • HTML/CSS web interface
  • Breadboard and jumper wires for prototyping

Challenges

The biggest challenge was creating a reliable mechanical system that could control a real wall switch. I had to precisely adjust the servo angles to ensure it could press the switch correctly without excessive force.

I also faced power and communication issues, including providing enough power for the servo motor and ensuring the ESP8266 and motor controller shared a common ground.

What I Learned

Through this project, I learned about embedded systems, IoT communication, mechanical design, and the importance of testing hardware in real-world conditions. I learned that successful hardware projects require both software and physical engineering.

Built With

Share this project:

Updates