Items used in this project
There are plenty of garage door openers in the web these days and each one is special in its own way.
So what is special about this one? The following, I hope:
- NFC tags: scan an NFC tag to open your garage door
- voice: use Google Now voice commands to control your garage door
- push notifications: get the status of the garage door instantly as it changes (or request its status at any time)
You will find step-by-step instructions in the Code section below.Garage Commander in action
Ever since we needed a new remote for our garage at home, I resisted the temptation of buying a "classic" remote.
This time I wanted an Internet of Things remote to open and close my garage door from my phone, and I wanted to build it myself. Not only to brag about it with my friends and family, but to learn about this Internet of Things crazy movement.
Ahhh the Internet of Things! it gives you the power to connect an enormous amount of devices to the internet to log their data and control them from wherever you want.
So in this project that thing "wanting" to get connected to the internet becomes the garage door. Here we go!
Since I was new to this Particle Photon (at the time Spark Core), I wanted to give myself an easy challenge to pick up steam, so I hacked something quickly with a maker kit I had around.
In a breadboard, I mounted the Photon, a relay and a led. I soldered two wires right behind the micro push button on the wall button to open the garage and connected the relay there.
At the time, I used this Android App to send a rest request to the Particle Cloud to activate the relay. I loaded the Particle with code to close the relay for one second and then release it, simulating in this way a person hitting the button on the wall.
The garage door would open and close whenever I wanted!The first prototype
This first prototype was very good to show me that I could build what I wanted, but it had few limitations.
First, if I was away and by mistake I hit the app and sent the rest request, I had no clue if the door was now open or close. My bragging rights were very limited when friends were not at my place!
I also didn't know if the request worked or not, if the door started to move after I pressed the send request in my phone, unless I was in front of the house.
In other words, it was missing the user feedback...
With a switch that gets activated when the door is completely close or open, one is able to know the status of the garage door remotely.
So this is what my project needed. I chose and installed two reed switches and wired them to my project board. You could also choose to install another type of switch, or even a microswitch.
Now, I needed that information on my phone, so what could be better than using Pushbullet.
Note to iOS users: you can control this project with your iPhone or Ipad, by using the DO button or the blynk app.
Since I also wanted to learn about Android programming, I embarked in creating my very first Android app. The app is not finished nor polished, but it already allowed me to learn the basics and made me happy in that sense.My very first Android app!
Find the source code of the app in the software section below.
I wanted to have in my project something similar to that little keypad that some garage doors have on the side.
So I glued an NFC tag on the side of the garage door, where I would tap my phone to scan it and the door would open.
If you know similar apps in the iOS world, please leave a comment below.Scan an NFC tag and open your garage
Find instructions on how to implement this in the software section below. I now wrote a complete article about it here.
Another thing that I wanted to have in my project was the possibility of opening and closing the garage door with my voice.
This would allow me to drive home and one block away just say "Ok Google" and "Open Garage", effectively opening the garage door without me touching my phone.
Again, If you know similar apps in the iOS world, please leave a comment below.Say "Ok Google" and then "open garage" to open your garage
Find instructions on how to do this in the software section below. You can also refer to the article I posted here.
We will use the same mechanism for push notifications as the one described in this project. Please configure pushbullet and the webhook exactly as shown there.
I have also now created an article about pushbullet notifications, and you can find it here.
We can reuse exactly the same webhook for pushing different notifications to our devices from different projects. This is great, since there is a max of 20 webhooks we can create in the particle cloud.Push notifications in all your devices thanks to Pushbullet and the Particle Cloud
Reed switches: I have found these little beasts to require precise alignment to work properly. Yes, they have to be close - I think you can leave a gap of max 5mm between them - but not only that, you have to really align them horizontally! Other people have replaced the magnet side of the reed switch with a Super Neodymium Disc Magnet, which I think is a great idea.
NFC tags: pay attention to where you glue these things. Don't put them over metallic surfaces, for instance, since your phone won't be able to scan them.
So, did you build something similar? are you planning to? any questions?
Feel free to leave me a note below,
Psst: please find my other projects here.
If you require professional help with your projects, don't hesitate to write me a line about your needs at firstname.lastname@example.org. Thank you!