ESP8266 Garage Door Opener Standalone Web Server

Difficulty: Star LitStar LitStar LitStar LitStar Unlit (4/5)

ESP8266 WiFi Garage Door Opener - Render


This is a bit different then my other “Smart Home” projects since it uses an ESP8266-12F to host a standalone web server. That means you don’t need to install any of that fancy stuff like HAP-NodeJS or a MQTT Broker. Using the HC-SR04 Sonar Range Finder it can detect how far away your garage door is, or if it doesn’t detect it at all to determine whether it is open or closed. There is a Thermistor connected with a Resistor to make a voltage divider to calculate the temperature. During startup the ESP connects to your network and will get your local time if your network has internet and you set the proper timezone in the Arduino Sketch.

ESP8266 WiFi Garage Door Opener - FrontTo power it there are a couple of options. If you are using a 5V Power Supply then all you will be needing is the LM1117 3.3V Linear Voltage Regulator to step down the voltage for the ESP8266, this is the most efficient option in this build. If you don’t have a 5V Power Supply you can use anything from about 6V to 12V with the addition of the LM7805 5V Linear Regulator, my design allows for both options with a jumper to disable the 5V Regulator if required.

ESP8266 WiFi Garage Door Opener - TopESP8266 WiFi Garage Door Opener - BottomYou will need to use 5V Relay Board or something similar to connect two wires from the unit to almost any garage door opener’s wall mounted switch, or directly to the motor itself. Then simply enter the address that can be configured in the Arduino Sketch, mine was garage-home.local and the web page with the controller will show up. everything up with some and some . You will also need a variety of Electrolytic Capacitors, Ceramic Capacitors, LEDS, Resistors, Header Pins, Transistors, etc. that some people might have already on hand or salvaged from some old electronics. You can download my model from Thingiverse and I may design a board in Eagle if there is enough interest for those who either etch your own boards, or would like to just send it away to a board shop to get made by there preferred board manufacturer.

ESP8266 Garage Door Opener Web Server PageNow if everything went well you should be able to open up any web browser on your network and enter the address that was set up during programming, by default it is set to garage-home.local. A controller should show up on a webpage displaying things like run time, temperature, and door status. Here is where you also setup the threshold distance for the HC-SR04 Sonar Range Finder to calibrate the distances. Once everything is tuned all you have to do is push the large open / close button on the remote and your door should operate over WiFi.

Parts List

If you’d like to see more please drop a comment below, email me directly using or hit me up at any of my social links with your comments and suggestions.

Make a Ceramic Space Heater “Smart” with Sonoff

Difficulty: Star LitStar LitStar LitStar LitStar Unlit (4/5)

Apple Home App Temperature Control Thermostat



Sonoff Controlled Ceramic Space HeaterIf you don’t want to Make an Oil Heater “Smart” With ESP8266 how about this small ceramic space heater instead? The magic is in that little white box at the bottom of the photo. The little box is called the Sonoff and this one is capable of switching almost anything up to 10A. Sonoff also offers some other, more powerful models up to 16A. The heart of this is little guy is an ESP8266 that you may have already seen in one of my other projects. As you can tell it can bring even this ugly ceramic space heater that is a couple decades old right into the future. The Sonoff provides a safe and consumer friendly way to switch an AC or mains power supply which can be quite dangerous otherwise.

The Sonoff is  for those makers that maybe don’t have a 3D printer since right out of the box it provides a sturdy case that securely clamps the power cord of the device you are controlling. You can use it  with it’s own proprietary app but where is the fun in that? We are going to reprogram the ESP8266 inside for integration with your Siri Controlled Apple Home, or other smart home setups.

I used the Arduino IDE and a USB FTDI Programmer to install the new firmware although I have seen others use Atom to accomplish the same, but I think more are familiar with the Arduino IDE and seems easier to get going.

In the Arduino IDE under the “Tools” menu change the board to, “ESP8266 Generic” and make sure you match the following settings:

Upload Using: Serial
Flash Mode: DOUT
Flash Frequency: 40MHz
CPU Frequency: 80MHz
Flash Size: 1M (64K SPIFFS)  *5.x.x -> Flash Size: 1M (no SPIFFS)
Debug Port: Disabled
Debug Level: None
Reset Method: ck
Upload Speed: 115200
Port: Your COM port connected to Sonoff

Connect the USB FTDI Programmer to the board as follows:

Programmer Sonoff Module
3.3V – ⚠️️ Some are 5V 3.3V / VCC
TX goes to -> <- goes to RX
RX goes to -> <- goes to TX
GND goes to -> <- goes to GND

Click to Enlarge:
Sonoff_10A - Board Sonoff_10A - Board Close






The trick to get the Sonoff into programming mode is to hold down the button while you plug in the USB FTDI Programmer for two seconds, then let go. Once you have it in programming mode just upload your sketch setting up your WiFi and MQTT topic details, add a script to your MQTT Broker. Done!

If you would like to see links to my Arduino Sketch or my Script running on my MQTT Broker please drop a comment below, email me directly using or hit me up at any of my social links.