Multi zone boiler heating system : Sharing learnings from 2 years running it

Firstly: System has been operational for 2 years with no issues. On previous hardwired zone controller had large temperature swings in house. With HASS and more frequent, smaller targeted heat cycles temperature is stable.

When I went looking to do this, I didn’t find much information so thought worth sharing.

Principle is wired in home assistance controller in series to existing Multi zone home controller, still used the original hardwired thermostats as part of fail safe.

Temperature inputs come from Sonoff AM301 temperature sensors, running temperature & humidity SI7021 sensor inputs. Raspberry P.I runs Haas. A Sonoff Pro2 4 channel relay is used for controlling the heat zones (boiler, water control values). All are running tasmota software.

We have solar hot water so I also use Haas (Sonoff AM301 on the cylinder temp) to decide whether to cancel a scheduled heat cycle.

Deployment setup is the following (See image below)

Fail safes added:
1: Original hardwired thermostats still in place, set only 1’ above max comfort temp cut off (21 degrees)
2: On power restart (i.e. Power cut ) heating is set to off
3: 4 times a day, at 2 minutes to the hour, on tasmota device itself (No HASS) power is scheduled to turn off ( I have learnt to do this on all my home automation devices).
5: HASS power off is scripted to try 3 times at an increasing delay to turn heating off, fires alert if can’t turn off heating (This script does get work).
6: Sonoff 4 channel pro 2 is wired in on the boiler relay circuit and protected by the fuse

Reliability:
I did have this setup in parallel for 4 months, before switching over, key learnings before & after operationalising it where:
1: Use Tasmota software as IoT routing wasn’t reliable enough to switch hearing.
2: On tasmota, disable OTA reset as brown power surge can reset device
3: Glue the original hardwired thermostats at desired setting so people don’t move them
4: Schedule the sonoff thermostat devices to restart once a day, occasionally they drop off the network
5: Schedule the HASS host, raspberry PI to restart once a day
6: Dedicated WiFi router to HASS on clear 2.4GH channel. Streaming T.V, Internet companies can otherwise inter with the signal
7: On automation, to turn boiler use off state check and retry scripts in-case a signal is lost.
8: Standby raspberry P.I with HASS installed & configured. This has occasionally bricked itself, through updates or power cuts.
9: Given time to procure, solder, setup, I have spare hardware ready to go if needed.

Comfort:
1: Having dropped multiple thermostats in house to provide best feedback into triggering and input into the duration of heating cycle.
2: Mounted the Sonoff Pro2 in an enclosure, with only buttons exposed so can manually turn on/off HW as well.

Install & Configure : Tasmota software

Firmware replacement for each device:

  • Solder headers onto board as per tasmota guide pages.
    -Follow Tasmota guide for resetting button on start up to allow flash
  • Used DSD Tech USB to TLL Serial to write to the sonoff boards to connect from laptop
    (no issues to power devices off laptop apart from sonoff rf which required additional power adapter to be plugged in after start to run as soon as I had set the pins to reset on startup)
    -down loaded firmware from tasmota.
    <Sorry, not allowed to add tasmota inks to community chat >
  • used tasmota-pyflasher-1 to install firmware available on github
    <Sorry, not allowed to add software inks to community chat >
    Requires Installing python 3.8.1 (version at the time)

Used mobile phone to configure sonoff device onto wifi network
Either connect to tasmota wifi from mobile
Then enter into web browser: http://10.10.7.1/device
Or On , connnect o tasmota wifi
Set wifi network connection to : IP to 10.10.7.2 mask: 0.0.0.0 password 12345678
connect with web browser to http://10.10.7.1/device

Then configure wi-fi to your local router
I do set a second SSID as a recovery SSID
<Sorry, not allowed to add screen shots images to community chat >

Configure Module: Temperature humidity
Module : TH (4)
Add sensor: TH10/TH16 add sensor → Si7021 Sensor
i.e.
<Sorry, not allowed to add screen shots images to community chat >

Then test its running right, I did have to drill the casing out on the sensor plug to get accurate settings, common problem.

Setup the MQTT identification
<Sorry, not allowed to add screen shots images to community chat >

Set a Web Admin Password to secure device .
<Sorry, not allowed to add screen shots images to community chat >

Apply following settings in console:

Disable reset on power recycle (i.e. power surge)
SetOption65 1

In the command console add the following to enable mqtt discover
SetOption19 1
(Make sure all the MQTT names are correct before doing this else it will propagate into HASS and you will need to clean it out)

<Sorry, not allowed to add screen shots images to community chat >

For Home Assistant

I used

  • Use balenaEtcher to install hass software
  • I also installed Tasmota admin in the supervisor to manage the setting

Very rudimentary scripts before templating was available

3 Likes