Thursday, February 15, 2007

More motion detection... and a little retrospective

Last night (Valentine's Day!), the wife and kid went to bed early, and gave me some time to set up more stuff (you know, aside from the blinds I'm supposed to hang the bookshelf I'm supposed to put together). So of course, I started messing with more motion detectors.

After having already set up a motion detector for the kitchen/breakfast room, the actual hardware setup of the motion detectors is easy. But since my living room is so large, and has two separate entrances, I decided to use two motion detectors in the living room. HomeSeer's ACRF plug-in has a nice shadowing feature which allows a single motion detector to control a device (or multiple devices), I don't believe it allows for multiple motion detectors to control a single device (and thus, I believe, was the genesis of HomeSeer's DooMotion plug-in, which I am attempting to avoid spending more money on).

Once the hardware was setup, I created virtual devices in HomeSeet with the appropriate house/device codes I set the motion detectors to. And with HomeSeer's UltraStatus plug-in, I'm able to set it up to say Motion/No Motion instead of On/Off on the main status page. But the logic of interacting with two motion detectors is quite a bit different than a single detector.

With the kitchen light, it turns on whenever there is motion, and off whenever there has been 8 minutes of no motion (we tend to move enough during dinner time). But in the living room, I don't want the lights to turn on during the daytime (sufficient light), even when there is motion. So, I set up separate events for receiving each motion detector's ON signal (to be precise, I triggered the events based on a status change in the virtual devices, not on a received X10 code like shadowing would... I don't know how much of a delay this introduces, but there's already a considerable one between RF/HomeSeer/UPB/CFL, so an extra 0.1 of a second wouldn't make a difference). When either status is changed to ON (i.e., Motion), and it's early in the morning or late at night (i.e., the sun is not yet up), and the lights are still off, then turn them on. I suppose I could add to the condition that somebody must be home... not a bad security idea for the future.

However, when one of the virtual devices has its status changed to off (i.e. No Motion), it checks the other device's status, and if both of them are OFF, only then does it turn out the lights. That way, only a single motion detector active is sufficient to keep the lights on. I'm sure more fine tuning of this rule will need to take place, but for one night, it seemed okay.

With this pretty much in place, I decided to take a look back at my original list of priorities that I wrote down during my first week, and surprisingly, I've accomplished much of it.

1. Turn on/off the lights in the bedroom without getting up.
This is taken care of using a single rocker switch for the overhead light and two lamp modules for the bedside lamps. Additionally, both my wife and I have tabletop controllers on our nightstands which control the bedroom lights and lamps both individually and as scenes. Furthermore, I have voice command over those lights, individually and scenes, through the tablet PC on my nightstand running HomeSeer's speaker client.

2. Automatically turn on the lights in my living room when someone walks in.
You can see why completing this task caused me to look back at this list... it was my #2 priority! As described above, I'm using two motion detectors for this, and I'll tweak the logic on the HomeSeer event as necessary. I may just end up writing scripts for this if the logic becomes too convoluted.

3. Automatically turn on the lights in my kitchen/breakfast room when someone walks in.
Accomplished with a single motion detector set up to shadow my UPB Kitchen and Breakfast link. Very straightforward, no event required.

4. Set up a computer with smart home software.
As should be painfully obvious by now, I'm invested in HomeSeer and its plug-ins.

5. Install in-wall terminals around the house, both controllers as well as jacks.
I do have several in-wall controllers using 8-button and 4-button+rocker layouts on SAI's US-240 universal transceivers, and overall, I'm very pleased. What I don't have yet are UPB controlled outlets, and that has turned out not to be a terrible thing. But it does count as the highest priority on this list that is not fully complete.

6. Control things with my Harmony remote control
This is not even started yet, and I still don't know how I'm going to accomplish it. I have a Harmony 880, which emits IR signals (i.e., not RF signals). As to how to convert these IR signals into something HomeSeer will recognize, I'm not yet sure. PCS does make a UPB switch with an IR receiver, but I wouldn't really know where to put as I don't have good line of sight to any switches in my living room from my couch. X10 has something called a PowerMid which translates IR to RF (and then to X10 by a receiver to put on the powerline), but the generate RF is not standard X10 RF and cannot be received by the W800RF32, so that's out. If anyone has any suggestions as to how to get IR commands from my remote control in the living room up to (preferablly wirelessly) the HomeSeer computer upstairs so it can transmit UPB links, I'm all ears.

7. Install webcams for remote monitoring
This is probably the farthest out. I will likely use IP cams in the future, but for now, cameras cost too much, and I've pretty much used my budget for the year (yes, 2007) on switches, software, and X10 RF devices, the setup of which will probably take me the whole year anyways.

8. Automatically turn on porch lights when a visitor walks up
This one is in the very near future (as in, next)... I do have a couple of outdoor X10 RF motion detectors, and it should be easy to put one over the front stoop to detect motion only on the porch (rather than in the yard). My concern here is that we tend to have cats run across our porch, and that would set off the motion detector. Well, I'll think about this..

9. Set up a state machine
Well, I have a state machine setup (as of a couple days ago), but it doesn't really alter any behavior yet. All it does is turn off lights when we're both gone. There are other ideas (alarm clock auto-set, for example) that need to be taken care of when I have the time.

10. Set up a sensor on my garage and back door, so I know if they are left open
I do have half a dozen door/window sensors that use X10 RF... just need to find the time to do it. What will be more interesting here is if not only could I sense the garage door, but also control it. There are several articles on this at CocoonTech, plus one in a home automation book my parents got me for Christmas... one step at a time.

11. Install thermostats
This will probably happen before cameras, but after everything else :-) So far off in the future, I won't even speculate.

12. Program garage controllers in our cars
This may not need to be done after all... If the CheaperRFID thread on the HomeSeer forum is any indication, I can stick active RFID transmitters in our cars and let the computer automatically detect when they are in range rather than us having to push a button to inform it. This is tentatively scheduled for the end of this year (after installing switches, basically).

13. Setup computer to email me events
Actually, this can be done now if I took the time to do it. HomeSeer has native email functionality... I just haven't felt the need to use it yet.

For 6 months worth of work, I'd say I've done okay. I might even say that I was too naive to set my priorities correctly earlier, but that's how the cookie crumbles.

It's probably also good here to warn my readers (apparently, myself and Dave at this point) that things will slow down. I do have other things around the house I need to take care of (see blinds and bookshelf reference earlier), plus some personal things to advance my career (learn Java, as painful and dumb as that may sound). More updates as things happen.

0 Comments:

Post a Comment

<< Home