Hi everyone,
First of all - thank you @c957031 for this thread. I’d never come up to do this myself. Now I’m assembling my own system.
I hope I can add something to this topic.
As I’ve had my HA crash on me multiple times, I’m very cautious about relying on it for such a critical part of the house.
Because of that I came up with some fall-backs.
For example, you can run a script on the node which checks for connection to HA, and if there is none then closes all valves and shuts off the pump. This is what that looks like:
YAML
esphome:
name: "heating-1"
friendly_name: Heating 1
on_boot:
then:
- script.execute: connection_watchdog
script:
- id: connection_watchdog
mode: queued
then:
- if:
condition:
not:
api.connected:
then:
- switch.turn_off: pump
- switch.turn_off: valve_hot
- switch.turn_off: valve_loop_1
- switch.turn_off: valve_loop_2
- switch.turn_off: valve_loop_3
This will speed up the reaction - ESP Home nodes by default reboot after 15 min without active connection.
You can also have the script handling the pump running on the ESP itself. This might be interesting for @Atomizer too.
script:
- id: recirculate
mode: restart
then:
- switch.turn_on: pump
- wait_until:
lambda: |-
if (!id(valve_loop_1).state
and !id(valve_loop_2).state
and !id(valve_loop_3).state) {
return true;
} else {
return false;
}
- delay: 500s
- switch.turn_off: pump
The script should be called when a valve is opened:
switch:
- platform: gpio
name: valve_loop_1
on_turn_on:
then:
- script.execute: recirculate
For my setup I opted to use Thermostat component for ESP Home to run directly on the node.
Together with LYWSD03 BLE sensors in every room, that makes it completely independent of the HA, as the sensors can communicate directly with ESP.
It can also handle both heating and cooling, which was an additional requirement for me.
I also added Dallas sensors to monitor the temperature in the manifold and all returns and shut everything off if it exceeds a threshold.
@dala318 can you share what you’ve done with your sensor readings?