Garage door status shown on an OLED

Garage door status shown on an OLED connected to a Spark Core via custom shield

James wanted a way to monitor the status of his garage door without having to actually look at the door. Fortunately, he has a knack with electronics and knows his way around connecting different sorts of systems together with code.

In the initial version of the project, James used an Arduino and popular CC3000 breakout board, however, issues with connectivity led him to revisit the project for a more reliable solution.

His latest iteration moves away from an Arduino board with CC3000 breakout to the Spark Core, which is a CC3000 based board with Arduino compatibility. That might sound the like the same hardware setup, but it is not.

The Spark Core in addition to the hardware, provides an IoT system to make connectivity straightforward. Adding to the complexity of this second version is an OLED display and custom code to connect the door status updates with his Pebble watch.

Remote notification of garage door position

Remote notification of garage door position

To operate it remotely and check on its status I use my Pebble Steel smartwatch. I wrote a quick application in javascript (called SmartGarage) that allows me to query the status of the door (using the RESTful services of the Sparkcore). Because the Pebble can run Javascript applications it can easily make AJAX requests when buttons are pressed.

To determine the position of the door, James uses a Reed switch with one section mounted on the garage door and the other section attached to a fixed position in the garage. When the door is up, the Reed switch is “open” and when the door is down, the switch is “closed.”

Check out James’ full project documentation, including more images, videos, and complete bill of materials on his site.