I turned over the final check to our contractors for the four month long process that I know as Hell, and they knew as The Job. In other words: our house is nearly done. Nearly! I’ve posted the pictures here. But, I know that all the BRG readers don’t care about how fantastic our wall colors are, or that we have Bambo stools for the kitchen. You care about how I have geeked out the house.
So lets revisit this:
I have a 15″ touchscreen which I got from Geeks.com for a very low price, hooked up to a MacMini Core Solo which I likewise got for a low, low price. Hooked into it I have an Insteon link which I got from FunForGeeks.com. The house is wired with Insteon ICON and SwitchLinc dimmers (depending on the area). I have the more expensive switches on the “main” rooms (dining, bedroom, office, living room) and the Icon’s everywhere else except for the kitchen lights, which have a relay switch (as they are non-dimmable).
The only X-10 devices I have is a IR-543 which is an interface between infrared and the power system. I also have a PowerFlash which I used with a Garage Door sensor to tell me if the garage door is open or closed.
The MacMini is going to reside in the media center, and the touch-screen wall-mounted with a custom mount I’m making. The MacMini also serves up a webpage that allows us to control the house. Below:
I use Indigo 2.0 from Perceptive Automation for this. Its pretty great.
I have motion detectors scattered through the house that talk to an all-frequency RF reader. It is set so that if it is dark, and you enter a room, it’ll light it up. In ten minutes, it’ll turn the lights off.
Custom programming wise, the best thing I did was the “Goodnight” function. When I press (1) on the controller behind the bed, it puts the house into “sleep” mode by first dimming our bedroom lights progressively over ten minutes, then shutting the entire house down. It also checks to see if the garage door is open, and announces it if it is. Often times, the gradual dimming is so soothing that we’re not awake for the final lights out.
So lets recap: we have a smart home that knows where we are, lights the path for where we are, shuts lights off automatically and “tucks” us into sleep.
Now that we’re unpacking and getting things set, I’m starting to integrate with the rest of the house.
Logitech Harmony 880: We got a killer deal on a Logitech Harmony 880 remote. I have started setting up activities for it, including Watch DVD and Listen to Sonos. We’ll add TV when I get the DirectTV hooked up. What I did though is add the IR-543 as a device. Its a bit clunky, as you have to select the light then select “on” to transmit a code through the system.
In Indigo, I set up virtual devices on the housecode the IR-543 is on (E) to correspond to activities. So E2 is “Watch DVD” and E1 is “Listen to Sonos.” Then in the activities, I set it to transmit onto that code at the end of setting up the AV gear. It sends an E2 ON.
Indigo is set to listen to any state change on that house code (E2) and trigger off a series of actions when it hears it. So when you press “Watch DVD,” Indigo dims the living room and dining room lights, and shuts off the porch, patio and entry way lights so that you have optimal conditions for watching television. After you exit that activity, it restores the state.
My one complaint about the Logitech is the software is dependent on a website which is flaky at times. Otherwise I dig it.
Next steps for the Harmony is to further integrate its Activities with the lighting in the house to do things like trigger eating a meal, or other things that a remote is good to instigate.
Sonos: Sonos sent me a unit to review, and I haven’t yet started using it because of construction. However, I am starting now, and planning on doing some hacks to integrate it with the automation system as well. The Sonos Web Controller hack is a Perl library which lets you communicate to the Sonos via programming as if it was the desktop client. The key here is that you can switch the Sonos to using the external input and send that through the house. See where I’m going? Hook the MacMini to the Sonos external input, and program Indigo to talk through AppleScript command line (or some intermediary app) to the Sonos Web Controller and suddenly you have an amazingly smart home announcement system. Music can dim out and it’ll announce and music starts again.
You can also trigger the Sonos via web-pages, so I can integrate it with the touch-screen. I can also have tracks on the Sonos controller instigate actions for the house if I so wanted to. And I so want to. Integrating the Sonos would be cool for other things, like announcing the weather, or changing playlists depending on time of day or where we are in the house. Triggering zones where it detects motions.
Sonos: please let me keep this player! There is so much I can do with it. Please?
Web Interface: Indigo uses Python to make its web interface, and while it is cool, it has some problems. Being that its AJAX, it has unfortunate memory leaks in all browsers. I have no doubt it’ll be fixed, but I was thinking that if I’m going to have a 15″ touch screen, wouldn’t it be somehow radically awesome if it used Flash for its interface?
Think about it: a 3D house in Flash or Director (maybe, for 3D?) showing lights, showing movement, and allowing cool interfaces between things like weather, video cameras around the place, iTunes, controlling IR devices (using IRTrans if I wanted to). I think it’d be pretty fun, intuitive and much easier to use on a touch-screen than an AJAX/HTML solution.
So that’s where we’re at. As I get the AV equipment setup, and get the rest of the lights automated (six more switches to go!), I’ll post more about the remainder.