X10, my problem child

I’ve used a variety of X10 devices to control power around the house, and it’s been a love-hate relationship.

My most successful use of X10 is to raise the lights in the morning. Three bedrooms have wall dimmer switches that allow the central ceiling light to be controlled remotely. Like many mammals, the younger kids wake up with the sun. Unfortunately the school schedule does not also follow the sun, and it sucks to have them get up too early at 6:30am in the summer, but not get up at all in the winter, or when it rains. Having the lights come on at the same time year round helps everything go smoother in the morning.

I have the lights come on slowly, brightening over the course of about twenty minutes. When I wake up from the light, I like to lie in bed for a few minutes feeling the light filter through my eyelids and pretend I’m lying on a beach in the sunshine. However, my partner is even less of a morning person than I am, and she really resents the bright light. Regardless, it does function to get us up, and much gentler than an alarm clock.

I’ve found quite a bit about X10 not to like, such as similar equipment responding differently to commands. For example, in one bedroom the dimmer goes from the off state to maximally dimmed when sent the bright command; to get to the same state from off the other two bedrooms have to be sent the on command, followed by dimming all the way using dim.

The controller has it’s own processor and is able to work without a host computer, remembering what times to send commands, and can even be programmed including loops and conditionals. In practice, however, I loath it because of the poorly written proprietary Windows software needed to set it up. Instead I have my linux server use a crontab that uses the x10cmd package to issue commands:

30 6 * * 1-5 sleep 20; /home/dps/x10cmd pl c1 on; /home/dps/x10cmd pl c1 dim 99999
31-59 6 * * 1-5 sleep 20; /home/dps/x10cmd pl c1 bright 1
45 7 * * 1-5 sleep 20; /home/dps/x10cmd pl c1 off

It’s clumsy and so geeky, but is crystal clear about what is going on. In this example, on weekdays the light comes on and is immediately dimmed all the way back down at 6:30am. Then it slowly raises in brightness, and shuts off at 7:45.

Although I’ve figured out how to bend X10 to my will, it is a poor servant with crippling personal problems. Delivery of commands depends on the the noise and impedance of whatever is connected to your power at the moment. There’s no protocol to guarantee that your commands were received. And US houses are wired with two 110v rails, so that half the house is disconnected from the other half.

Working depends on what is plugged in and/or operating at the time commands are sent. Any 220v equipment, such as an electric clothes dryer, is plugged across both rails. So X10 may traverse from one rail to the other, as long as your dryer is plugged in.

It turns out that the rack the garage server lives in is on the wrong rail from all the devices I wanted to control, and I have a gas dryer, so for years I ran an extension cord to a nearby outlet that was on the correct rail. I lived with that for years, but it drove me nuts every time I looked at the extension cord. When I had a closet built around the utilities in the garage recently ( a “mechanical room”) I decided to fix this problem by running a connection for both rails and using this phase coupler.

IMG_20131026_133843

That’s right, it’s just a bandpass filter – a Chinese-made inductor and capacitor in series, made expensive by certification.

IMG_20131026_133927

This could have just been secreted into the garage’s electrical panel, but here it is installed in the closet because I like keeping things accessible (and code compliant):

IMG_20140208_102905

The coupler does work – the X10 controller now lives in the rack and the controls the lights on the other rail successfully.

But, but, but! And once again, but!

The yard fountain that I used to turn on and off with X10 has stopped working. I tested the switch, and it still works. It’s not the phase coupler’s fault, because connecting to the alternate rail directly in the same outlet that it used to no longer works.

My sad theory is that the phase couple is working exactly as designed, but doing so dilutes the power of the signal reaching the fountain’s switch by just enough to fail. Or who knows, it could be ringing, a blessing bestowed by the inductance fairy – I’ll never know for sure, because really understanding it would require getting really involved under the house with an oscilloscope in a way I have neither time nor interest in.

Instead, I replaced the X10 switch with a simple, cheap, robust mechanical timer.

Problem solved. Your move, X10.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: