One-button garage - help

I think I have a similar garage door control as you - a key-fob that opens or closes the door with the same button. I dropped the key-fob a few months ago and damaged the plastic case. However the electronics still worked. I found the pads on the PCB where the button connects and soldered a couple of wires on them. The wires go to a relay which is operated by an ESP-01 from Node-RED via MQTT. I used Alexa so I could say... "Alexa, open/close garage door" The only thing I had to do was fix a couple of microswitches to the top and bottom positions of the door's travel - so I could detect when it was at the top or bottom. Here's a link to the thread I published about it.

garage_door
I designed a Finite State Machine (FSM) to sort out the 'funny' situations, like... asking the door to open when it is already fully open; or asking it to close when it is fully closed. FSM is also used to try to track what the door is doing. e.g. opening, closing, fully-open, fully-closed.


tms = top microswitch (when closed forces the FSM to go to state S2)
bms = bottom microswitch (when closed forces the FSM to go to state S0)
ogd = Alexa command... "operate garage door"
sgd = Alexa command... "stop garage door"

Here's part of the Dashboard (I used for testing) with an animation of the roller door.
garage_dashboard
My door takes 25-secs to open or close, so I adjusted the timing in the animation accordingly.

This link has a couple of photos of the installation with my PCBs.
https://discourse.nodered.org/t/another-set-of-pcb-designs-for-wemos-d1-mini-and-esp01-s/52770/6

4 Likes