Home automation is an extension of my Home Network hobby. I like being able to have a self-contained way to control and monitor my house. Like the home network I tend to make small changes or additions to the home automation over the holidays. That is why you may see different years in the titles of the articles in this section.
I have multiple Logitech Harmony Hubs (which I will call "Hubs" with an uppercase "H"), devices in my house that act as remote control transceivers. In other words, the Hubs can receive commands from a select set of Logitech-branded physical remote control devices such as the Logitech Harmony 950 and then issue commands to other devices via infrared (IR) or Bluetooth. The Hubs can also receive commands from other things such as an app on a phone or tablet, or a home automation controller such as openHAB. A single Hub can also be "linked" with an Amazon account meaning that you may control it using voice commands to an Amazon Echo, (which I will refer to as "Echo"), device. However, in houses such as mine where there are more than one Hub, there is no way to control additional Hubs directly with an Echo without either losing some natural language options or creating multiple Amazon accounts. To get around the "one Hub per account" restriction while retaining natural language control and not losing things such as whole-home audio with the Echo, I use the openHAB automation software to receive voice commands from an Echo and forward those commands to the proper Hub.
There have been a number of times in the past where the garage door has been left open all night or when no one was at home. This could be due to issues such as someone forgetting to close the garage door, or the door having problems closing without anyone noticing. I wanted to get a text message on my phone when the garage door had a problem closing, or had been open for more than 10 minutes. While there are some very well-written scripts for openHAB that do this in a more robust and flexible manner than my implementation, they are much more complex. I chose a more simple solution that does what I want. To implement this in openHAB I used a combination of groups, metadata, rules, and scripts.
When I am getting ready to leave the house I like to be able to issue a single command such as "turn on leaving mode" and have the home automation perform the following actions:
Then, after a certain period of time passes, do the following:
When I am returning home through the garage, (meaning the garage door started opening when formerly closed), I want to automatically turn on the lights inside the house in the area where you enter it from the garage. As I add more equipment, I can also automate more things such as: lock all the doors, arm security, and alert me if any windows are open before I leave.
In order to implement a cohesive way to control and monitor you home, you need some sort of controller to integrate with your devices. This can take the form of a "hub" hardware device (or multiple hubs) that you place in your home, or the use a third-party (or multiple third-parties) over the Internet. Since there has been a historically bad track-record with security flaws with home automation or Internet of Things (IoT) devices and software, I did not want to rely on a third-party to manage control of my home automation. I also wanted to control my data as well as remote access to my home. With that in mind, my main goals for a home automation controller are: