Open your garage door using Bluetooth LE (BLE)

 

This was one of those projects I had kept in the backlog for too long, but finally got the time and drive to finish it up.

The problem was very simple and common. In the building I share, we have a common garage door which can be open/closed through a (very expensive) radio remote control. Each apartment has a single remote control and any now or then one of them gets lost.

Since everyone nowadays owns a smartphone and Bluetooth LE (BLE) has become standard, I decided to create an appliance with a relay that can trigger the garage opening. The relay can trigger either the motor directly or (in my case) “press” the button on a radio remote control.

How to build

The system consist of 2 parts: hardware that is placed near the garage door, and an Android application installed on the smartphone. Let’s follow the next steps.

BOM (Bill Of Materials)

  • BLE Nano with respective MK20 board (for programming purposes only)
  • 3V Relay (bought on eBay)
  • Power adapter (something on the range of 3v to 12v with 1A) or 3.7V battery (e.g. 18650)
  • perforated board
  • female header socket
  • wires
  • box

I choose the BLE Nano since it is has a very small package size and punch lots of processing power thanks to the Nordic nRF51822 (an ARM Cortex-M0 SoC which includes the BLE radio).

Build the hardware

Appliance

Building is very straight forward. Start by soldering the header socket to the perforated board (comes very handy if you need to re-flash the BLE Nano later). Then wire power and the relay.

Power:

BLE Nano Power Source
VIN 3v - 12v
GND GND

Relay:

BLE Nano Relay
VDD VCC
GND GND
RTS / P0_8 IN

On your radio remote control, identify on the push button which two points need to be short circuited to trigger the radio. Solder wires to those points and connect the wires to the relay.

Fit everything inside a nice box 😊

Programming

Get the source code from https://developer.mbed.org/users/dgomes/code/Garagem/

Compile and upload it to your BLE nano using the MK20 board.

(don’t forget to fit the BLE nano back in the box 😉)

The mobile app

Screenshot

The source code to the mobile application is available on https://github.com/dgomes/garagemBLE

You will also be able to find the latest version on Google Play.

Administration

All communications between your smartphone and relay hardware are kept safe through an AES128 encrypted message with a shared password. This shared password is configured to the hardware on it’s first use, and will remain so until it loses power (will be reprogrammed next time someone accesses the garage). You can share the password with anyone you wish to grant access to the garage.

That’s it!

Enjoy your safe Bluetooth LE remote control!

written by Diogo Gomes