The Omega_garage
simply controls your garage door and allows you to retrieve the doors state (open, or closed). Using Node.js and Express.js, a web server is hosted on the the Onion Omega. The server hosts an API that allows you to control your garage doors and request their states. This makes the Omega_garage
easy to integrate with any other pre-existing smart home control hub.
omega_garage
allows you to control your garage from anywhere in the world. You can view the status of your garage doors and control them with with an easy to use API. This project should be able to integrate with most smart home hubs (may need to implement authentication).
Possible Improvements: Use Node.js to create a web GUI that is naturally hosted along side the API.
Build instructionsStep 1
Get your Omega and Power Dock (or Expansion Dock) and run through the setup procedure here.
Step 2
Install Node.js:
opkg update opkg install nodejs
Step 3
Install Git:
opkg update opkg install git git-http
Step 4
Clone the omega_garage
repo:
git clone https://github.com/JimJamUrCode/omega_garage.git
Step 5
At this point you need to make a decision, either build your relay circuit, or buy it. I bought one for fairly cheap ($7) that had 4 relays on it. SainSmart relay. You also need to get some magnetic proximity sensors. Most of these will work.
Step 6
Setup your configuration file in the omega_garage
directory to correctly correspond with the pins that you have connected your relays and sensors to. Choose your pins wisely.
I had to run some tests to ensure that when the power went out, and then came back on, my garage door didn't try and open. Depending on the relay you make/buy, and the pin you assign it to, it may activate your garage door when the Omega is powering on. The config
file that is included uses pin 6 and 7 for relays because the Omega naturally boots with them in the output state with the pins set to active high. The magnetic relays are on pins 23 and 26 because once again the Omega boots with them set as inputs.
Step 7
Navigate to the omega_garage
directory and run:
node omega_garageServer.js
Files
Comments