Network-enabled Garage Door

This has been in my “to-blog-about” queue for a while, and seeing this post on the Make blog tipped it into the “must-blog-now” category. Summary: combine a wifi adapter, some sensors, and some electronics and you can monitor your garage online.

A few months ago, I had a similar idea but took a different approach. I was a bit more speed-oriented (some might say lazy) and decided to use the X10 system I already have going in the house. Maybe not as elegant or robust as making a circuit from scratch and hooking it directly into the ethernet, but


I used an X10 Powerflash module connected to a reed switch mounted on the overhead door. When the door changes state, it sends an X10 code of on or off, telling if the door was just opened or closed. The signal is received by an X10 CM11A attached to the house server, which triggers a short script that logs the time and status in a text file (again, “speed-oriented” .. as in speed of completion). Another script generates a (SSL and password protected) web page displaying the current state of the overhead door and time of last change: “Garage was opened at 8:00 am”.


Now I have webpage that tells me I left the garage door wide open when I took off for work … if only I could close it remotely! Once more, with ease-of-installation in mind, I grabbed another X10 product from Fry’s, the Universal module and wired it to the same contacts that connect to the wall-mounted door-opener button. A small addition to that web script, and a click will use the heyu program to generate the proper X10 signal, causing the relay to fire and close the door.

Side note:

Our garage door has an “electric eye” to detect an object (or person) in the path of the closing door, and will reverse and refuse to close if something’s in the way. (I believe this is required by state law.) It’s still possible to close the door on your car if the bumper and the beam are at different levels, but at least it makes it harder 😉 There’s an LED on the sensor itself, but it’s hard to see from inside the car without adjusting the side-mirror to an odd angle. So there’s a possible enhancement to my version of the garage monitor: use the signal from the original obstruction sensor to drive a second better placed LED.

[tags] house,homeautomation,x10,nerd,geek,make,diy,garage,sensors,control,remotecontrol[/tags]

Nerd Hotrod

Since I got my new car in October, I’ve been planning and scheming and pondering how I would put a computer in it. Actually, a mobile car-mounted computer has been on my mental (Want)ToDo list for a while, initially just to play mp3’s. Then I got an iPod, and the need for bogomips speed became less pressing.

With the new car, I had no tape deck .. so hacking was required to add a line-in (by way of FM modulator) to connect my external digital audio device. In the course of this hacking, I discovered it’s fairly simple to take apart the interior of a Mazda 3 (see my links for some hints). So ideas and possibilities started popping into my brain .. “I could put the GPS under this panel here .. and the wires would go here”.

Also, there’s this nifty device called the “AuxMod”: .. which provides a much cleaner line-in than a modulator. And the Advanced version adds a serial port for some nifty interfacing to the OEM head-unit — the buttons on the steering wheel could control a PC, and the PC could send text to the in-dash display ..
more ideas 🙂

Anyway, I finally started this weekend. I pulled off a few plastic panels and put USB WiFi adapter and a GPS receiver under the dash, right behind the defroster vent. The actual computer (case+board+DC-DC power supply) is still on the way, but I’m planning on sticking it right under the driver’s seat. I already have the USB and audio cables under there, ready to plug in. I also stuck an open USB port where the ashtray used to be.

Once I get the PC in there, I’ll start playing with the software.
OS will be Linux of some flavor (probably “Debian”: or “Ubuntu”: ) .
“MPD”: has worked great around the house as a headless music player, should work well in the car too.
Still looking for a GPS program that will work well with a text-only display (or no display). Some simple track logging should be pretty easy to set up though.

Other possible hardware:
bumper mounted digital camera(s) – you’d be surprised how hard it is to accurately remember the license plate number of a hit-and-run driver 😛
OBD-II interface – think /var/log/car_engine 😀

Case and PC should be arriving this week, I’ll post more after I have it installed .. *evilgrin*

Location, Location, Location

I am here … but where’s Waldo?

Earlier this week, I heard about this thing called Mologogo .. which is basically cellphone+gps+java app+internet = homemade lojack! So I bought myself a cheap-ish Motorola i285 on the Boost pay-as-you go plan. It has builtin Assisted GPS (somehow uses the cell towers to help with the GPS fix I think). The pay-as-you go lets you get on the “wireless web” for $0.20/day (cheap!). And the mologogo java app lets you upload your coordinates to the intarwebnets at regular intervals.

So, like I said .. I am here. The app on the phone also displays a small map of your location, and any friends’ locations who might be logging their own coordinates. Nifty ..

I’m thinking about plugging the phone into the lighter socket in the car and leaving it there .. out of site, but still able to catch the GPS signal. 🙂


This little perl bot keeps growing.  "Spoonbot" can now control the X10 connected lights in the house, change the music, tell me the weather, and relay messages between AIM and ICQ.  Not sure how useful all this will be, but it’s not a bad way to learn more Perl and SQL.  It might even be ready for release someday soon — if anyone’s interested  🙂