TRV - Dynamic Valve-Position Control - "Analogue" Water-Flow Regulation - (Why?: See the list)

Ever wanted to be able to dynamically fine-regulate/control the water-flow, in your radiators?
[for a number of reasons - see the list below]

i.e. “copy” an Analogue TRV (fx. a Danfoss-RA)?

Living in Denmark, where “remote-heat plants” are common (with a steady amount of hot-water for heating available) - I went ahead with this, using Sonoff’s TRVZB’s.

I consider it a “Pilot/Beta Project” (with lots to be improved & added) - and, I have been “edging” Sonoff (probably annoying them).

Because, I “mis-use” the “Opening Valve Degree” command - by using it, to dynamically (in RealTime) fine-regulate/control the water-flow/current coming through the radiator.

The results, can be seen in the attached screen-shots.
[notice: 1) the 1% changes in Valve-Opening, 2) the “extreme” fine room-temperature control (Δ0.18°C, 2. screenshot)].

WHY do/implement THIS?

  1. To stop long radiators from “Banging” (the metal-expand/diminish bearing-noises) - i.e. have a “stable radiator-temperature”.
  2. To have as good/fine Room-Temperature Control as possible.
  3. To avoid returning hot water (which results in “punishment” fees/bills in DK).
  4. To minimize Valve-Noise (the “Weeeeeeee” sound, is reduced to a small “prick”).
  5. To Extend TRV BatteryLife.
  6. To make the “Smart”-TRV nearly as “smart” as an Analogue TRV - in THE PRIMARY FUNCTION OF A TRV: Which is = FINE-REGULATING THE AMOUNT OF WATER, FLOWING THROUGH THE RADIATOR. … Depending On: A) the room-temperature, and B) the selected temperature-treshold.
  7. to solve distribution-challenges, such as: 7A) “the first radiator(s) in a string, getting too much” (leaving too little hot-water /heat to the last ones, in the string), 7B) “low pressure /water-flow” (making it necessary to “spread” the limited amount of flow/throughput out on all radiators).
  8. to inspire Smart-TRV companies, to include this, in their coming Smart-TRV’s (the communication to & with the companies).
  9. to inspire developers & users within the Home-Assistant community, to step in, and aid in the creation of an integration (or extend an already developed integration - fx. “Better Thermostat”).
  10. and finally, Because I am a Regulation-&-Improvement Nerd!

1 Like

The post above, is on-purpose not about the underlying Automations - and possible Helpers, Integrations, etc.

The Post focuses on Visualizing “the possibilities”, with practical IRL-screen-shots of the “performance /output”!


In the automation behind, the basis is a bunch of chosen temperature-intervals (10-15).

  • And since I am not a super-user, then I have fx. not used Yaml-etc …
  • and A LOT of areas-etc can be improved upon - the hardware, the firmware, the automation(s).
  • and “global variables”, an integration, etc, etc. - are of-course also logical possibilities.

And, I have spend hours, “calibrating” each radiator’s TRV/ventil - starting with finding the percentage, where the radiator-ventil started to open-up for water-flow (fx. at 15% opening),

  • Followed by a series of increments in opening (fx. 16%, 17% 18%) - and then waiting each time, for fx. 30 minutes, to see HOW MUCH the radiator did “heat up” (fx. “hot from top and 10cm down”).
  • and finally checking at which “Valve-Opening percentage” the radiator became “saturated”.
  • and from there, I started “filling in the details” in the intervals … to get the wished-for room-temperature & flow results.
1 Like

Why is there an inverse relationship between the valve opening degree and room temp?

Answer, to paulius2k’s question: “Why is there an inverse relationship between the valve opening degree and room temp?”:


There is “nearly” an inverse relationship:

  1. the Temperature, in itself: The warmer the room gets, the less water needs to (and shall) flow through the radiator. And, if the room-temperature reaches fx. 0.3°C above treshold, then the valve needs to fully close.
  2. and the “Trottle” needed: The more heat, that is lost (fx. because it is freezing outside), the “higher opening value” (the more hot water) is needed, to stay at approx. the same temperature.


Illustration - to make it clearer:

It is a bit like the gas-pedal in a car.

  • uphill, you need to press the gas-pedal further down (add more gas) [to stay at the same speed] - equal to “opening the radiator-ventil more” (higher percentage) [to stay at the same temperature].
  • downhill, you can remove your foot from the gas-pedal (no gas) - equal to “closing the radiator-ventil”.
  • and all the way in between (a bit uphill, a bit downhill, and the wind against you, etc.) - you add “just the right amount of gas” [to stay at the same speed].

…I hope, this explanation did help…

1 Like