I have been involved in home automation for more than 20 years, designing, manufacturing, installing, testing, configuring and integrating different technologies, including professionally.
Over these more than 20 years I have been setting up a fairly complete and complex home automation system, using various technologies. Today I am going to give you a bird's eye view of it, so that you can get an idea, going into more detail in the future in other articles dedicated to each subsystem.
Broadly speaking, my home automation system includes the following main elements (I'm sure I'm forgetting some of them, because there are many):
Like main house control software I use the HomeSeer software on a small, dedicated, low-power PC without fans.
I have had the PRO version with a licence for more than 15 years and I couldn't be happier. The truth is that compared to Home Assistant (the most widespread home automation software at the moment) it looks like a little toy, although it has the advantage of being free, while HomeSeer is paid for.
This software (really complete) takes care of the main automations, time schedules, scenes, voice synthesis, etc.
In addition, something that has been incorporated relatively recently has greatly improved the usability of the home automation system: The integration with Google Home (also called Google Assistant, yes, this is a mess of names).
All I have to do is check a checkbox so that any HomeSeer items appear in Google Home. Any light, temperature sensor, thermostat or appliance in the house that is operated by infrared (from TVs and amplifiers to air conditioning).
Note a detail in the image above. It says that is showing 15 of 472 devices (yes, four hundred and seventy-two).. No, there are not 472 connected home automation devices, it is just that many of these devices are virtual.
Node-RED is a very useful free software created by IBM.
I use it mainly for integrating different technologiesas middleware.
We could say that it is the "communications hub" of the different systems in the house, a Swiss army knife. It's like a protocol translator and also is responsible for sending data to the database. and then, for example, create graphs with this data.
For example, when HomeSeer detects that the alarm has gone off, apart from carrying out different actions on devices related to security and notifications via voice synthesis (depending on the type of alarm, the time it has gone off, the people who are at home at that moment, etc.) it gives the order to Node-RED to send us a Telegram message with full details of what has happened..
Node-RED is also responsible for receive data via radio frequency of some of the sensors installed in the house, by means of a special receiver (an 868Mhz JeeNode) connected to one of its USB ports, and communicate this data to HomeSeer or send it via MQTT.
Other device, RfLink, receives via radio frequency the signals of almost everything in the house that communicates via radio on 433 Mhz. (sensors and humidity and temperature sensors from Oregon Scientific, Digoo, garage controls, etc.), and sends them to Node-network via MQTT where they are processed, stored, sent to HomeSeer or other systems, etc.
Many other sensors in the house, such as electricity and gas consumption sensors, bluetooth sniffers, CO2 meters, etc. send their data to Node-RED so that it can process it and send the information where appropriate (HomeSeer, databases, other devices, etc.).
A very important advantage of Node-red is that it needs very few resources to function.. I have it installed on a Raspberry PI 3, which it shares with the MQTT server, and some other services, and it has plenty of power.
Mosquitto is the in-house MQTT server and is installed on a Raspberry PI 3, which it shares with Node-RED. Receives MQTT messages from all devices in the house and forwards them to those who subscribe to them..
There is little more to say about it. It is a piece all-importantbut does its important work quietly and without any problems. nor does it ask for food.
InfluxDB is a database that specialises in the storage of large volumes of data in format time-series (i.e. where most of the data is limited to a date and time and the data generated at that time (a temperature, for example).
It is the main database of the house, where long-term data from all sensors and systems is stored. It is installed on a Raspberry PI 3 and works great.
I haven't even looked at how much data there might be, but I will tell you that I do keep data from dozens of sensors for years and some of them change every few seconds..
WeeWX is the software of the weather station (a Davis Vantage Pro 2 connected to one of the USB ports of the Raspberry PI 2 in which it is installed) and is responsible for storing the weather data, processing and consolidating it, and sending it to the web server where the eMariete station's weather website resides.
The Davis Vantage Pro 2 is a semi-professional station and the truth is that after more than fifteen years of operation it is still going pretty well (although it should do some maintenance).
With so much data being generated from so many sensors, having a powerful tool to visualise these data is a must.
Grafana is a small miracleis the program that creates the graphics and panels for the home automation system. It consumes very few resources, so it is installed in a Docker container on one of the NAS (an old Synology).
Many of the graphics, of all kinds, that you can see on this website are created with Grafana.
OpenTherm gateway (OTGW)
When I changed the gas boiler in 2015 because the previous one had died suddenly. I took the opportunity to install a boiler that I could integrate with the home automation system.
The boiler chosen was a Remeha (not well known in Spain, but an absolutely leading brand in Europe).
The reason for choosing this boiler was that it was equipped with a standard interface for heating control called OpenThermused by a multitude of manufacturers (almost none of the boilers available in Spain at the time, although it seems that, fortunately, more are becoming available).
OpenTherm Gateway (OTGW) is the device connected to the gas boiler that provides heating and hot water to the dwelling.
This gateway provides access to the boiler data, programming, status, usage statistics, and perform actions. how to change the desired temperature from the home automation system based on the needs, occupancy of the house, weather data, etc. by trying to always save on your gas bill but, at the same time, providing a comfort level suitable for the inhabitants of the house.
Although OTGW supports MQTT directly, it lacks some functions, so by sharing the PC with HomeSeer, there is software that communicates with it and sends its data via MQTT to the other systems. It is also capable of receive commands, via MQTT, for the control of the boiler.
OpenSprinkler is a eight-zone irrigation controller and programmer.
It is controlled by HomeSeer, which controls the watering of outdoor plants, calculating their needs on the basis of meteorological dataalways trying to saving water and maintaining optimal plant health.
It is 100% automated in such a way that it is even able to use the weather forecast to decide cancel scheduled irrigation if it is going to rain in the next hours and the plant will hold up.
In a fully autonomous systemIn this way, in the event of a possible HomeSeer, network or other failure, the programmer would continue to run its programmes like any normal programmer without irrigating the plants.
For the monitoring and recording of video surveillance cameras I use, the Blue Iris software.
It is an inexpensive but very capable Windows software that I have been using for at least ten years, and with which I have been able to I am delighted.
One of the features I like the most is its ability to insert images and text into the video, so that along with the live video, data of interest is displayed: temperatures, security system status, forecasts, etc.
It is installed in a VMWare virtual machine on the main PC, receives images from all the cameras installed in the house, processes and stores them, detecting, for example, movement in the images, which it communicates to HomeSeer, to carry out certain actions related to comprehensive security, combining the data with the data provided by the alarm and other sensors.
I no longer use EmonCMS but I have decided to leave this description here because I think it is a good solution for those who want to monitor their electricity consumption in depth. In my case I stopped using it simply because it was free and then it became paid and with InfluxDB and Grafana I was doing almost the same thing, so it was not worth it.
Over time I have also replaced the Arduino-based 868Mhz OpenEnergyMonitor system with an IoTaWatt device, which allows me to monitor up to 14 circuits with much more functionality.
Among the elements that make up the electrical energy management of the home, this system, part of the OpenEnergyMonitor project, is responsible for reading the electricity consumption data directly from the electrical panel of the four main circuits of the home and communicating them to Node-red, which in turn sends them to the database for storage and to the rest of the system for intelligent use (for example, if energy consumption is very high, it can turn off the air conditioning or other elements of the home with high consumption to prevent the limiter from being triggered).
The home alarm is a Powermax Pro from Visonic.
It is a wireless, autonomous and independent system that works without depending on the rest of the home automation system.
On the HomeSeer PC, and sharing it with it, a small software called Visonic Driver, which communicates with the alarm panel via a serial port and provides data on its status, detections, alarms, etc. to the rest of the system by sending it via MQTT.
In addition, the system can arm the alarm, disarm it, etc. In this way we can also access the information, arm and disarm the alarm, etc. from the control panels, mobile phones and tablets (and even from the TVs in the house).
There are very interesting tasks that the home automation system performs, such as automatically arming the perimeter security at night, including depending on the events we have in our calendars.
The system also allows me to use all motion, door, window and perimeter sensors. as normal sensors.
This has been a short presentation of the "brain" of the house. Of course, in addition to these intelligent elements, there is an army of sensors and actuators providing information and executing commands. I will talk about some of them in another post.