When I moved into my new place back in October last year, I couldn’t figure out how to turn the lights off and on in the house as many of the switches in the house either didn’t work or turned on the wrong lights.
I found out later that my landlord had an X10 Home Automation setup in the house. This allows him to turn the lights on and off from a remote control. He also mentioned that he read of a way to automate the lights and access it via a website using the CM15A module that he had connected to a computer. I just happened to have a Windows-based Apache server with MySQL and PHP, and after a little research and implementation, I managed to serve a website that could control the lights in my house with a web browser.
Over time I was getting more and more disappointed with the speed of my server. I had Windows Media Center running on it and a number of other programs for media streaming and file serving. As servers go, this isn’t the best of setups, and because the hardware on the system wasn’t to the fastest either, it made accessing the computer unbearable. So I did some research and decided to migrate the system over to the Server Edition of Ubuntu.
Now that Ubuntu is installed, my system has never been faster at serving files and streaming media. The only problem is that the lights in my house aren’t accessible and I couldn’t control them from the web-interface I had implemented on the Windows setup. The drivers for the home automation in Windows aren’t compatible with Linux. So I decided to do some more research and install ones made for Linux. Unfortunately my search came up short, with a lot of discussion around people trying to build drivers for Linux to access the CM15A module, but no hard evidence of a stable driver built by the X10 company.
So that’s where this article comes in: I have composed a step-by-step guide to getting the X10 CM15A USB module to work under Ubuntu, and which further allows the iPhone Home Controller web-based interface to connect the module.
I will give fair warning, the setup I have only addresses how to turn off/on/dim the switch modules. The current driver-attempts for Linux do not access video cam modules, door lock modules or other home automation modules outside of the scope of the simple switch modules (that I know of).
Click here for my article that outlines the steps involved to getting this to work.