Gordon Meyer’s new book Smart Home Hacks was recently released and we’ve worked out a great deal with O’Reilly to run a chapter excerpt to let you see what you think. (O’Reilly has a few sample hacks from the book online, as well). I chatted Gordon on IM to talk about the book, home automation, and some of the reasons X10 is still a good choice for home hackers.
Read the interview and Hack 35, which explains how to automate Call Forwarding every time you leave the house, after the jump.
Joel: so what made you decide to focus on X10? Gordon: It’s really the most practical choice for today’s home automator. Gordon: I know that “home automation” and “practicality” don’t go together in some people’s minds. But… Gordon: the other home automation technologies aren’t nearly as readily-available or as inexpensive as X10. It’s been around since 1978 so its well understood, well-supported, and easy to find.
Joel: how long have *you* been working with X10?
Gordon: I’ve been a “serious” X10 user, that is actually doing things with it in my house, for about 7 years now.
Gordon: Although the book uses X10 for its examples, the basic techniques of home automation are pretty much protocol agnostic.
Joel: is it pretty easy to hook up x10 devices to serial ports and the like?
Gordon: It’s not bad, and it’s getting better. Most equipt is standard serial — so you might need a USB adapter.
Gordon: X10 Corp and Smarthome have released USB controllers, but the software support is lagging a bit. It’ll catch up.
Joel: so when people go into your home, do they get all nerded out?
Joel: or are your practical hacks a little more subtle?
Gordon: Most of it is subtle, so many visitors never notice. Although, I do have the house speak when someone comes to the front door, so when a visitor leaves they might hear the announcement that they’ve triggered.
Gordon: Over the years, I’ve learned that having the system be as unobtrusive as possible is the best way to create something that you — and your family — can live with long term.
Joel: so no WELCOEM TO THE BRIDGE CAP’N when you go into the kitchen
Gordon: Heh, no, although when I was testing some of the hacks that others gave me for the book the house did get a little eager about telling me the weather and when somebody opened the fridge door.
Joel: what do you think of zigbee and the next wave of home automation standards?
Gordon: I’m hoping that they really catch on, I’d like to use them myself, but I don’t think its necessary to wait and see what happens with them.
Gordon: The things you really need for a successful home automation project aren’t dependent upon one technology or another — it’s creating a system that you can live with.
Joel: how much outlay can somebody expect to get started with some simple hacks?
Gordon: Less than $200; you can get by with around $100 if you start with demo applications or are techy enough to use MisterHouse on the software side of things.
Gordon: But some hacks in the book don’t use X10 at all. Things like creating a heated toilet seat, or motorizing the window blinds.
Gordon: BTW: An article from last week about MisterHouse: http://www.onlamp.com/pub/a/onlamp/2004/11/11/smrthome_hks1.html
Joel: that’s pretty handy
Joel: was there any reason in particular you selected the Forward Phone Calls hack for Gizmodo readers?
Gordon: Well, I think it’s pretty darn clever and I figured that if your readers are at all like me, which I know they are because I am one (ha!), they can appreciate the technique.
Gordon: Also, it’s something that I’ve often wanted to do, and now I have a solution to the problem that doesn’t require anything too fancy or much work to implement.
Smart Home Hacks
Hack #35: Forward Phone Calls
The phone company’s call forwarding options can be inconvenient to use, but with home automation techniques, you can get more value for your money.
Did you order call forwarding from the phone company thinking you would use it a lot? Chances are, you don’t use it very often because it’s a pain to remember to activate when you leave the house. It’s also a pain to remember to cancel it when you come home. Did you ever wish you could change your call forwarding number when you’re away from home? Well, I get my money’s worth from call forwarding by using my home automation system controller and telephone touch-tone interface.
I use a HomeVision-Pro (HV-Pro) automation controller (http://www.csi3.com/homevis2.htm; $600). I selected the HV-Pro because it supports multiple methods of input, output, and logic control. The best feature has been the ability to add new functionality that I did not envision when I purchased the HomeVision. I have successfully added two-way control to my Napco Gemini home security system (http://www.napcosecurity.com/testframe.html?products-napco.html), a Jandy Pool & Spa control system (http://www.jandy.com/html/products/controls/onetouch.php), and Powerline Control Systems’ Universal Powerline Bus (UPB) products (http://www.pcslighting.com/UPBProducts.htm). These weren’t on my original list of things to integrate with my automation environment, but HomeVision has enabled me to add them all.
When leaving the house, I press a button on the Palm Pad next to the door to initiate the call forwarding. I currently use one button to set the call forwarding to my cell phone (M1 On), another to forward calls to my wife’s cell phone (M2 On), and a third to cancel call forwarding (M1 Off or M2 Off) that I’ve previously set. The general logic flow is as follows:
Send an X10 command (i.e., M1 ON).
The home automation controller receives the command and executes a predefined macro (i.e., Forward to Jon’s Cell Phone).
The macro picks up the phone line and dials the sequence necessary to cancel any existing call forwarding.
The macro pauses and waits for the dial tone to return to the phone line.
The macro dials the code necessary to establish new call forwarding.
Pause to allow the command to take effect; then, hang up the phone.
To implement steps 3 through 6, the macro could simply dial the number 73,,,#72,555-1234,,,,,,,,,,,,, where each comma introduces a two-second pause.
When I return home and want to turn off call forwarding, it would be simple to set up another Palm Pad button that triggers a similar macro to dial the sequence necessary to turn off the service. However, I don’t usually do this; I prefer a smarter approach.
To automatically turn off call forwarding when I return home, I have my alarm system configured to send an X10 command (M1 Off) when I disarm the alarm upon returning home. When HomeVision receives this command, it starts a five-minute countdown timer. When the timer has expired, HomeVision checks to make sure the alarm is still disarmed. If it is, it runs a macro that cancels call forwarding, as described previously. This gives me a five-minute window to quickly run in and out of the house, disarming then arming the alarm, without disabling the current forwarding setting. This method of automatically turning off call forwarding works great, and it is handy when a second person returns home, which automatically cancels the call forwarding so that this person can receive phone calls.
Another handy, but more complex, technique enables me to change the telephone number that calls are forwarded to when I’m away from home. I call this remote redirection of call forwarding. If you have a second phone line for your fax or modem, you can use this technique to dial in and modify the call forwarding setting on line 1. You’ll also need a double pole, double throw (DPDT) relay switch that’s connected to your phone lines and configured so that changing the relay switches the HomeVision Phone/CID module between the two phone lines. The relay switch is connected to an output port on the HomeVision so that a macro can activate it and cause it to switch between the two lines.
In my setup, I rely on an output from the alarm system that signals Home- Vision when the alarm is armed or disarmed. When armed (away), the Phone/CID unit is active on line 2, but when disarmed (home), it is active on line 1. Now, by dialing into line 2 and entering a pass code, HomeVision executes a macro that does the following:
After receiving the pass code and activating the macro, hang up line 2.
Activate the relay to switch the Phone/CID module to line 1.
Pick up line 1.
Dial the call forwarding code to set a new phone number.
Pause to allow the command to take effect; then, hang up the phone.
Activate the relay to switch the Phone/CID module back to line 2, to await another call.
Hacking the Hack
If you don’t have a phone control module for your home automation controller, you can implement a similar method by using a modem. You won’t have the same control that HomeVision offers, and you’ll need to find a scriptable terminal program to control the modem, but in general, the technique is quite adaptable to different systems and equipment.
—Contributed to the book by Jon Welfringer
Smart Home Hacks Catalog Page [Oreilly]