No description
Find a file
2025-04-05 16:57:36 -05:00
garage_client.py initial commit 2025-04-05 16:57:36 -05:00
garage_listener.py initial commit 2025-04-05 16:57:36 -05:00
README.md initial commit 2025-04-05 16:57:36 -05:00

diy_smart_garage

House came with a chamberlin garage door opener my myq. Did not want to pay the bs monthly supscription to open my own garage - not to mention using a 3rd party server. Made a simple diy option using a pi pico 2 w and a spare garage remote. Also, added to homeassistant using the shell command addon. Additionally, I added garage position (only up/down) sensors using, again, a pico 2 w and some simple magnetic reed switches.

My first approach was to just wire the pico into the wall mounted button. If you don't know much about the newer chanberlin models - the wall switch does not simply operate as a switch when pressing the button. Instead when pressing the button it actually sends out and rf signal to the unit and utilized rolling codes. At this point the path of least resistance was to just wire the pi to the contacts of a spare garage door opener. 3.3V of the pico is wired to a contact on the positive terminal for the battery on the remote, GND on the negative contact. Pin 22 of the pico is wired to the actual contact for the button of the remote.

There are two parts - a listener and client. The garage_listener.py runs on the pico usind micropython, and the garage_client.py gets called by homeassistant using the shell_command addon.

The next part is to, in home assistant, make sure shell command add on (https://www.home-assistant.io/integrations/shell_command/) is setup. Then make a button (or automation or whatever you prefer) and set the action to "Shell Command 'shell_command.garage_client'". Now you can toggle your garage through homeassistant. Your configuration.yaml should have a similar entry

shell_command:
  toggle_garage: python3 /pyscripts/garage_client.py

Quick and ditry, and could def be imporoved, but have been runnig this for years reliably.