WiFi power switch using the ESP8266
Alternatives To Esp_wifiswitch
Project NameStarsDownloadsRepos Using ThisPackages Using ThisMost Recent CommitTotal ReleasesLatest ReleaseOpen IssuesLicenseLanguage
9 days ago3gpl-2.0C++
Stream switch games to your PC via USB or network
Sonoff Homekit613
2 years ago6mitC
Make your Sonoff Switch compatible with Apple Homekit! 🎉
5 years ago21mitC++
Firmware for ESP8266 based itead Sonoff switches for use with HomeAssistant / mqtt
7 months ago1mitC#
A Windows desktop tool to enable user to actively control Wi-Fi connections
23 days agomitC
A little ESP32 Spotify remote to remind you that there's a lot of music out there.
5 years ago6other
Swifitch is ESP8266 based relay board that could be used to turn any light or any wall socket into smart one!
Android Scripts92
5 years agoapache-2.0Groovy
helper scripts to setup adb wifi connection and switch developer tools
Krack Poc84
5 years agoPython
Krack POC
7 years ago6gpl-3.0KiCad
WiFi power switch using the ESP8266
Esp8266 Wifi Socket52
4 years ago1C++
Custom SW for the OBI "Wifi Stecker Schuko"
Alternatives To Esp_wifiswitch
Select To Compare

Alternative Project Comparisons

ESP WiFiSwitch

General info

This sketch is for a WiFi enabled wall light switch with focus to reliable pushbutton switch. In the beginning or (if no WiFi connection) it is running a web server to configure WiFI (and MQTT if desired). Each second start up switch will load into OTA mode. By this you can upload a new firmware (compiled *.bin file) via web browser. The OTA mode will end after set timeout and restart into desired mode. The operation mode can be web server or MQTT to change the state of the light. The push button have to switch to ground.

Button functions

  • Normal press less than 1 sec but more than 50ms-> Switch light.
  • Restart press: 3 sec -> Restart the module.
  • Reset press: 20 sec -> Clear the settings in EEPROM

URL adresses

  • While a WiFi config is not set or can't connect:

    • http://server_ip *-> Gives a WiFi config page
  • While a WiFi config is set and in Web control mode (iotMode==0):

  • http://server_ip/gpio

  • Will display the GIPIO state and a switch form for it

  • http://server_ip/gpio?state=0

  • Will change the GPIO directly and display the above aswell

  • http://server_ip/cleareeprom

  • Will reset the WiFi setting and rest to configure mode as AP

  • While in OTA mode each second start:

    • http://server_ip *-> Gives a WiFi config page

server_ip is the IP address of the ESP8266 module, will be printed to Serial when the module is connected.

Hardware setup

Your WiFi switch should be connected like this


You can reorder the working PCB here: or get it from any where else from the KiCad design files "ElectronicDesignAutomation" folder.

Parts list


For default usage you can use the pre build firmware and flash it with NodeMcu flasher.

After fresh flash please restart the module manualy (power Off & On) otherwise software restart will not work and sometimes WiFi connect does not work.

When manually compile and flash with Arduino IDE please make sure to have this flash settings: fLashSetting

Open the modules page after entering config mode (Press button >20secs if you want to enter again) via http://server_ip there you can setup to be MQTT controled or Web controled.


For several snippets used the credit goes to:

Popular Switch Projects
Popular Wifi Projects
Popular Games Categories

Get A Weekly Email With Trending Projects For These Categories
No Spam. Unsubscribe easily at any time.