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?
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.
It seems that X10 is simplest solution if applicable, because it relies on existing electrical lines. Beside 1-Wire, protocols like RS-485, and CAN bus are also good option because they work well on large distances (tens or even hundreds of meters). Protocols like i2c or spi, are usually reserved for shorter distances (few meters) and are useful for say sensor to micro controller communication.
Asking which bus to use is the wrong question here. What you should be telling us is what you want to do, and then the technology to do that will follow.
One problem I've found is that to get the best stuff, you have to mix and match technology. For example, Insteon, Z-Wave, and UBP are all leading for lighting/power control, but if you insist your security system has to use the same technology, you're going to have to pick from the best of the security systems that use that bus, not from the one that best meets all your actual security system needs.
The nice thing is though, there are a lot of both hardware controllers and software out there that can integrate various things together, so even if your actual security sensors are hardwired and/or some proprietary wireless protocol, you can still likely get at the least alarm conditions and at best full status/arm/dearm control onto your lighting network using addd-on products designed for that.
I just answered a similar question about lighting automation options here. If you're going to be in a home for a while, invest in something that won't drive you crazy. RadioRA is controllable by just about every third party home automation system.
In my experience working on industrial automation/energy management systems I found that "open" communication protocols just don't work when you attempt to mix/match components from different vendors. Every manufacturer cooks up their own flavor of Modbus, Profibus, etc which has been customized for their use cases over time - you can see how this can get ugly really fast.
I can't speak for the residential/consumer market but back in the day every DDC manufacturer sold a "open communication protocol" gateway. In my experience they were all flawed. Either the controls feature set was gimped, the data wouldn't report correctly to the front end or you would issue control commands which "disappeared" when communicating through the gateway.
If you want to spend tons of money on an automation and datalogging solution, let me know - I can set you up with a nice server/client based front end with field panels and terminal devices communicating via ethernet. :)