SourceForge | About SourceForge | Partners | Contact SourceForge | Login linux.com partner  
VA Linux Systems

Welcome to the Linux Home Automation project


Linux Home Automation
Homepage
History
Design Philosophy
Status
Supported devices
LHA Documentation
Make a donation

My Linux HA pages
The Linux HA Forum
My Linux blog

Not Logged In
Login via SSL
New User via SSL

Search

Require All Words

 
 

History

Some of us have noticed that the Home Automation (HA) industry hasn't really noticed Unix at all. There are plenty of HA controllers available and some actually provide enough information for some of the Unix crowd to sit down and write the user and hardware interface software to use it. HA and Unix is very much a DIY project and what I would like to see is a standard interface to the available hardware.

This project initially started out when I received a CM11A as a Christmas present. I immediately went on a search for Linux software and setted on Dan Lanciani's X10d. I discovered that I needed to modify the code to get it to work under Linux. I've been supporting my modifications ever since, playing catch-up when ever Dan releases new code. To be honest I'm not sure I fully understand everthing his code can and can not do. The interface is a bit cryptic.

Since that time I've created a set of shell scripts which run from cron or the Unix command at that send commands to control varous lights at certain times of day. Such as at sun rise and sun set. I also found a program written by Karl Denninger that performs the same function but runs as a daemon all the time. It takes it's commands from an event file. It reads the events file at startup and stores it in memory. Then connects to the X10d and monitors the events as they occur.

I later purchased a CCC's HCS II, which I purchased as a kit (I enjoy building electronics, this controller can also be purchased fully assembled). This HA controller provides an interface to X10 (via a TW523), analog to digital conversion (8 channels), 8 digital inputs and 8 digital outputs in the initial kit I purchased. It is expandable to include a great many other products also. It is with this kit that I started to write the hcsd code. I had 2 problems, the first was that I really liked the way Dan Lanciani wrote the x10d (other that my lack of understanding the commands) but Dan's code is under his license (no arguement with that). The second is that when I initial tooks Dan's code and modified it for the continous output of the HCS II it would drop data from the HCS II. So I began to remove Dan's code and write my own. Since that time I've also purchased a LynX-10 kit and an ADI Ocelot (upgraded CPU-XA). I would like to get the Ocelot under this programs control also.

I've also taken some time to write a couple of client programs to interface to the hcsd. The first takes the events.bin file (compiled under the DOS emulator) and send it to the machine interfacing to the HCS II. I've unfortunately broken the interface between that command and the HCS II when I got the POSIX thread code finally working. It stopped the drops and can handle a number of clients but it also eats the CPU alive! The second set of programs is a set of simple shell scripts that really need a bit more work.

All trademarks and copyrights on this page are properties of their respective owners. Forum comments are owned by the poster. The rest is copyright ©1999-2005 VA Linux Systems, Inc.