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.
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.
- 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
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).
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.
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 😊
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 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.
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.
Enjoy your safe Bluetooth LE remote control!
Did you replicate this project? Share it!I made one
Love this project? Think it could be improved? Tell us what you think!