Introduction: Bluetooth Garage Door Opener

This instruct able details how to setup your own Bluetooth controlled garage door opener.

Step 1: Parts List

For this project you will need several parts.

- The heart of the project is the Arduino Uno (my preference you can adapt your own micro controller)

- Bluetooth receiver - I used an HC-06

- 2 Mini Relay SPDT 5 Pins 5VDC 10A 120V (or 1 per door opener you are operating.)

- 2 TIP120 NPN Power Darlington Transistors (or 1 per door opener you are operating.)

- Terminal blocks

- Plastic Project Box

- Prototyping Board

- Pin Header (Optional - Used for a protoshield layout)

- 4+ strand wire (Telephone, Cat 5/5e/6, etc) I used some 4 Strand ADT wire that i had on hand.

- USB Phone charger or similar and usb cord with end cut off to supply power to Arduino and circuit.

- Android development kit

I purchased my parts from Tayda Electronics they have a decent selection and excellent prices and low shipping costs here in the U.S.

Step 2: Circuit Layout

The circuit is pretty simple please refer the to pictures. The idea is that you write to a specific pin on the Arduino and it will activate the transistor that will in turn activate the relay which operates the door. The relay may not be necessary considering we are using a power transistor anyway but better to incorporate an added layer of overload protection. I would recommend laying it out on a breadboard first and testing for proper relay operation first.


Arduino Code - Modify for your application

The INO file is included as well


int dataFromBT;
int door1 = 2; int door2 = 3;

void setup() { pinMode(door1, OUTPUT); pinMode(door2, OUTPUT); Serial.begin(9600); // start serial communication at 9600bps } void loop() { if( Serial.available() ) // if data is available to read { dataFromBT =; // read it and store it in 'val' } if( dataFromBT == '1' ) // if '1' was received { digitalWrite(door1, HIGH); // activate transistor/relay delay(2000); digitalWrite(door1, LOW); dataFromBT='0'; } else if (dataFromBT == '2' ) { digitalWrite(door2, HIGH); // activate transistor/relay delay(2000); digitalWrite(door2, LOW); dataFromBT='0'; } delay(100); }

Step 3: Application Development

The design of the application is such that you connect to the opener then open/close doors and then disconnect when done. You will need to adjust the MAC address for your Bluetooth receiver and possibly the UUID if you run into compiling errors. I have the application setup to run two door openers and labelled one for my wife and the other for me.

I have included the source code for the Main Activity and the entire application build files, feel free to modify the application as you see fit.

Step 4: Mounting and Installation

I have the project box with Arduino and other circuitry mounted directly above one of openers and then using the ADT wire/4 strand wire I was able to relocate the Bluetooth receiver outside of the project box. I ran the wire down the center tube of my opener rail and mounted the receiver directly above the garage door. This is not entirely necessary but I did run into issues with establishing a strong connection outside until I moved the receiver closer to the door.

Feel free to modify this instructable to make it your own. If you run into any issues let me know what problems you are having and I will try to expand on any of the above areas to help.

Thanks for looking and GO BUILD SOMETHING!!

Tech Contest

Participated in the
Tech Contest

Microcontroller Contest

Participated in the
Microcontroller Contest

Glovebox Gadget Challenge

Participated in the
Glovebox Gadget Challenge