ESP8266 Garage Door Opener

I have been looking everywhere for a way to control my garage door. I would like to use just an esp8266 and a relay. Something like this I think would be ideal
WHDTS ESP8266 WiFi 5V 1 Channel Relay Delay Module IoT Smart Home Remote Control Android Mobile Phone APP Control 400m Transmission Distance

1 Like

If you don’t care about safety or meeting code requirements then yes you can use a ESP8266 and some type of momentary relay. You could even use a existing system like ST_Anything or Konnected. But to meet code you need some indication that the door is closing remotely.

The code is called UL 325 and here are the requirements:

  • The feature must be utilized only on an operator equipped with a secondary entrapment protection system such as a photoelectric sensor.
  • The feature must be activated only when the operator is installed on a sectional door.
  • The operator must be equipped with an audible and visual warning system indicating a pending motion for 5 seconds before the door starts moving.

To properly meet that get either something that has remote control built in or a GoControl GD00Z-4 which has the safety features already and the UL-325 certification.

Info on GoControl:

Snippet: “The GD00Z provides both audible and visual warnings prior to remotely-activated door movement, allowing it to meet UL 325-2010 safety requirements.”


I have a camera in there so I can see what is actually happening. All the sensors would still be in place so that if something is in the way the door will retract.

What’s interesting is that my garage door opener doesn’t meet those requirements when it is activated remotely using the RF remote fob that comes with it. Do newer openers? If not, it makes me wonder what’s safer about it remotely controlling from a car where the operator may not see the open garage is clear and definitely cannot see inside a closed garage. I have the linear zwave switch and I think the 5 second song and dance before performing the action is a bit silly.

I think it only applies when it can be done from xx miles away. They assume if you are using the remote that its relatively in eye sight while if using a app remotely you can literally be anywhere in the world.

1 Like

I guess I do have the option with the RF remote to run out of my car to investigate the blood curdling screams coming from the garage.

1 Like makes it easy to set up their unit to control a momentary switch. I use their software on an ESP8226 / nodemcu with a relay wired up to control my sprinkler.

Here’s a video showing it controlling a garage door.

If you go the route of an ESP8226, you’ll want to use a sensor of some kind to let you know if the physical status of the door is open or closed. The Linear GoControl zwave opener includes a small battery operated sensor that detects the orientation of the door.

1 Like

I noticed you are already using an ESP8266 for sprinkler control. If you want to use the same ESP and you are just using relays to turn the sprinkler zones on and off, you may want to consider instead using the code installed on the ESP8266 to run those relays plus the momentary relay for the garage door.

1 Like

I have watched all of Nate’s videos and read a lot of the information he has posted. I am on the hook for one of the since I do have an old hardwired alarm system. I just thought maybe it would be easier and less devices to purchase if I just had one of the boards that have the ESP8266 with the relay on it. I would only need one relay for the garage door. The problem with my setup is that the sprinkler wiring is in one location, and the garage door wiring is in another location, and then the alarm wiring is setup in another location. I would need to order 3 Konnected devices and then the relays to go along with the sprinkler and garage devices.

Nate’s code is available to install on your ESP without buying his hardware.

That’s how I set up my sprinkler. (I’m also running a very early version of his software on another ESP with a relay for my security system.) The Konnected hardware is great though for a turnkey approach with the software already loaded and integrated terminals for security wiring. A lot of people have challenges gathering the hardware and installing the software. Nate has made that easy peasy with his kits.

It’s a fairly new requirement, since 2015, and it’s specifically intended to apply to openers that can be used out of sight of the garage door. Almost all of the button devices that come with a garage door controller won’t have a range that’s far enough to qualify for the added warnings. But once you add a phone app, you could be sitting at the office and send the close command.

We’ve had a couple of members find the warning is very useful for situations where one family member had parked the car in such a way that The trunk lid or the back of the car was slightly sticking out of the garage while they loaded and unloaded. But with the tires still inside the garage so the detector beam was not broken.

Then the other family member Who was away from home at work got a warning message that the garage door had been open for more than 10 minutes and without bothering to check what was going on, just hit the close button.

If their garage door controller didn’t have any warnings, the garage door would just come down and damage the car. :scream:

If the beep goes off first, the person who is unloading the car may have time to run over and hit the stop button on the wall – – and the manual button will always override the automated system on a UL listed device (but not necessarily on other devices).

So it can be useful for real world situations, and in fact the lack of warnings has impacted (pun intentional) some community members here. :disappointed_relieved:

1 Like

Would I be able to load Nate’s code onto the ESP8266 that I linked in my post and control that one relay? This just seems like the easier way and then I’m not having all the extra wires and the relay on a seperate board.

I’m skeptical the software would work on that. It should work fine on a nodemcu. You could wire up a separate ‘simple’ 3v/5v relay board to the nodemcu. You may end up spending a few extra bucks on hardware rather compared to the ESP incorporated relay you showed in your original post.

Update: It looks like it may be possible to update the ESP8266 firmware with NodeMcu. I found this project that seems to outline how to do it. I have no idea if it’s actually successful. I also don’t know if Nate’s software will work once you get his code on it. It might be worth someone tinkering with it to find out. (Like you pointed out, it has a much smaller hardware footprint.)

Another Update: According to one Amazon reviewer,

the ESP8266 is acting as a wifi module on this board. There is another microcontroller on the board doing the actual relay switching. This means that the two GPIO that the ESP8266 has are NOT connected to anything, and therefore do not have any control over the relay. I imagine that with some clever soldering tricks, you can hack this board to control the relay directly from the ESP8266 (thereby bypassing the onboard MCU). That would give the user much more versatility in terms of ways to control the relay.

This suggests to me that Nate’s code will not work since it is designed to use the GPIO to switch relays on/off. (But might with some clever rewiring like the reviewer suggests.)

I think this might be a better option for me.
LinkNode R1: A-r-d-u-i-n-o-compatible WiFi relay controller

I just did this using @vseven and @ogiewon’s ST_Anything code running on an WeMos D1 Mini ESP-8266 board.

I have a 2-bay garage with separate doors and I used the WeMos and a 2-relay board to control both doors.

WeMos D1 Mini: (can find on eBay for < $5 or Aliexpress for <$4)
I used a two-relay board like this one:

It was amazingly simple - just use the “doorcontrol” type and you’re good to go.

@sdubb - it’s essentially the same thing as the board you linked, but there’s only only one relay on that board. You could still use it, just hook up a second relay if you need two.


I actually put a tutorial for this. It’s a little dated but should work. To integrate with ST, you just tell ST to make a REST call to your ESP8266. You can use this to make your own smart switches too (but don’t do this if you are not comfortable with power).

Here is the link to my tutorial.

I made my own PCB for this and I published the PCB layout and you are welcome to use it ( I think you have to order at least 10 pieces (which makes 20 relays). It’s a fun project.

Is there a way to do this and keep the physical switches operational? I have a two bay garage as well. Can you give a little more detail on your setup?

yes, no need to do anything with the original switch - just plug the relay wires into same places that the switches are connected into the back of the garage door opener. That is, there will be two wires connected to each of the terminals at the back of the garage door opener.

I have this exact setup for my garages. I am in the UK, so don’t have to worry about compliance, and my doors both have safety sensors to stop them closing if someone walks through.

I have a NodeMCU hooked up to 24v power from my garage door opener. I installed Konnected (I also use it for my existing wired alarm sensors) and have it set up with a momentary switch handler operating a 3v relay for the open/close switches on each door. I also bought some cheap wired contact sensors from Amazon and wired them to the NodeMCU to detect the open/close state.

The only downside is that the NodeMCU interferes with the existing RF sensor and stops my key fobs from working!

I had the same problem I set the 8266 RF power to a lower level and it helped.