Many communication systems have been proposed for home automation (e.g., HVAC control, alarms, access control, light control, and entertainment), including 1-Wire and X10. Which system is best suitable for a beginning home automation DIYer, especially in terms of the variety of low-cost devices available?
Which communication bus systems for home automation
home-automation
Related Solutions
X10 (and other power line communications) signals can travel back up to the transformer, and they can interfere with other systems which are connected to that same transformer. You can purchase a "signal blocker" to prevent the signal from making it back up the line, but these will typically need to be installed in the breaker panel (which may or may not be DIY for you).
In general, most new home automation products use wireless transmission protocols. There are several standards out there, but the main players are Insteon, Z-Wave, and Zigbee. More or less, these options are very similar. They are low power RF protocols, centered around a "mesh network" scheme. All nodes can transmit and receive commands, and signals can be re-broadcast to other nodes which may be out of range of the original signal.
Insteon - This is a proprietary protocol, designed to address the shortcomings of X-10 Basically a hybrid between X-10 and a full wireless solution. Signals are broadcast wirelessly, and also over the power line. There is support in the protocol for data encryption, but in general it is not supported by the hardware. Without the encryption, commands can be intercepted and spoofed by an attacker. You also have the same powerline problems that are present in X-10.
Z-Wave - This is also a proprietary protocol, but is completely wireless. There is no encryption of the transmitted data.
Zigbee - This is a standards based (IEEE 802.15.4-2003) wireless protocol. It uses an encrypted communications channel to communicate between nodes (AES 128 bit). Generally speaking, this is the most secure of the 3.
All of these protocols are relatively widespread, with several companies producing controllers and modules which support one (or more) of them.
Given that you seem to be concerned about the security of your automation system, I would likely choose either a Zigbee system or an X-10 system with a signal blocker installed. The X-10 system will likely be cheaper, but depending on the hardware you purchase and your specific electrical setup, the system may or may not be completely reliable.
I've been doing something similar for the past couple of months. At present the setup only extends to my workshop (for testing). Currently I am using a single UNO for control which reads various sensor states, including light level and temperature/humidity, plus some door (reed relay) and IR movement sensors. The arduino reads the state and sends messages to some software ( currently Python 2.7 under Ubuntu) over UDP which then does the processing that is required and sends control commands back to the Arduino, again over UDP. The processing currently amounts to checking the internal light sensors and switching on the lights if necessary. Ultimately I want to migrate all my lighting to 12v LED so I can run off stored solar, but at present I am using a system similar to yours in that the relays are in series with the power switch for the lights, normally closed, so that if the control circuitry fails the light switches should operate as normal. I also have some external IR sensors and the same system activates an external security light, this time with a normally open relay. I consider using the normally closed relays as essential for the main lights, otherwise the domestic management will kick off once the system is rolled out to the rest of the house. I want to use LEDS because of their dimmable nature when using the PWM enabled pins of the Arduino, this will then enable a nice low level of light for those nocturnal toilet trips, all automatically of course. I have just taken delivery of a Mega 2560 which will provide a lot more IO. Like yourself I envisage having separate Arduino's for input and output. I am developing the control system in python, with the intention of migrating it to raspberry PI once development has finished. This will allow me to run it all an enclosure with a status screen hooked up to the composite video. I currently have a limited status screen running on the PC, which allows me to control the brightness of LED panels and GU16 bulbs. I have configured the arduino so it will accept commands from any device on the network, so I can set up some control from the android devices I have around the house. I also have a fully working zoneminder installation, but had not considered using it to trigger anything as yet, but then again I don't have any internal cameras on that, just external. I did consider thermal imaging, as you suggested, but I think cost is a major issues (would need to come in at below $100 Australian, per room to be feasible for me), so I'm persevering with low cost IR sensors (about $2 each from China). My Arduino code is not best but I am more than willing to share it. It is currently set up to monitor the various sensors in a constant loop, and also listens for a 3byte UDP string in the form of 410 (4 is light 4, 1 is for on, the last digit is used for a brightness level for the LED)
I do agree with the comment about the resale values of the house, but I'm not planning to move anytime in the foreseeable future. Your needs may be different.
The python code also does some DPMS control of the monitors in the workshop. Currently they are put to standby after 10 minutes of no workshop movement. I am in the process of setting up some power sockets that are switched in the same way as the lights, so the system can turn off things like my soldering iron and amplifiers that I frequently forget to leave on.
Let my know if I can be of any help with your project. It sounds great. Good luck
John
Best Answer
I've been very unsatisfied with X10-based automation systems. I've installed a bit of it in my home, and find them flakey. Smarthome's Insteon is a combo powerline/RF system that at least should be less flakey than X10. This is what I will probably try next myself, since it's backwards compatible with X10 and fairly inexpensive.
Beyond that, there are Z-wave systems like Leviton's Vezia RF+ which look pretty interesting, but they're pricy. And I hear people say great things about UPB products, but again, they cost about twice what Insteon goes for and are powerline only. In my house, I think an RF component is a good idea because each half of my house is on a separate electrical box. Insteon also makes every component a repeater, which is helpful in my house again because there are some walls filled with concrete. For me, anything that can repeat a signal is a good thing (at least I hope).
One complaint (~2006-2007) with Insteon was reliability of the devices themselves, but I understand that this has improved.
My experience researching home automation is that you can get excellent solutions by spending a very large amount of money (tens of thousands of dollars). For reasonable money, there's no one great answer, but there are answers that work pretty well. My suggestion is to build out slowly so you don't sink too much money into a single solution before finding out what really works in your house.