Home Automation - Controller
The brains of the system used to control the house.
There are pros and cons with having a single central controller and there are pros and cons associated with a peer to peer system. I want the best of both worlds. I use a single central controller PC to run sequencing and timing routines, but I also use wall switches and Amazon Echo voice controllers to operate the lights and devices. The central PC controller is able to track any changes made by other controller devices.
Power control modules
The first decision to make is what type of modules you will install about your house to control light dimmers and other electrical appliances. The type of modules will affect what you chose as the hub to interface to a PC.
You can later choose to add other module technology types but you wil need to add an appropriate Hub and will need to figure out a software interface for it.
Decide on the best modules by considering price, reliability, and how easy they are to interface to. I recommend using wall mounted modules that also have a decora switch so it is easy to manually turn on a light or appliance when entering a room.
I chose to use Insteon parts.
Over time Z-Wave is becoming somewhat popular and affordable so may end up being what I use in the future. It's worth keeping an eye on. Leviton and Cooper seem to be on the Z-Wave train. It is not an industry standard but rather a consortium http://en.wikipedia.org/wiki/Z-Wave .
Another one to watch is ZigBee, which claims to be "the only open global wireless platform for connected devices". Obviously treat marketing claims like this with skepticism.
In the long term it is likely that directly WiFi controlled devices may become the best way of controlling light dimmers and power switches but currently they are typically tied to proprietary phone apps.
For Insteon, the best solution is an Insteon Hub.
There are other interface modules available for Insteon, but I chose this one because it is easier to write software to talk to it from your own home control software. The Hub has a local REST software interface. As well as your software talking to it, other apps and devices such as an Amazon Echo or a Google Home controller can also be set to talk to it at the same time.
Adding new modules
All power module devices need to be added to the hub configuration before they can be used. Use the Insteon phone app to add new devices. Most devices (eg dimmers etc) can be added by putting the hub into "Linking" mode and then putting the device into linking mode (either hold switch paddle down or hold the set button if it has one). Alternatively you can link by entering the ID of the Insteon device. After a device has been found then you can rename it to a short familiar name.
Here's a screen shot of an early version of the app...
Typically one PC (a laptop) is nominated to be the central controller. This runs the master controller app that I call "HouseMaster". I put this in a place where typicaly only I go, eg the Server Room, and it is left running all the time. I can use the 1920x1080 screen to see the status of everything in the house. The HouseMaster app runs all the sequencing and timer functions associately with the house. This PC can also have a bunch of hard disks attached and can act as the master data server for the house.
Typically all the interfacing electronics will be situated close to the HouseMaster PC (connected via USB). Typically lots of low voltage wiring will be star connected from each room back to the Server Room.
Requirements for a suitable laptop PC are...
1920x1080 screen, 14" is ok.
Atom CPU (for low power)
Ethernet port (can be via USB dongle)
Mouse (touch screen not necessary)
Fusion5 14.1" Fusion5 Laptop Computer - (Full HD, 4GB RAM, 64GB STORAGE, Intel Quad-Core, USB 3.0, Bluetooth)
The app "HouseSlave" looks on the screen the same as "HouseMaster". The difference is that clicks and commands etc are sent to the HouseMaster app. You can add events using any of the HouseSlaves but these are actually actioned on the HouseMaster.
The requirements for the multiple HouseSlave tablet PCs are...
They are typically mounted on the wall in multiple rooms around the house.
Any regular PC can also run the HouseSlave app. I have a PC on my master bedroom bedside table and on my desk. The app variant for the bedroom also has audio book and wakeup alarm features.