CM15A Disclaimer

Home Domination now supports the CM15A, however it's not exactly ideal yet, although it works much better than it did a while ago.  But please download the demo and try it out before you buy to make sure it does what you need it to on your machine.  And read on if you want to know all the details behind this little fiasco.

In general, the CM15A works, however you may need the X10 Device Network Service to be stopped, or perhaps started, before the CM15A to work.  And there have been a couple instances where in order for the CM19A to work, the FireCracker software may need to be running at the same time for some unknown reason.  Home Domination will detect whether the service needs to be started or stopped and automatically start and/or stop the X10 Device Network Service.  (This feature doesn't work on Vista here for info on how to manually stop the service.)  It will record a log message if the CM19A requires FireCracker to be running.  If the X10 Device Network Service needs to be active, you will unlikely be able to get information from the CM15A, but you should be able to control switches with it.

Nitty-Gritty Dirt

ActiveHome Pro has an SDK for the CM15A, however it's not a real SDK.  A real SDK is self contained, and their SDK is really an interface into their software.  If you've ever checked out their forum, you know that their reputation for solid software is less than stellar.  I didn't want to be tied to their software, so I decided to go the back door route and directly communicate with the CM15A.

Initially, it appeared like supporting this device was going to be a "piece of cake".  It worked great for me as long as the X10 Device Network Service was stopped.  But that cake grew stale as I ran into problems with using LibUSB-Win32 on other people's machines.  LibUSB-Win32 is what I use for the communicating with USB devices.  Not to worry, Stephen Meyer was very helpful with these issues and the LibUSB-Win32 install issues were resolved.

The next problem was not so easy to solve.  Even though I needed to have the X10 Device Network Service stopped on my machine in order to use the CM15A, on some machines, it wouldn't work at all unless it was running.  My development machine runs great with the service stopped, and my laptop will only work if the service is started.  Unfortunately, when the service is running, the service intercepts anything that the CM15A sends, so Home Domination isn't able to receive anything that is sent through the power lines or RF signals.  As my "piece of cake" began to get hard and moldy, I worked to figure out why this different behavior was happening.  Both machines use the same operating system (Windows XP Pro) and any other differences I've so far ruled out as being part of the problem.

Another weird thing that seems to be related is that on one of my alpha tester's machines, FireCracker has to be running in order for the CM19A to work at all.  The CM19A works just fine on my laptop.

I do now have it so it will at least detect which situation is happening and automatically either start or stop the X10 Device Network Service (and restore it after the program is shut down), and put a message in the log.  If the CM19A needs to have FireCracker running, it will put a message to this affect in the log too.  But if your machine is one that needs to have the X10 Device Network Service enabled, you will be able to control switches, but you'll be limited in what you can do since it won't be able to receive anything.

The CM11A still works great. 

If I figure this out, I'll definitely fix it, however for right now, it's time to get on with life again.  There's a lot of cool stuff I could be doing and I plan to get back onto that now.

- Harry Strand