I'd like to get a list of home automation systems and put it all in one place, along with how they're used and some pros/cons of each system. I'm really new to this, so I'd like help with things that others have used. I can edit this first post with your responses.
Preface: Arduinos make very cheap and energy efficient sensor nodes. They can actuate things (digital and analog I/O, run stepper motors) as well as report sensor data (temperature, humidity, presence sensing). But they need some upper level system to present all this data attractively, and provide an web interface to interact with the outputs. An upper level system is also needed to service event and time-based actions (i.e. send an email or text message when water sensor tripped).
Sensor Network: There's a few ways to network Arduinos together. A full TCP/IP comms integrated with the home network can be done with the Wiznet5001 ethernet shield, or the wifi shield. The ethernet shield is pretty cheap, but requires ethernet hookup, which limits the flexibility in locating the field device Arduino nodes. The wifi shields are expensive, and both of these are pretty power hungry devices.
The sensor network could be made from super cheap 433MHz, RFM69, or 2.4GHz nRF24L01 modules communicating serially to a central gateway that aggregates the data. This gateway could be an Arduino with a ethernet connection or a RPi with an ethernet connection.
The HA interface should be flexible enough to present digital and analog data as well as make it look pretty. This could be an smartphone app or a webpage. It would be nice if the gateway also present historical data to the interface, so you can view stuff like temperature trends.
- Sensor Network Type: TCP/IP network, either ethernet or wifi, and reachable via multicast traffic. Other wireless network modules compatible, but currently not supporting the cheap nRF24L01 or RFM69.
- Gateway: One Arduino acts as the gateway. The Android App that connects to this Arduino uses this gateway Arduino to collect sensor data from all other Arduino field nodes. If you want event trigger and scenes, or historical data, you'll need to have an Android device running the Souliss app all the time at home.
- Interface: Android app is working well already. Able to access HA network on lan and remotely with port forward. Webserver is in the works, but doesn't work yet. There is also a OpenHAB compatibility for even better presentation of data, but I haven't played with it.
- Pros: The Gateway Arduino automatically searches out all field nodes and auto-configures the type of device they are to represent to Android interface.
- Cons: Currently, the nRF24L01 and RFM69 is not supported. You'll have to use other wireless modules on their compatability list. Perhaps there is a way around this by making the gateway Audruino pretend to be other modules?
- Comments: The Arduino libraries and sketches from Souliss provides the auto-configuration feature. It's by far the easiest plug and play home automation thing I've come across. There is a sketch example for each type of field devices (analog input (temperature), digital output (lights), digital input, etc...). By copying the sketch and compiling the sketch with the provided Souliss libraries, each sensor node communicates with the gateway Arduino to setup the correct interface button or display indicator on the Android app.
- Sensor Network Type:
- Sensor Network Type:????
- Sensor Network Type:each field node is on TCP/IP via nRF24L01+ wireless link. They provide example sketches.
- Gateway:One Raspberry Pi acts as the gateway for up to 255 nodes. Provides general Ethernet LAN/Internet connectivity to each node via it's own buffered bidirectional link connected to its own a IP:port
- Interface: Able to access HA network on lan and remotely with port forward. Both TTY and webserver style interfaces work, complete demo project on web site.
- Pros: Each node can access https/SSL/TLS services, so a wider connection to services possible.
- Cons:This is a commercial product, so you have to buy the SD card from them to get the RPi functionality. Library source code is provided, but is non-redistributable under licence.
- Comments:RFXduino is designed as a general purpose gateway system to enable TCP/IP over nRF24L01+ connections. So Arduino nodes can be clients or servers. System design driven to minimize deployment cost per node. An exec() "bridge" function allows for access to general Linux command execution by each node. Library is stable and well tested.
[u]wallaceb's Reptile Automation Example[/u]: http://forum.arduino.cc/index.php?topic=140740.0
- Sensor Network Type: No sensor network, but his code provides the basics of implementing an Arduino webserver so you can integrate wireless sensors yourself.
- Gateway Arduino w/ ethernet shield running webserver.
- Comments: Still working on understanding this.
[u]Mi Casa Verde's Vera Plugin[/u]: http://code.mios.com/trac/mios_arduino-sensor
- Sensor Network Type: Uses nRF24L01 network of sensors to gateway.
- Gateway: The gateway is an Arduino. The gateway Arduino can be either on the same LAN network as the Vera, or can be connected via USB to the Vera. The gateway needs to have a nRF24L01 to communicate with the other field nodes.
- Interface: Uses the a free plugin installed on Mi Casa Verde's Vera interface. It's a pretty mature product line. The Vera device has been around for years and does scenes/trigger events.
- Pros: Only system that starts off using the nRF24L01 for the sensor network.
- Cons: You have to buy the really expensive Vera units, anywhere from $150 to $240. Not open source, limited configurability.
- Comments: The writer of the Vera plugin provides a sketch for the Arduino gateway, as well as examples for the field sensor nodes.
[u]Low Power Lab's[/u] : Moteino Garage Door Example
- Sensor Network Type: Uses RFM69 wireless modules.
- Gateway A Arduino's (Moteino) serial port connected to to RPi's SPI pins.
- Interface Raspberry Pi runs the web server. Has SSL and auth.
- Comments: still got to learn more about it
- Sensor Network Type: