Use a Raspberry Pi and a smartphone (or laptop) to open, close and monitor a garage door. Make opening and closing the door secure by using self-signed certificates installed on family members' mobile phones. If the door is open when it shouldn't be, then send a text message (SMS) to a cell phone.

The goals of this project are to:

  • Make my first instructable - I didn't plan on posting this, but I have received many requests
  • Open a garage door with a standard remote
  • Open a garage door with the wall mounted doorbell garage opener
  • Open a garage door with a SmartPhone
  • Monitor the status of the garage door remotely via a cell phone or laptop (is it open or closed?)
  • Send a text message to my cell phone if the door is open when it should be closed
  • Keep the garage door secure (e.g., on power loss, the door should not open)
  • Do not allow anyone else on the net to open the door (two way self-signed SSL certificate)
  • Use WiFi instead of a wired connection
  • Use a Raspberry Pi

The basis for this Garage Door Opener implementation was derived from the Instructable: Raspberry Pi Garage Door Opener by quartarian. However, I could not order a model A Raspberry Pi used by quartarian. So, instead I used a model B+ Raspberry Pi. The B+ is a newer version and has more USB ports, which simplifies some of the steps.

Changing from an A to a B+ platform caused several changes from quartarian’s original instructions.

Note: Since the original post, I moved this from a B+ to a Raspberry Pi 2 model B. No change in the instructions are required.

I used a MacBook to communicate with the Raspberry Pi, but any computer can be used.

There is no compelling reason to build this device, but it was fun. It is more cost effective to buy one. A similar device can be purchased for about $130 USD.

  • Lift master 828LM
  • Chamberlain MyQ $129
  • GoGo Gate $179
  • Craftsman $100


    • Text enclosed in spades, like this ♣replace-this♣ should be replaced with an actual value
    • Arduino underlined blue text is a link. In this case, it is a link to an arduino version of a garage door opener.
    • I’ve attempted to credit every source used. My apologies for any omissions. Most of this document is based on other people’s work.
    • $ indicates a command executed in a terminal window on the MacBook and usually is being executed on the Raspberry Pi

    Step 1: Gather Parts

    Buy or gather parts and tools (prices in USD).

    • Raspberry Pi 2 Model B Element14 $35
    • Panda 300n WiFi Adapter Amazon $16.99
    • 5.2V 2.1A USB Power Adapter from Amazon $5.99
    • Micro USB to USB cable 3ft from Amazon $4.69
    • FTDI TTL-232R-RPI Serial to USB cable from Mouser $15
    • Case from Amazon $6.99
    • SanDisk Ultra 16 GB microSDHC Class 10 with Adapter (SDSQUAN-016G-G4A) from Amazon $8.99
    • SunFounder 2 Channel 5V Relay Shield Module for Arduino UNO 2560 1280 ARM PIC AVR STM32 Raspberry Pi - $6.79
    • 3x Female-Female Jumper Wires. Bought at Fry’s for $4.95.
    • [optional] Dynamic DNS $25 per year for 30 names (dyn.com)
    • 1-Gang 18 cu. in. Old Work Heavy Wall Switch and Outlet Box, $3.12
    • Ultra Pro Single Brush White Wall Plate, $7.88
    • SECO-LARM SM 226L, Garage Door Sensor, price varies widely, $9.99 on Amazon with free shipping
    • 50ft of Solid thermostat wire, Home Depot or Lowe's, ~$20

    My Total: $171.38

    I had the following parts, tools and services:

    • CAT5 Ethernet cable
    • Small gauge wire, 6 ft long
    • Phillips head screwdriver
    • Needle nose pliers
    • Box cutters
    • Jewelers flathead screw driver, needed to loosen screws on relay
    • MacBook (a PC can be used)
    • AT&T U-verse
    <p>is this using arduino or just a Pi</p>
    <p>Just raspberry pi.</p>
    first off I'm a certified garage door installer. your idea is a rip off. it's not creative at all. all you need is a opener with myQ. a gateway. and a smart phone. less than 5 minutes to set up and install. that's how it's done..
    <p>Chamberlain announced the release of MyQ on 05NOV2013 in a press release. released http://www.chamberlain.com/chamberlain/media/library/pdf/MyQ-Garage-Press-Release_FINAL.pdf. An early garage door opener was built using an Arduino in 31AUG2009 http://forum.arduino.cc/index.php?topic=7586.0.</p>
    <p>The difference is that your just the guy who plugs them in, he built the device (also using sources from others). So its kinda neat if you already have a PI and dont want to spend $100..</p>
    <p>Wow, that seemed to be a rude comment. Sorry if you feel that one expressing their talent and desire to fully integrate self-generated technology is offensive to you. </p><p>Hope you enjoy installing the myQ product....I ended up giving up on them after my certified garage door installer had to replace 3 of them. </p>
    Sometimes it's not the product, but the process that counts. A knife is fairly simple and reproducible, yet the methods can be quite varied and elegant in their implementation.
    <p>I agree, the idea is not original. I used quartarian's instructable for many of the steps. Technically, MyQ takes a different, perhaps better, approach, </p><p>I tried to cite as many sources as possible. In the instructable, I write it may not be worth building and provide several commercial products, including MyQ. </p><p>My objectives were to: 1) learn how to use raspberry pi and I thought this would be a good learning tool, and 2) build something my family and I would use on a regular basis. Both objectives were met. </p><p>In addition, the garage door opener fits into a larger plan of automating my entire home using wi-fi based devices with no proprietary controllers or gateways. I am almost done integrating my home security system into a raspberry pi. I am sure certified security system installers will hate that one too.</p>
    <p>How do you handle the relays from opening the doors when the pi loses power in a power blip (or randomly shuts down)? Mine works great, but I fear actually using it unless I get a UPS to ensure the PI always has power... otherwise the relay will switch and toggle the doors open! (and yes my pin is initialized at boot via init.d, but this doesnt offer any correction for the door opening in the event of a power blip.)</p>
    <p>Before this project, I only had a &quot;doorbell&quot; button in the garage. If I pushed the button, the circuit closed and the door would open (or close). The relay works in a similar way. When the pi sends the gpio trigger, it is like pushing the doorbell button. The circuit closes and the door goes up or down.</p><p>To send the gpio trigger to the relay, the pi must have power to &quot;close&quot; the circuit. A power blip shouldn't open or close the door. An easy test would be to wire it all up and pull the plug on the pi. Nothing should happen.</p><p>The most annoying thing about a power blip is the pi takes a minute or so to restart and establish wifi communications, and the web app won't open or close the door until it is all working.</p><p>For a long time, I had the pi plugged into a normal wall outlet. During an electrical storm, the house had a power surge and the electricity went off. The pi must have gotten fried. After power was restored, I could never get the board to work again. I replaced the old pi with a new one, and I replaced the wall outlet with a Leviton wall-outlet &amp; surge protector that I got at Home Depot. I also replaced the power supply that came in the kit with a higher performing supply.</p>
    Ohh man! I see what I am doing wrong.<br><br>I have the pi initialize the GPIO to low and send a high to toggle my relay. The problem I had was that if the pi shut down it would default to sen 3v to the relay while off and thus toggle my door.<br><br>I will set it the pin to always be high and use a low to toggle the door instead. So that if my pi ever loses power the door wont open. <br><br>Jeeze I feel so dumb. Thank you
    <p>A very ambitious garage door opener! Thank you for sharing your build with us. I hope we see more from you in the future!</p>

    About This Instructable




    More by jeff.cartwright.562:Install and setup shinken Network Monitor on Raspberry Pi Improve AT&T U-Verse Download Speed from 18Mbps to 22Mbps Accordion Menu  
    Add instructable to: