Picture of Raspberry Pi - SMS Garage Door Butler

Most Raspberry Pi garage door remotes had open ports, or other features I wasn't too fond of. So I created my own that contains much more security, logging of who opens the garage, video capture, garage status and more.


  • 100% secure garage door operation, with access control lists. Only authorized family members can open.
  • Ability to monitor or control garage anywhere in the world from a controlled website, with no open router ports
  • Full video capture of who's coming into the garage, uploaded securely to your website for later perusal
  • Ability to remotely stop or kill the process in case of malfunction or abuse
  • Email notifications when a family member arrives or leaves the house
  • Cheap SMS solution (3/4 a cent per text), with no GSM card purchases or any cell contracts
  • Standard Linux code, easily setup on a new Pi, and quickly portable to other platforms like BeagleBone or whatever future Linux technology arrives. Basically, I wanted the ability to restore this system on a fresh device within 30 minutes or less
Remove these adsRemove these ads by Signing Up

Step 1: Requirements

Picture of Requirements

You will need:

  • A Raspberry Pi or BeagleBone Black setup with base configuration. I use Raspbian Wheezy
  • Wireless connectivity via a wireless dongle (or just plug in a network cable)
  • A camera (compatible webcam or PiCam)
  • A relay board. I use "SainSmart 5V 2-Channel Solid State Relay Board", because it defaults to LOW instead of HIGH
  • Enough wire to access your garage door opener, or just break apart a spare remote
  • A website with hosting. You can get a small amount of space on DropBox or Google Drive and use that, or you can create a random website from a cheap hosting service like, which will provide 100gb of space for only $11 PER YEAR. You won't need to keep these files anyhow, since they're just logs.
  • If using the PiCam, a little poster putty
crsherman1 month ago


Great work by the way.

I installed the pi with the software and made modifications to the code for it to work with the PiFace board (just modified the GPIO commands).

Everything was working great for a while, but I have now started to receive the following error message when texting "Status" to the pi.

The error I receive is the following:

"Error while inserting SID record to database"

Eventually this will cause the program to bail and shut down. I then have to reboot or restart the program for it to work again.

I have made sure that the program is receiving an actual SID number from Twilio but for some reason that I cannot work through it is not able to save the record to the database.

Any thoughts on what could be causing the error?


Hello Crsherman,

Where you able to work trhu this and come out with a fix ?


scott-w1 month ago
(removed by author or community request)
wjeiv scott-w13 days ago

Did you ever figure this one out scott-w? I'm in the same boat. I had a normally-closed relay on there first and it worked fine (with the exception of all the drawbacks of the program or pi shutting down). With this sainSmart relay, the relay seems to stay closed after the relay LED shuts off. Seems like if I disconnect and reconnect the garage door switch wires, it resets. Still tinkering.

scott-w wjeiv12 days ago


Had to change to

GPIO_PIN = 18 change to matched pin hardware


wjeiv scott-w12 days ago
Thanks! I soldered in an old garage remote and had the relay control that, and it worked great.
scott-w wjeiv12 days ago

I am wired to the wall mount. Which is why I think it was not breaking the signal.

scott-w1 month ago


I think I have all the software setup correctly. However one out of the 8 sPhone I have setup does not get anything back or I see Unauthorized user tried to access system: +1xxxxxxxxxx
I have tried 3 of the others in the list at they seem to work.

WORKED: 2 Galaxy S4 mini 4.2.2, 1 iPhone 5S iOS8


Thanks for the help


scott-w scott-w1 month ago

I was able to get working on my galaxy S5. Need to type the word out completely and not use the suggestion bar to complete the word


al_carr1 month ago

Very nice, great idea. I am going try it when I get my pi back. :-( Borrowed to a friend.

About this:

Continuously scan Twilio's incoming SMS list

?? Should there be a 10-20 second sleep or something in there, seems a little intrusive/abusive.

Thanks for the instructable,


mrwilder2 months ago

Got it wired up over the weekend but it only stays running for 5-10 minutes before it errors out. Works fine otherwise...

Any idea where the twilio setting is to make it not respond with a confirmation that it received a message?

AkiraFist (author)  mrwilder2 months ago

Hey Mr. Wilder! You can remove all the "SendSMS" lines and see if that fixes. If not, comment out the email portion, remove the SQL portion, and just see when it starts working again. Once you identify the culprit, email me and I'll give you a workaround.

JessicaB32 months ago

Believe you have a typo on Step 2.

It should be

mysql-server, not


AkiraFist (author)  JessicaB32 months ago

Good catch, Jessica, thank you! I just fixed the typo.

AkiraFist (author) 2 months ago

Jliberman, yes! You can use Amazon Simple Notification services:, or any other method you choose. Your Pi has an internet connection, so whatever API you can find, or internet JSON call you can use would work great.

Adafruit has a great example page here using SNS:

jliberman3 months ago
Could You use a different Texting provider? Such as WhatsApp or another compatible with the Pi?
AkiraFist (author) 3 months ago

Hi Scumm7, yes you need wireless or wired connectivity from the Raspberry Pi to communicate with Twilio.

Scumm73 months ago

So is it still using ethernet or Wifi to send the SMS message? I assume it must be, but I thought maybe I missed something.

wilgubeast3 months ago

This is awesome. Wish it had a garage livestream. What's happening in there all day? Is it like Toy Story, but for tools?