Home Automation Server
Home equipment management
Home equipment management
This application has been in my house for more than two years now and today consists of sixteen home automation modules of three different types. The assembly allows you to turn on lamps, measure temperatures, control radiators and water heaters, control swimming pool equipment, measure electrical power and finally retrieve information from the EDF Linky meter.
The diagram below shows the system architecture:
Automation hardware system architecture
The server application, installed as a service on the server, manages the connections of the different clients. TCP network connection for home automation modules and HTTP for Web clients. Also, upon request from a web client, it requests the server of my solar equipment supplier.
Note for developers: The software (domoticserver.exe) is developed in C# (CSharp) with the Visual Studio IDE.
Les modules domotiques sont constitués de microcontrôleurs ESP32, de capteurs de température, de puissance et de contacts relais. Ils sont connectés au serveur en TCP (client / serveur) à travers une liaison WIFI .
Note pour les développeurs : Les modules sont développés en C++ avec l'IDE Visual Studio et sont compilés, téléchargés dans la mémoire de l'ESP32 avec l' IDE Arduino.
Temperature and humidity
This module is equipped with a DHT22 humidity and temperature sensor. Three sensors equip the house, two of which are installed inside and one outside.
Power measurement
This module is equipped with an SCT013 humidity and temperature sensor. Three sensors equip the house, one to measure the consumption coming from EDF (redundant with the information coming from the Linky meter), one to measure the solar power produced and the last to measure the consumption of the pumps for the swimming pool.
Command
These are the relay-based control modules that act like switches:
One for the lamps which act on the remote switches to turn on or off,
one for water heaters which act on the day/night contactors,
one for the pumps and pool lighting (switch) and the pumps (day/night contactor on the filter and heat pump),
six for controlling the radiators which act on the third wire to switch to comfort mode.
Linky interface
This module interfaces the serial link of the I1 and I2 outputs of the Linky meter. Electronically a little more complex than the other modules, it is composed of resistors, diodes and a CNY17 optocoupler.
Equipment components of the different home automation modules:
ESP32 Microcontroler
DHT22 temperature sensor
SCT013 Intensity sensor
Optocoupler relay
Snubber Filter
Note: Screenshots are in french but can be easily translated.
Main Instant Information Page
Main Instant Information
This page displays information from the different connected modules.
Here we find:
The three sensors measuring the temperature
The module connected to the serial output collecting information from the “Linky” counter
The three sensors measuring the power consumed
And total consumption information, sum of solar production and network consumption
Solar Pannel Information Page
Solar Pannel Information
Here we find the information retrieved from my solar supplier (Enphase Energy, Inc.).
Water-heater Command Page
Water Heater Command
My house is equipped with two water heaters. The module allows you to control one or the other independently. For each, it is possible to program its operating range or to force its operation or not to operate it at all, useful when you are not at home for several days. The programmed mode acts like the peak/off-peak contactor of the EDF Linky meter but of course here they must be triggered during the day during solar production hours.
Heater Radiator Command Page
Heater Radiator Command
My radiators are controlled by a “Delta Door Radio CPL8” load-shedding module. It's perfect but two drawbacks nevertheless, firstly it cannot be consulted via website or portable application and programming is carried out by zone not individually.
This module therefore makes it possible to control, via a relay inserted on the control wires (third wire), the comfort mode on each radiator ("Normal" mode).
This also makes it possible to automatically trigger comfort mode depending on solar production (“Driving” mode).
Swimming Pool Command Page
Control of both pool pumps and lights
Like radiators, it is possible to manage the operation of the two pumps reproducing the operation of the swimming pool control box. “Auto” mode corresponds to the filter pump operating hours programmed on the control box. It is also possible to force or stop the operation of the pump.
The light in the pool can also be switch on / off.
Light Command Page
Light Command
The command is carried out simply by simulating a contact on the remote control switch as when the button is pressed.