Recommendations for a Zigbee TRV with built-in PID and partial valve opening

As I’m looking for Zigbee TRVs, I’m finding most of them don’t actually function like a proper thermostat. Instead of regulating the temperature, they simply turn the heat off above a certain temperature, and on below another, causing wild swings. Most can also only fully open or close the valve, not partially open it.

I found the Sonoff TRVs, which do allow partially opening the valve. Along with an integration that implements a proper PID control loop, this allows the Sonoff to control the temperature much more accurately.

Problem is that this causes the whole system to heavily lean on Home Assistant to do its job, and results in a fair bit of network communication as well. Ideally, you’d put the PID part on the TRV itself, so it works when Home Assistant is unavailable, and only the desired temperature needs to be communicated.

According to some posts, TRVs with proper PID control loops exist, but I’m unable to find any myself. Does anyone know of a TRV with these features?

I use honematic, which does that, but they run their own protocol which needs a hub.
Danfoss ally does it too and those are Zigbee.

I would assume the Sonoff TRVZB have a regulation that’s more sophisticated than a binary 0% / 100%, depending on the temperature. What makes you think they don’t have a PID? It might not be as exact as the control via HA, but it should cover the edge cases, don’t you think?

As for the network communication: In the versatile_thermostat integration (which I use) you can control the step size. I only send valve opening changes of more than 5% to the TRV, but you could also set that to 10%, keeping network chatter very low.

Also, as of firmware 1.3.0 you can bind the Sonoff TRVZB to an external zigbee thermometer without relying on HA – in that case it will use this temperature instead of the internal sensor. I haven’t tried that yet, so maybe someone else can chime in.

I’ve seen other companies employ a similar setup. I think Plugwise (heating) and LinkTap (irrigation) do the same, they set up their own private (Zigbee) network, which you then address through their gateway.

It’s a shame, there’s a lot to like there, but cutting things up in multiple networks that may get in each other’s way is the inverse of a Zigbee mesh getting better with every router.

I thinks same

My assumption was that TRVs in general would be more clever than that as well, but for the ones I’ve looked at so far that doesn’t seem to be the case, including more expensive ones.

The Sonoff TRVZB I bought to experiment with doesn’t show any sign of a PID loop, or any other type of more sophisticated control loop. A PID controller by definition varies its output depending on the delta between setpoint and measurement. The TRVZB doesn’t vary anything, it just fully opens, waits until the measured temperature is above the set point, and then fully closes the valve, then waits until the temperature is below the setpoint (plus offset). That behavior is fully in line with a simple binary on-off loop.

Technically you could also build a PID loop which varies the timing of opening and closing the valve, rather than regulating how much the valve has opened, but that’s not a very good way of doing it, and it’s clear the TRVZB doesn’t do any of that either. It just waits until it’s hot enough and doesn’t try to preempt any kind of overshoot.

Yes, I had found reports of people using that setup and it working quite well due to its ability to properly control the valve. If can’t find hardware that handles the control loop on the business end, combining TRVZBs with versatile_thermostat and something like an Opentherm Gateway is probably the next best option.

I generally make a point of deploying hardware that works just as well without the smarts, so you only lose convenience when the hub goes down, but no actual functionality, but in this case I’m not sure that exists.

That’s worth an experiment. Measuring the temperature in a more representative part of the room might at least reduce overshoot.

Edit: updated quotes to include aleco’s name

Philips Hue and also Danfoss Ally does exactly that with their own hubs, IE. create their own Zigbee network, but they can paired with a normal Zigbee network instead.

Homematic is not Zigbee, but use its own RF protocol, which I think is 868Mhz, so it does not interfere with Zigbee or WiFi (But probably with Z-Wave, though that frequency band is not that saturated yet).

1 Like

Very interesting, it appears the Danfoss Ally indeed does have a PID control loop on board. Thanks to your suggestion I found some interesting topics with plenty of useful information, some of which was posted by yourself.

Guess I’ll need to order one to see if fits the bill. Thanks!

I’ve standardized on Zigbee and hard wired ethernet and I’m trying to stick to that plan. It makes finding appropriate hardware a bit more of a chore at times, but keeping the setup fairly straightforward should make life easier after that.

That being said, if there truly is no other solution, including modifying existing hardware or building it myself, I definitely prefer the lower frequency stuff over cramming even more traffic into the 2.4 GHz band.

A very good practice, IMHO. :slight_smile:

Interesting. I’ve been using Eve Energy (HomeKit) for a few years, but later switched to Sonoff TRVZB. When Eve converted to Matter, they didn’t expose all entities, e.g. the calibration. It feels like they stopped caring about the product and therefore its integration into Matter-based smart homes.

Their internal regulation isn’t too bad, though. Here’s a screenshot from last night showing the last one I still have installed (in that room, the TRVZB doesn’t fit because it’s too long). Some of that “smartness” might come from the versatile_thermostat regulation, but it clearly shows that it’s not just a binary control:

I find it very useful – though the more I rely on Home Assistant, the more issues I face when either HA goes down or (more often) the Zigbee or Thread meshes act up. I really wish there were more redundancy. So I completely understand your desire to use hardware that can operate independently from HA.

I’ll experiment with it once it’s cold enough here during the day, so probably in a few more weeks.

@GOTO did you ever find a TRV that runs a local PID and supports partial opening of the valve and does not need a dedicated hub?

I am asking because I will be changing my oil heating to a heat pump this year and want to replace the simple time-based Eqiva TRVs (which work flawlessly btc, just without any comms) to a more sophisticated setup but I don’t want to rely on HA to run my heating, so the TRV need to run locally too witout HA if necessary.