Non-compliant browser detected
Page may render incorrectly
-->
www.ryanwright.com
Home       ::       Automation       ::       Home Theater       ::       Hovercraft       ::       DeLorean       ::       Fiero       ::       Wanderlodge
ryanwright.com: Home Automation
    Home Automation    

I have been interested in home automation since I discovered the wonders of X-10 in the 1990s. Unfortunately, I spent many thousands of dollars before I discovered that X-10 was little more than a toy, unsuitable for serious, whole house control. When my X-10 system told a light to turn on one night and some shrub sprinklers decided to turn on instead, ran all night and destroyed an expensive brick wall, I tore the equipment out of my home and went looking for a better solution.

I found AMX.
Founded in 1982, AMX began creating robust command & control solutions to help people, in their words, "Harness the rising power of technology." Today, AMX automation equipment is the cream of the crop. Highly fault tolerant, I have never had a problem with the core technology that could not be traced to a faulty component, or, more often, an error in my own program code.

Unfortunately, AMX equipment comes with a steep price tag, but if you can afford the best, this is the way to go.

I have authored some AMX code and have released it under the GPL, which means it's freely available for anyone to use. Click here to download a copy of the GPL license.


Automating Hunter Douglas PowerRise Shades

Yes, this is possible and fairly easy. Click here to view my tutorial.


Netlinx module for Baytech RPC equipment

Baytech RPC units allow you to control power outlets over Ethernet. I first discovered these units through my employer, where they were used to remotely reboot servers. I decided they'd be great for home automation, so I bought a few on eBay. The RPC-3 units, which I use, have 8 individually addressible outlets. They generally run >$500 new but you can pick them up for much, much less if you watch eBay. I paid about $40 each for mine - a real bargain.

These units are easy to control from any Netlinx master. All you need is a free network port for wiring and my module, below. The latest version as of 12/3/2006 is 1.1.

Download version 1.1 (instructions for use are embedded in the module)
Download version 1.0 (historical only, not recommended)
Download changelog / version history


AMX to CM11A "Activehome" X-10 gateway

For a brief period of time, I needed to use a couple of legacy X-10 devices with my new AMX system. AMX used to sell an X-10 card, but they were expensive and I've not been able to find one in a long time. So, I wrote some software to interface a ~$50 X-10 Activehome module with an AMX Axcess master controller. Note, this is Axcess code, although it has been ported to Netlinx (see below).

AMX -> X-10 code version 1.0 : This is the latest release. Stable and functioning. Documentation is located within the code.
Download changelog / version history
CM11A protocol information as provided by the manufacturer.

A gentleman by the name of Dave McDonald updated this code in 2007 to work under Netlinx. It is not written as a standard Netlinx module, but if you're wanting to use this with Netlinx, you'll want to try this out. Note that I have not personally tested this code:

AMX to CM11A Netlinx code


Question: Is this code two-way?

Sort of. As it sits, the code is written to send X-10 commands. I wrote the code to respond to reception, but didn't write any functions to decipher the incoming data and act on it because I didn't need reception in my system. However, this code should be very easy to add! Here are some quick instructions to help you out:

The Cm11A polls the PC on incoming X-10 data by sending $5A, and will send this every second until the PC responds. P roper response is to send $C3. This has already been done for you in the attached code.

Now, once the PC responds, the CM11A will send up to a 10 byte buffer containing the X-10 command(s) that have been r eceived. My code simply ignores this incoming data. If you want to do something with it, however, it would be fairly trivial to decipher it. The data will come in on the buffer setup to facilitate communication with the CM11A. I would do the following:

- Set a flag when the PC responds to the CM11A's polling (X10_INCOMING = 1).
- Write a routine that is acted upon if X10_INCOMING = 1. This should look at the incoming data, determine which X-10 code was received, and take whatever actions are necessary. Don't forget to reset X10_INCOMING to 0 when the transmi ssion has ended.





Home       ::       About       ::       Contact

Site design & content © Ryan Wright; all rights reserved. Permission to reproduce is granted to not-for-profit works if credit is given with a link to this site.