Thermostat controller temperature weighting needs additional error checking

Continuing the discussion from 2.2.4 - New App: Thermostat Controller:

Speaking to

Was wondering why my thermostat was constantly running, and during my digging I discovered that one of the temperature sensors used in the weighted calculation was reporting -273 degF. This was pretty far from true, and it threw off the calculation significantly... the weighted average was 31 degF or so, instead of 71. I fixed the issue with the device before I thought to screenshot the weighting calc page in the thermostat controller app (sorry).

A quick add to this particular function is requested: allow for user-input bounds on reasonable values from temperature sensors. Any sensor reporting outside these bounds will be ignored (perhaps a log entry indicating there's a sensor issue would be a nice touch).

1 Like

I'll look into it.


This feature will be in the next release (2.2.5). Already done.


Awesomely fast, thank you! Not sure if anyone at NYCE monitors these forums, but your ceiling mount motion sensor was reporting something very close to liquid oxygen temperature in my bathroom today.

All well built sensors will only report from -273°C to it's max scale, the reason being is that -273°C is 0°Kelvin or Absolute Zero, it just can't get any colder than that, all molecules stop moving at this temperature.

Actually -273°C is a common indicator that the actual temp probe is failing/not attached to the circuitry, when I worked in industrial automation we would plug in a display unit without a probe attached to it, it would always report -273°C. So you might want to keep an eye on that sensor.

Well, this was a bit above... -273 F. Perhaps it forgot the conversion? I think it's more of an initialization issue, since I rebooted my hub 3 minutes prior and clicking configure in the device page fixed it. Must have gotten confused when the Zigbee radio got back online

1 Like

Too bad it was the sensor, you could have stored vaccines at that temp :slight_smile:



New to HE 24 Dec '20 not new to HA though :slight_smile:

I have got the Heating System online - ZWAVE Secure SSr 302 up and working - with Virtual Device Sync working to break out the Central Heating and Hot Water, got all the Temp Sensors and Thermostats onboarded and the EuroTronic TRVs.

Also got Thermostat Controller up driving the TRV and Thermostat Scheduler up and running.

What I am struggling with how do I get The thermostat Controller to actually Turn turn On the Heating when required.

I cannot see a way to link a Thermostat Controller to the Heating system?

As I said new to HE so probably missing something really obvious

Any guidance would be welcome

It is 0 degrees C here and I am manually turning Boiler on an off when I see Heat Demand in play..

You may be misunderstanding what Thermostat Controller does. Its purpose is to control a conventional thermostat. Without a conventional thermostat, there is no reason to use Thermostat Controller. It does not replace a conventional thermostat.

@bravenel I probably am- still finding my way through HE!!


Thanks for responding and Happy New year!!

So what I have is Eurotronic Spriit zwave TRVs and Temp Sensors all around the house.

At the moment just three connected to HE.

Also connected to HE is the Secure SSR302 Dual Controller for Heating/Hot Water via zwave.

This is where I have gone wrong?

I have Created a Thermostat Controller based upon a Spirit TVR.

And added Temp Sensors related to the area the Spirit TVR is sat in.

Normally, based upon a few HA systems I have been evaluating, the TRV Controller can either set a Variable to indicate it wants Heat or it can turn on the Heating system directly.

Obviously the later requires a synchronisation between TRV Controllers, I tend to use the Variable Path and manage the Heating system directly so I can take in account other variables, AWAY, HOLIDAY (Vacation), GUEST Modes, etc etc

I think I figured it out and have built Rules that say If ANY Thermostat Controller State changes and is 'heating' then turn on heat


If ANY Thermostat Controller changes AND ALL thermostat Controllers State is NOT 'heating' then turn off heating

It seems to be working.

Am I missing something?

Hmmm I think something is being missed, you shouldn’t have to do anything with external rules. When you add the thermostat controller app, you specify the thermostat that should be controlled. As long as you set the app to controlled (and not free) it should be managing the thermostat to control temperature as necessary, turning it on and off as necessary.

You don't. But I don't have any real idea what you're talking about. Need to see screenshots of the Thermostat Controller setup, the controlled thermostat device pages, logs, etc.

This is exactly what Thermostat Controller does. So something isn't right about how you have it setup.

So how does the Thermostat Controller know how to turn on the Central Heating Boiler?

I cannot see any config for that.

Where on this is the place where I point it to the Central Heating Boiler to to Turn On?

I understand The TRV Controller controls the TRV but not how it controls the switch for the boiler?

Sorry if I am missing the point - not deliberately :slight_smile:

What @habitat is doing is what a lot of owners with eTRV's would be doing.

This is not like US Thermostats which are attached to HVAC systems. These Thermostats are simply devices that electronically (Z-Wave usually) call for heat when their setpoint is reached or go idle when the setpoint temperature is reached. These Thermostats need something to monitor their operating state and drive a boiler switch, like the "Secure Z-Wave SSR302", based on that state.

@habitat I have posted the app I wrote to drive my boiler here.....

Ok so as I understand it this US centric?

In the US the Thermostat is connected to the boiler directly, outside of HE.

OK understand the confusion now.

@simon Thanks for pointing that out.

@simon also thanks for the boiler controller app. I need to think it through some.

But at the moment considering a way I have done it before.

Create a Rule with a Trigger if ANY of the Thermostatic Controllers state changes copy the state of each Thermostatic Controllers each to its own variable

Then a trigger to detect any changes in the Thermostatic Controllers state Variables if any of them is Heat - check other variables, Guest Mode/ Vacation / Summer / Hot Water Demand / Away and if appropriate turn on heating boiler.

For reasons I cannot explain here I like having only ONE place where heating is turned on/ off, and can easily add in new conditions in one place later if required

And this is the reason why in ST and HE that Thermostats have fan and cooling settings.... things that frequently make no sense to people using Thermostats with boilers and radiators.....

Any chance you can add the feature to change the weightings at different times of day?
Right now I have to move the temperature sensor in to my kid's room at night and move it back downstairs in the morning.

You could use a virtual temperature sensor in Thermostat Controller, and set it with a rule to one of two real sensors depending on time of day.

Thank you. Great idea. I think I got it working...

1 Like

Download the Hubitat app