Joining the Renewable Heating Hub forums is completely free and only takes a minute. By registering you’ll be able to ask questions, join discussions, follow topics you’re interested in, bookmark useful threads and receive notifications when someone replies. Non-registered members also do not have access to our AI features. When choosing your username, please note that it cannot be changed later, so we recommend avoiding brand or product names. Before registering, please take a moment to read the Forum Rules & Terms of Use so we can keep the community helpful, respectful and informative for everyone. Thanks for joining!
Here is the IAT vs OAT plot with regression lines for each of the four data sets added. I have done them as two plots (one for am, 0900, and one for pm, 2100) because putting them all on one gets far too busy. The regression lines are simple linear ones, y = a +b(x), not polynomial:
Great. I will try to zoom in to work out the deltas between the two lines unless you have an easy way to do that (which would be helpful). The 9pm one (which is arguably the more important) looks like a degree or maybe a bit less? I think @robs has a point about looking also earlier in the evening, although I would have hoped it was pretty stably by 4pm given your setback was 12hrs earlier.
Weather compensation plus my auto-adapt script, which temporarily moves the WCC up or down when the IAT is higher or lower than it should be. The IAT check and WCC adjustment if needed is done hourly, and the increments are one degree ie IAT one degree under, WCC goes one degree up etc, up to a maximum of three degrees either way. The recovery periods will thus be boosted by the auto-adapt script, depending on how far the IAT has dropped during the setback.
Thanks, thats clear.
This post was modified 3 weeks ago 3 times by JamesPa
4kW peak of solar PV since 2011; EV and a 1930s house which has been partially renovated to improve its efficiency. 7kW Vaillant heat pump.
I'm going to stop at that point because we risk going wildly off-topic.
Nonetheless, useful commentary in that it tells us 'smart' meters are not so much about letting consumers know much about their consumption — wasn't that supposed to be one of the big benefits of 'smart' meters? — as making it easier for electricity companies to read meters and in due course control supply. It really is very remarkable that the electricity companies have detailed data on consumption, and then make no effort to make it available to consumers, all the more so when it could be argued that 'my usage data belongs to me'. Given this latter point, I also find myself asking, why are the electricity companies so coy?
Midea 14kW (for now...) ASHP heating both building and DHW
Short of watermarking every post and every chart with 'N=1' there isn't much more I can do than I already have done, point out regularly that this is a n=1 study that may or may not be generalisable (may or may not because we don't know). That said, as I mentioned earlier, is there any reason to suppose it doesn't apply to properties similar to mine occupied by people who have a similar lifestyle to mine?
In our previous discussion about defrosts the data suggests that they do not increase consumption noticeably and the effect on IAT over multiple defrosts is also minimal, but more data would be useful.
I would go further and say essential. The whole point about collecting long time series data is to achieve a sort of regression to the mean, I have the noise cancel itself out. In the previous discussions, we only really looked at short periods. How do we know they were typical? We don't. A long data series will give us the answer.
If the target IAT is ~19C then why are almost all no setback IAT data points above this in both your 24 hour mean IAT vs OAT and 09:00 and 21:00 IAT charts? Reflected in: "the mean IAT for ... the no setback period it was 20.57°C", why when running with no setback wasn't the WC curve lowered to achieve the target IAT?
Part laziness (WCC adjustment fatigue), part whatever the actual IAT is, it is good enough for me (not too hot, not too cold), and more recently, a deliberate decision not to alter anything so that Spring 2026 could be more reasonably compared with Spring 2025, ie both had the same baseline WCC plus any auto-adapt adjustments.
Since the higher mean IAT without setback may well be, indeed almost certainly is, the mechanism by which no setback running uses more energy at moderate to lower OATs (it does, it is in the charts), this begs the question: have I once again not compared apples with apples? In other words, should I not lower the WCC during no setback running to achieve the same mean IAT as happens with setbacks? Or alternatively raise the setback WCC to achieve parity of mean IATs? The problem of course is in the doing of that. I will have to wait until next spring, and then tweak the WCC up or down depending on whether I am using setbacks or not to match the mean IATs from a period when I was using the opposite state.
More generally, I think within all that there may be a general conclusion. It is that all other things being equal (in particular, no change to the WCC), then setbacks do save energy, by reducing the mean IAT. I am mindful of the fact that at moderate to low OATs, the savings were around 10%, with around a one degree difference in mean IAT, which is broadly consistent with the lower your heating by one degree and you will save 10% off your bill rule of thumb. The key question is whether that lowering of mean daily IAT can be achieved while maintaining adequate mean hourly IATs during the hours when it matters.
And we are already looking at that question, by looking at the mean hourly IATs at 0900 and 2100. When I was extracting the data, I did wonder about using another pair of hours eg 0700 and 1900 as you suggest. Since the data extraction is straightforward using 'q - text as data' (see technical note * below), I have now done this for the 0700 and 1900 data, and plotted the results, which look like this no they don't, see below:
Note that the values are the means for the preceding hour eg the 0700 plot values are the means for 0600 to 0700. I am not often up at that hour.
Which indicates that 6 hours after the setback ended the IAT has not yet recovered to a truly comfortable temperature (target IAT) and only to a tolerable temperature (compromising comfort).
Comfort is in the hypothalamus of the contender, and I contend that in winter I am comfortable at an IAT anywhere between 18 and 21 degrees centigrade. The target IAT is just that, a target, or number, that dates back to the original design. What matters is what my Mark 1 Human Comfort Sensor tells me, and we all vary in that. Some want/need higher IATs, others prefer lower IATS, often at night.
*Technical note: 'q - text as data' is a very useful command line program that lets you run SQL queries on structured text files such as csv files. To get all the 0900 OAT and IAT values from March 2026 for example I just run the query "q -H -d , "select datetime, OAT, IAT from midea_hr_data.csv where datetime like '2026-03-__T09%'" | clip". The data ends up on the clipboard, ready to paste into a spreadsheet.
Unfortunately, this suggests something of an apples vs oranges comparison, the no setback data has an average IAT ~1.5C above your target IAT, while the setback IAT is still below your target IAT even 6 hours after the setback (and after most household's breakfast time) at lower OATs.
I agree, and have partly addressed this above. Because these are natural experiments / observational studies, we have what we have, and have to wait until the next natural iteration if we want to change what we can eg the WCC to achieve a different mean IAT. But I still think the general conclusion suggested in the paragraph above that starts 'More generally, I think...' remains valid, that all other things being equal (in particular, no change to the WCC), then setbacks, at least in my type of property, do save energy, by reducing the mean IAT. But at the same time I also suspect that if either the setback WCC was tweaked up to get the mean IAT to no setback levels, or vice versa, then the energy saving may well disappear. But here's the rub: in the former case, raising the setback WCC to get a mean IAT that matches the no setback mean IAT, may cause daytime hourly mean IATs to go above what is necessary, so as to get the mean daily IAT higher. In the real world, the best compromise may be to leave the WCC unchanged, save around 10%, and accept that on rare occasions when the OAT is very low (maybe four days in the chart above), the IAT is briefly around half a degree below ideal.
Edit 1145 16 May 2026: plot correction: Although the upper X axis in the plots above go below zero, such values got missed out. Here is the correct version, which does show more cold mornings when the IAT was at the lower limit of my comfort zone:
I will try to zoom in to work out the deltas between the two lines unless you have an easy way to do that (which would be helpful).
I can get both the fitted values, which are row specific ie depend on the OAT (ambient) value for that row, so in effect they are random, or the regression line equations, which may be more useful to you. Here are the equations in all their multiple decimal places glory with some clutter removed for these from the 0700 / 1900 data set. Naming conventions: df = data frame, sb = setback, nosb = no setback, 07 = 0700, 19 = 1900, the regression is as you can see a simple (x ~ y) one, the first (sb_07) equation is IAT = 18.85257 x (0.09351 x ambient):
I will try to zoom in to work out the deltas between the two lines unless you have an easy way to do that (which would be helpful).
I can get both the fitted values, which are row specific ie depend on the OAT (ambient) value for that row, so in effect they are random, or the regression line equations, which may be more useful to you. Here are the equations in all their multiple decimal places glory with some clutter removed for these from the 0700 / 1900 data set. Naming conventions: df = data frame, sb = setback, nosb = no setback, 07 = 0700, 19 = 1900, the regression is as you can see a simple (x ~ y) one, the first (sb_07) equation is IAT = 18.85257 x (0.09351 x ambient):
I dont have the time today to 'process' this but will in the next couple of days (which also gives me time to think more clearly about how to use the data!).
My gut feel is to correct for the 19:00 deficit (on the grounds that the same comfort level could also be achieved at 19:00 with the non setback case by reducing the temperature, which will reduce the energy required - and by making a correction the comparison is closer to apples for apples. My gut feel is also toregard the 07:00 deficit as a comfort factor to consider, on the grounds that I think a deficit at 0700 is inevitable (and thus a 'cost' of setback) if you reduce the temperature meaningfully overnight. The exception might be if you have a fan radiator in the 'breakfast room' (which, as it happens, I do), however thatys a whole load more complexity!
4kW peak of solar PV since 2011; EV and a 1930s house which has been partially renovated to improve its efficiency. 7kW Vaillant heat pump.
@jamespa — thanks. No rush, I posted a bit too hastily earlier and need to correct the plot once I realised it was not correct!
This may also be a rare occasion when it is worth not anchoring the Y axis to zero. Of course, everything gets greatly exaggerated visually, which is why marketing types like non-Y-zeroed plots, and is equally why generally I don't like them, but it does mean you can see individual data points better, which may have some virtue on this occasion. Here are the plots expanded to fill the available space. Note that both the x and the Y axes are not the same in range or scale, and so the two plots are not directly comparable. Instead, each should be considered on its own.
I can see eight data points in the upper plot where the mean IAT is between 17.5 and 18.0°C between 0600 and 0700. At the time, I would have been in bed. The setback comfort penalty almost certainly went unnoticed. By 0900, there was only one point below 18°C, and it was only just below. Again the axes differ, plots should be considered on their own:
The point I am making is that there may have been a measurable setback IAT penalty, but does that necessarily translate in to a human comfort penalty?
Midea 14kW (for now...) ASHP heating both building and DHW
The point I am making is that there may have been a measurable setback IAT penalty, but does that necessarily translate in to a human comfort penalty?
I agree, but in assessing the 'saving due to setback' its essential IMHO to take into account the 19:00 IAT deficit in order to compare the setback and no setback cases as close to like for like as is reasonably practical.
4kW peak of solar PV since 2011; EV and a 1930s house which has been partially renovated to improve its efficiency. 7kW Vaillant heat pump.
Short of watermarking every post and every chart with 'N=1' there isn't much more I can do than I already have done, point out regularly that this is a n=1 study that may or may not be generalisable (may or may not because we don't know). That said, as I mentioned earlier, is there any reason to suppose it doesn't apply to properties similar to mine occupied by people who have a similar lifestyle to mine?
Sorry that was less for you and more for others that have suggested that your findings provide a general proof of setbacks saving energy/money.
I would go further and say essential. The whole point about collecting long time series data is to achieve a sort of regression to the mean, I have the noise cancel itself out. In the previous discussions, we only really looked at short periods. How do we know they were typical? We don't. A long data series will give us the answer.
We did only look at short periods but the linear WC "curves" used by many heat pump manufacturers, which provide acceptable levels of control/comfort when heat pumps are defrosting, strongly suggests that no special case is needed to account for defrosts.
Part laziness (WCC adjustment fatigue), part whatever the actual IAT is, it is good enough for me (not too hot, not too cold), and more recently, a deliberate decision not to alter anything so that Spring 2026 could be more reasonably compared with Spring 2025, ie both had the same baseline WCC plus any auto-adapt adjustments.
Since the higher mean IAT without setback may well be, indeed almost certainly is, the mechanism by which no setback running uses more energy at moderate to lower OATs (it does, it is in the charts), this begs the question: have I once again not compared apples with apples?
Unfortunately I think so, as can be seen in the 07:00 chart below. The setback IAT is clearly decreasing with OAT, while the no setback IAT is rising with falling OAT.
In other words, should I not lower the WCC during no setback running to achieve the same mean IAT as happens with setbacks? Or alternatively raise the setback WCC to achieve parity of mean IATs? The problem of course is in the doing of that. I will have to wait until next spring, and then tweak the WCC up or down depending on whether I am using setbacks or not to match the mean IATs from a period when I was using the opposite state.
The simplest change would be to lower the no setback WC curve to produce IATs that correspond to the recovered setback IATs, and not the elevated IATs in the current data.
More generally, I think within all that there may be a general conclusion. It is that all other things being equal (in particular, no change to the WCC), then setbacks do save energy, by reducing the mean IAT. I am mindful of the fact that at moderate to low OATs, the savings were around 10%, with around a one degree difference in mean IAT, which is broadly consistent with the lower your heating by one degree and you will save 10% off your bill rule of thumb. The key question is whether that lowering of mean daily IAT can be achieved while maintaining adequate mean hourly IATs during the hours when it matters.
Note that the values are the means for the preceding hour eg the 0700 plot values are the means for 0600 to 0700. I am not often up at that hour.
The hours when it matters will depend on the household, many (the majority?) will be up and awake between 6-8am five days a week having breakfast and getting ready for work/education. Such households don't have the "luxury" of wating until after 9am for the heating to be restored to a comfortable level after a setback.
If there is a general conclusion I think it is along the lines of: the saving from a setback reflects the reduction in mean IAT but if the recovery from a setback can be achieved by the time required by the occupants will depend on the household's daily routine and IAT requirements when the occupants are awake.
Unfortunately, this suggests something of an apples vs oranges comparison, the no setback data has an average IAT ~1.5C above your target IAT, while the setback IAT is still below your target IAT even 6 hours after the setback (and after most household's breakfast time) at lower OATs.
I agree, and have partly addressed this above. Because these are natural experiments / observational studies, we have what we have, and have to wait until the next natural iteration if we want to change what we can eg the WCC to achieve a different mean IAT. But I still think the general conclusion suggested in the paragraph above that starts 'More generally, I think...' remains valid, that all other things being equal (in particular, no change to the WCC), then setbacks, at least in my type of property, do save energy, by reducing the mean IAT. But at the same time I also suspect that if either the setback WCC was tweaked up to get the mean IAT to no setback levels, or vice versa, then the energy saving may well disappear. But here's the rub: in the former case, raising the setback WCC to get a mean IAT that matches the no setback mean IAT, may cause daytime hourly mean IATs to go above what is necessary, so as to get the mean daily IAT higher.
The no setback WC curve could simply be lowered, especially at lower OATs, to produce IATs similar to the comfortable setback IATs. That would result in a more apples vs apples comparison, and yes, would likely see the energy consumption difference disappear.
Edit 1145 16 May 2026: plot correction: Although the upper X axis in the plots above go below zero, such values got missed out. Here is the correct version, which does show more cold mornings when the IAT was at the lower limit of my comfort zone:
Thank you for doing the 07:00 and 19:00 charts! I do have a question though, what is up with the two no setback data points circled in red below? Was the heating switched off at some point during the no setback trial period?
I agree, but in assessing the 'saving due to setback' its essential IMHO to take into account the 19:00 IAT deficit in order to compare the setback and no setback cases as close to like for like as is reasonably practical.
I too agree with what you say, and am grateful to you for looking into it.
We did only look at short periods but the linear WC "curves" used by many heat pump manufacturers, which provide acceptable levels of control/comfort when heat pumps are defrosting, strongly suggests that no special case is needed to account for defrosts.
Since the higher mean IAT without setback may well be, indeed almost certainly is, the mechanism by which no setback running uses more energy at moderate to lower OATs (it does, it is in the charts), this begs the question: have I once again not compared apples with apples?
Unfortunately I think so, as can be seen in the 07:00 chart below. The setback IAT is clearly decreasing with OAT, while the no setback IAT is rising with falling OAT.
Might this be explained by the lower OAT end of the WCC being a bit too high? With no setback, the heat pump more than keeps up, but with the setback, it has to do the recovery, and the lower the OAT. the more recovery it has to do, and so the lower the IAT at 0700.
The simplest change would be to lower the no setback WC curve to produce IATs that correspond to the recovered setback IATs, and not the elevated IATs in the current data.
This fits with what I have just said, the WCC, which was the same for both 2025 and 2026, although the lower IATs in 2025 will have triggered more auto-adaption, needs to be lower at the lower OAT end with no setback running. But if the same WCC is used with setback running, then the low OAT 0700 IATs will almost certainly go lower. Another example of how tricky the 'natural' experiments can be!
The hours when it matters will depend on the household, many (the majority?) will be up and awake between 6-8am five days a week having breakfast and getting ready for work/education. Such households don't have the "luxury" of wating until after 9am for the heating to be restored to a comfortable level after a setback.
My normal getting up time is 0700, which is not that unusual, and it means I am in bed during the hour when the 0700 value applies. But I fully take the point that households vary greatly in their habits, but all want the same thing, comfortable warmth when they get up in the morning.
I do have a question though, what is up with the two no setback data points circled in red below?
I noticed them as well, they are clearly outliers, and I meant to look into them, suspecting they may be from a few days at the very end of April 2026 when the heating was off but I forgot to delete the relevant rows. I have now done that, and the outliers have disappeared, see below.
I also did a double take on the subplot titles, 0700 and 0900 on the same one above the other plot???? Then I realised you had very neatly copied and pasted together the two morning plots...
Midea 14kW (for now...) ASHP heating both building and DHW
@transparent , thanks for the educational response; I wasn't aware of the Randomised Offset at all, which to a certain degree makes sense. Similar approaches are being used in many systems, thinking of Carrier Sense Multiple Access with Collision Detection in Ethernet, or even randomising the PWM in inverters to spread the switching frequencies and their harmonics a bit.
As for my supplier, we are with British Gas, and I have asked for the data several times; usually I get the response that I can use the web page to "see" the daily pattern, day by day, but they do not have a public API, say combined with an access token, that I could simply write a python script and download the data. Perhaps I will switch to Octopus, and if it is only for that reason.
My initial thought is do you actually need this level of detail (room and rad temps for every room etc)? It might be fun to collect it (and doing something just because it is fun (as long as it is also harmless) in the great British eccentric tradition is fine by me), but at the moment you are missing some key variables: short interval energy use, flow and return temps, central living area IAT (I use a modbus temp sensor for that) and possibly OAT (depends how the Viessman measures it). Is there any way you can hack your boiler to get some data from it without blowing it up?
@cathoderay , indeed, I do not need that level of detail, and I think from my first analysis I have more or less the information I was after: a) required power rating of a heat pump using various approaches; b) some quantification of the consequences when not upgrading my radiators.
Yes, as technology geek, I can't help wanting to understand the system under control, first by studying what is going on through instrumentation and measurements, then building models to help in control algorithm development. For instance, I am quite intrigued by Adia Thermal's way to control and dynamically balance radiators.
Yes, as technology geek, I can't help wanting to understand the system under control, first by studying what is going on through instrumentation and measurements, then building models to help in control algorithm development. For instance, I am quite intrigued by Adia Thermal's way to control and dynamically balance radiators.
You are right to be intrigued by it IMHO. SOFAIK it is the only system currently available that both controls the heat pump flow temperature and the flow through the radiators, in addition to measuring temperatures of individual rooms. This of course is 'ideal' if you want to have proper control of the system as a whole. By making various measurements it purports to be able to tell you which radiators would benefit from upsizing and what the effect would be as well as control it day to day. This is believable, it has all the data it just needs a clever way to process it it. The fact they are based in Cambridge and called Adia (as in adiabatic) suggests they may well know what they are doing! I have spoken to them a couple of times and its clear that they are bright!
They could accumulate a lot of data over time from systems they monitor which may well tell us more generally useful stuff!
That said, operating a heat pump on pure (well adjusted) weather compensation with reasonably well balanced radiators without TRVs works very well for many, including me! The problem with this approach is that it takes some tweaking, which cant readily be done in the time between when installers finish the plumbing and when many want to go home.
4kW peak of solar PV since 2011; EV and a 1930s house which has been partially renovated to improve its efficiency. 7kW Vaillant heat pump.