Add new metric - comfort score

If you are maintaining the same temperature in your house, you will always need the same heat energy for that - even the most advanced control system cannot work its way around the physics. If you need less heat than similar sized properties this means you have better insulation and/or air tightness and/or more favourable external climate conditions.

I would go so far to say that any gains in efficiency due to a control system like your thermostat should only be compared within the same house and not between different houses as the uncertainties will completely drown out the “signal”.

2 Likes

Thanks @Andre_K you are right, it is only an estimated comparison. It’s the best one I could come up with :smiling_face:

You could compare against properties with the same ‘Heat loss at design temperature’ or same annual ‘Assessed space heat demand’, though these are both estimated rather than measured.

Variation in hot water usage will also skew results, so try to factor that in (or out).

1 Like

I don’t understand what this calculation is supposed to show, but it doesn’t look right. A more typical presentation would be cost per kWh of heat.

For example: gas price ÷ boiler efficiency = 6.24p ÷ 0.95 = 6.57 p/kWh
electric price ÷ heatpump efficiency = 24.5p ÷ 4.0 = 6.125 p/kWh

(using current price cap prices for UK)

This makes it easy to compare the cost of the two heating systems in the same house, as all other variables will be the same.

1 Like

Thanks @Timbones :smiling_face:

Let’s put it another way - >

Heat pumps have opportunity to be even more efficient if they had more precise control over heat output :smiling_face_with_three_hearts:

I did another run where heat loss value is not 0 and less or equal than 6, and here are the results:

Heat Pumps *average
in 130.6 kWh
out 511.5 kWh
COP 3.9
Mean Room Temp 19.8°C

Boiler
in 425.0 kWh
out 402.5 kWh
Efficiency 94.7%
Mean Room Temp 20.5°C

*[0 < ‘Heat Loss’ <=6, ‘Floor Area’ = 185±30]

0.15838£/kWh is equivalent Heat Pump electricity boiler cost < 7 days
Boiler Input/Output Ratios to Heat Pump≈3.254/0.787
Adj. Input Ratio≈2.561 [0.787*3.254]
2.561 * 0.06185 (avg gas £/kWh) = 0.15838

Indeed, a well installed heat pump with correct controls will control its heat output very precisely using a combination of weather + load compensation. It’s the poor system design, oversizing and incorrect controls that cause some to under perform.

I still don’t follow what this calculation is. 0.15838£/kWh seems way too expensive. Can you explain it?

1 Like

Here’s a paper a found [link below], which looks at thermostats with different precision levels.

According to the study:

  1. Precision Impact on Savings:
  • A thermostat with 0.1°C precision achieves energy savings nearly identical to theoretical adaptive setpoints, enabling optimal use of heating and cooling strategies.
  • Thermostats with 1°C precision (common in older HVAC systems) result in significantly reduced energy savings. In some cases, energy consumption can even increase compared to static operational patterns due to the inability to finely tune the setpoints.
  1. Energy Consumption Variations:
  • In heating, the energy consumption increases by 22.44% on average when using a thermostat with 1°C precision compared to 0.1°C precision in the current climate scenario​

Quote from the paper

In the current scenario, an average increase in annual

heating energy consumption of 1.02, 10.47 and 22.44% was obtained

with AP-2, AP-3, and AP-4, respectively, and in the annual cooling

energy consumption, the increase percentages were greater: 5.09%

with AP-2, 41.40% with AP-3, and 76.44% with AP-4.

In simpler terms, here’s what this means:

  • Heating energy use:
    • If the thermostat is very precise (AP-2, accurate to 0.1°C), the extra energy used for heating is very small—just 1.02% more compared to an ideal thermostat.
    • If the thermostat is less precise (AP-3, accurate to 0.5°C), heating energy use increases by 10.47%.
    • With the least precise thermostat (AP-4, accurate to 1°C), heating energy use jumps by 22.44%.

https://www.sciencedirect.com/science/article/abs/pii/S037877882100308X

bienvenido-huertas2021.pdf (8.0 MB)

So again, if your heating source (whether it’s boiler or heat pump), cannot work down to 0.1 precision, then your property might be missing on about 20% energy savings :slight_smile:

The short answer is: No :smiley:.

The long answer:

Let’s not look at the paper and instead start with the basic physics and a quick worst-case estimate. Let’s say we have to heat for 220 days a year and during that heating period accumulate 2500 degree days (should be somewhat representative of London) with an internal setpoint of 20°C. My crappy thermostat however delivers 21°C all the time (very precise, but not accurate). This means that every day I accumulate one extra degree day, ending up with 2720. Thanks to linearity of the underling physics, this translates to an 8.8% increase heating energy use; with heat pumps the electrical energy use increase will be slightly higher because of the reduced COP at higher flow temperatures.

One thing to note here: The added degree days scale with the number of days where I use my heating per year and have to be put in relation to the total accumulated degree days. For colder climates, like in Germany, we get closer to 3800 degree days per year and assuming the same number of days for heating the increased energy use already drops to 5.8%. The article you cite is for Spain, which is much warmer and 1°C inaccuracy will have a higher impact. But they are also probably heating for less days during the year.

In reality things will be much different. If I feel too warm after setting to 20°C and getting 21°C, I will reduce the setpoint and the problem is solved. Real thermostats will however not simply systematically over- or underestimate but rather oscillate around the setpoint with varying amplitude - let’s use 1°C again. So the temperature will overshoot, but also undershoot. The nice thing about the linearity is that we just have to care about the average temperature. When it’s 21°C, we use slightly more energy, when it’s 19°C we use slighly less. Over a year (or even shorter timeframes like a day), it takes the same energy to keep the house at exactly 20°C compared to having it oscillate by ±1°C, provided the average temperature is 20°C.

Finally, let’s quickly look at the paper. They are analyzing an adaptive setpoint technique where (for the heating part) they reduce indoor temperature when it’s colder and increase it when it’s warmer. This of course leads to savings. If the adaptive model calls for 22.268 °C but my thermostat can only be set to 23°C, then of course I will use more energy. This is a discretization error, and if their adaptive energy savings model is built based on continuous temperature adjustability then it is not surprising that quantization/discretization errors can lead to large deviations from the desired result - this is a well-known issue in a number of fields. So what they are saying is that for their adaptive setpoint model, a thermostat adjustability of only ±1°C leads to increased energy use - probably also because they seem to always round towards the next highest integer and never down. This has exactly nothing to do with what most people here are doing: Keeping their house constantly at a temperature they find comfortable and affordable.

Thanks for coming to my TED talk :smiley:.

4 Likes

Thank you André! I respect your important points raised and I also politely disagree :smiling_face_with_three_hearts: In general, I encourage that we promote for our heating controls to become more open source and more configurable, not less :smiling_face_with_three_hearts:

Which points do you disagree with? You can disagree all you want with the physics, but it’s not going to change reality.

At no point did I advocate for less or closed source controls. I just stated that the benefits of these high accuracy controls in terms of energy savings was severely overstated by you.

1 Like

With open source, we could swiftly test the algorithm on heat pumps and then celebrate our enhanced efficiency at a cozy pub with excellent German beer and Wurst :blush::+1::beer::hotdog:

Hi everyone,

is it possible to add Frequency to the APP MY HEATPUMP dashboard?
I can fined it anywhere, maybe someone can point me to the right direction.

@Andre_K @Timbones @TrystanLea

How about using standard deviation to calculate the comfort score for any selected period of time? 2σ as shown in the image gives a way to calculate a value without having to know what the target room temperature is. A value of 2σ = 0°C would be 100%, and let’s say 2σ = 10°C would be 0%. Then, anything between would give us an actual score?

Here’s the full Comfort Score ranking. The data below is for the period “2025-Jan-01 00:00” --end “2025-Feb-19 23:59” which was the coldest period for many. Some heat pumps are missing as they didn’t have > 85% roomT data available for the selected period.

@TrystanLea @Zarch @Timbones @Andre_K @UrbanPlumber

Ranking Heat Pump ID / Boiler Comfort Score Mean Room Temperature Mean Range (2 σ) % within ±0.5 °C of mean Time within ±0.5 °C (days) Mean+1 σ Mean-1 σ Mean+0.5 °C Mean-0.5 °C
1 boiler 97.68997464 20.50947643 0.231002536 99.12265702 49.31128472 20.6249777 20.39397516 21.00947643 20.00947643
2 436 96.30195076 19.96952439 0.369804924 98.35109135 48.84565972 20.15442686 19.78462193 20.46952439 19.46952439
3 261 94.45110992 19.75638225 0.554889008 93.34846773 45.47447917 20.03382676 19.47893775 20.25638225 19.25638225
4 280 93.86514626 21.97065127 0.613485374 88.77485007 44.07378472 22.27739396 21.66390859 22.47065127 21.47065127
5 249 93.59009155 19.27768568 0.640990845 89.14116273 43.0578125 19.59818111 18.95719026 19.77768568 18.77768568
6 37 93.38766549 20.84752512 0.661233451 93.05038646 45.79322917 21.17814184 20.51690839 21.34752512 20.34752512
7 215 93.36843562 22.37275636 0.663156438 86.93346141 43.36666667 22.70433458 22.04117814 22.87275636 21.87275636
8 196 92.38761611 20.18362561 0.761238389 86.39338164 42.33350694 20.5642448 19.80300641 20.68362561 19.68362561
9 8 92.03207356 18.25168983 0.796792644 82.54757117 41.26475694 18.65008615 17.8532935 18.75168983 17.75168983
10 301 91.84566062 21.77474382 0.815433938 76.12651341 37.50763889 22.18246079 21.36702685 22.27474382 21.27474382
11 527 91.74950716 20.7161001 0.825049284 81.45516474 39.52569444 21.12862475 20.30357546 21.2161001 20.2161001
12 288 91.6762528 20.71666183 0.83237472 79.86545526 34.68836806 21.13284919 20.30047447 21.21666183 20.21666183
13 407 91.66629699 20.83943022 0.833370301 77.30359558 38.10208333 21.25611537 20.42274507 21.33943022 20.33943022
14 115 91.59001173 19.65804052 0.840998827 75.57634843 37.45503472 20.07853993 19.23754111 20.15804052 19.15804052
15 46 91.36874878 20.87490799 0.863125122 76.35732817 38.1703125 21.30647055 20.44334543 21.37490799 20.37490799
16 11 91.28988586 21.18239897 0.871011414 66.07134373 31.38767361 21.61790468 20.74689327 21.68239897 20.68239897
17 344 91.19699645 19.63604805 0.880300355 72.33238938 35.87447917 20.07619823 19.19589787 20.13604805 19.13604805
18 59 90.92243201 20.00578834 0.907756799 74.37767115 34.95711806 20.45966674 19.55190994 20.50578834 19.50578834
19 71 90.90916797 20.50117188 0.909083203 72.32027339 35.71215278 20.95571348 20.04663028 21.00117188 20.00117188
20 350 90.72546097 22.5965976 0.927453903 78.80363828 37.934375 23.06032455 22.13287065 23.0965976 22.0965976
21 321 90.5512454 19.45763835 0.94487546 71.11569481 35.25572917 19.93007608 18.98520062 19.95763835 18.95763835
22 445 90.42126576 18.90927243 0.957873424 70.17713571 34.38350694 19.38820914 18.43033572 19.40927243 18.40927243
23 364 90.40205295 19.39863835 0.959794705 70.95425943 34.63072917 19.87853571 18.918741 19.89863835 18.89863835
24 208 90.27602138 20.87390809 0.972397862 71.36673695 34.49305556 21.36010703 20.38770916 21.37390809 20.37390809
25 329 90.18058267 19.13541539 0.981941733 75.93362437 37.95850694 19.62638626 18.64444452 19.63541539 18.63541539
26 607 90.17457217 17.39899826 0.982542783 68.33579398 31.74114583 17.89026966 16.90772687 17.89899826 16.89899826
27 326 90.04905695 20.3799 0.995094305 72.53908708 36.22256944 20.87744715 19.88235285 20.8799 19.8799
28 210 89.97668796 22.92952178 1.002331204 67.73137521 30.89079861 23.43068738 22.42835618 23.42952178 22.42952178
29 160 89.71704664 18.22053369 1.028295336 69.13070316 34.02586806 18.73468136 17.70638602 18.72053369 17.72053369
30 508 89.65769572 20.8110113 1.034230428 68.03286997 33.79166667 21.32812652 20.29389609 21.3110113 20.3110113
31 428 89.50598247 20.20802072 1.049401753 66.72890517 33.0703125 20.7327216 19.68331985 20.70802072 19.70802072
32 159 89.2502582 20.80527529 1.07497418 76.39989763 37.83559028 21.34276238 20.2677882 21.30527529 20.30527529
33 499 89.13017193 19.23169562 1.086982807 72.89179021 34.04097222 19.77518702 18.68820421 19.73169562 18.73169562
34 458 89.12203837 18.09488589 1.087796163 70.97179574 33.8265625 18.63878397 17.55098781 18.59488589 17.59488589
35 265 89.10118423 19.80307093 1.089881577 61.00747906 30.17847222 20.34801172 19.25813014 20.30307093 19.30307093
36 521 89.04606701 20.0850218 1.095393299 61.59665546 30.49045139 20.63271845 19.53732515 20.5850218 19.5850218
37 140 89.01094885 20.43985318 1.098905115 62.87310756 31.19739583 20.98930574 19.89040062 20.93985318 19.93985318
38 223 88.85475354 19.16042217 1.114524646 58.4358901 28.35763889 19.71768449 18.60315984 19.66042217 18.66042217
39 138 88.8227115 21.52400147 1.11772885 64.61246683 31.99809028 22.0828659 20.96513705 22.02400147 21.02400147
40 262 88.63775292 19.60159754 1.136224708 63.25320831 29.325 20.16970989 19.03348519 20.10159754 19.10159754
41 416 88.63257683 20.33378921 1.136742317 61.19204393 29.54184028 20.90216037 19.76541805 20.83378921 19.83378921
42 300 88.60614291 20.10550424 1.139385709 71.06230144 34.21267361 20.67519709 19.53581138 20.60550424 19.60550424
43 345 88.45259777 22.12505588 1.154740223 62.00493396 29.80295139 22.70242599 21.54768577 22.62505588 21.62505588
44 548 88.38782255 19.09363888 1.161217745 57.65668562 25.41979167 19.67424776 18.51303001 19.59363888 18.59363888
45 556 88.13441492 18.22141861 1.186558508 63.249024 28.38003472 18.81469787 17.62813936 18.72141861 17.72141861
46 448 88.13252305 20.98762117 1.186747695 55.65184057 27.47239583 21.58099501 20.39424732 21.48762117 20.48762117
47 552 87.76752323 18.72257107 1.223247677 68.71787556 29.26892361 19.33419491 18.11094723 19.22257107 18.22257107
48 380 87.711439 19.27795766 1.2288561 57.20524017 27.65555556 19.89238571 18.66352961 19.77795766 18.77795766
49 282 87.66132792 21.43171714 1.233867208 46.23667492 20.87361111 22.04865075 20.81478354 21.93171714 20.93171714
50 545 87.57863608 19.71888902 1.242136392 60.81485186 30.1875 20.33995722 19.09782083 20.21888902 19.21888902
51 151 87.56896409 19.87651402 1.243103591 65.21404777 32.38975694 20.49806582 19.25496223 20.37651402 19.37651402
52 239 87.42388725 23.34813671 1.257611275 63.22078929 29.45572917 23.97694235 22.71933107 23.84813671 22.84813671
53 519 87.32649218 21.80071526 1.267350782 83.2633188 39.81302083 22.43439065 21.16703986 22.30071526 21.30071526
54 533 87.32612154 19.18332522 1.267387846 58.14626524 28.81197917 19.81701915 18.5496313 19.68332522 18.68332522
55 313 87.31463094 19.66511341 1.268536906 55.733962 27.33489583 20.29938186 19.03084495 20.16511341 19.16511341
56 75 87.21020902 20.70904008 1.278979098 54.29530578 26.84375 21.34852963 20.06955053 21.20904008 20.20904008
57 381 87.14811895 17.79901147 1.285188105 55.12282202 25.73211806 18.44160552 17.15641742 18.29901147 17.29901147
58 232 87.1343409 20.64656545 1.28656591 55.19452175 27.44097222 21.2898484 20.00328249 21.14656545 20.14656545
59 479 87.05895064 19.75075067 1.294104936 62.1533628 30.29253472 20.39780314 19.1036982 20.25075067 19.25075067
60 379 87.03071738 18.73016021 1.296928262 52.76419392 26.28142361 19.37862434 18.08169608 19.23016021 18.23016021
61 139 86.80293784 19.69089348 1.319706216 55.93846219 27.53541667 20.35074659 19.03104037 20.19089348 19.19089348
62 307 86.75594627 22.5209502 1.324405373 54.68405889 26.85642361 23.18315289 21.85874752 23.0209502 22.0209502
63 363 86.60867554 21.15645059 1.339132446 61.40538912 30.43628472 21.82601681 20.48688437 21.65645059 20.65645059
64 424 86.41680409 19.75376832 1.358319591 52.65499421 24.53402778 20.43292811 19.07460852 20.25376832 19.25376832
65 470 86.41638239 20.56990973 1.358361761 64.76365393 31.8953125 21.24909061 19.89072884 21.06990973 20.06990973
66 431 86.41603571 19.50510194 1.358396429 55.24669539 27 20.18430015 18.82590372 20.00510194 19.00510194
67 372 86.3714965 20.44862171 1.36285035 51.40842194 24.0328125 21.13004689 19.76719654 20.94862171 19.94862171
68 72 86.33007434 19.80908387 1.366992566 50.18957819 23.55572917 20.49258015 19.12558759 20.30908387 19.30908387
69 312 86.27628281 23.51444134 1.372371719 54.20526018 27.09670139 24.2006272 22.82825548 24.01444134 23.01444134
70 370 85.89880751 20.89405295 1.410119249 52.48953631 24.92934028 21.59911258 20.18899333 21.39405295 20.39405295
71 237 85.89513266 20.17864426 1.410486734 52.33459919 25.52847222 20.88388763 19.4734009 20.67864426 19.67864426
72 346 85.27520575 20.25887312 1.472479425 57.04624575 28.24947917 20.99511283 19.52263341 20.75887312 19.75887312
73 390 85.10904595 20.65681127 1.489095405 46.25908478 22.92916667 21.40135897 19.91226357 21.15681127 20.15681127
74 457 85.00167198 20.84778342 1.499832802 51.19441421 24.74583333 21.59769982 20.09786702 21.34778342 20.34778342
75 68 84.96089643 19.23681501 1.503910357 48.58050847 23.88541667 19.98877019 18.48485983 19.73681501 18.73681501
76 64 84.87822376 19.92466816 1.512177624 59.38212877 29.14930556 20.68075697 19.16857934 20.42466816 19.42466816
77 462 84.83067431 21.59818262 1.516932569 53.92791598 26.68055556 22.3566489 20.83971633 22.09818262 21.09818262
78 375 84.6574146 21.20261588 1.53425854 36.42612884 18.10486111 21.96974515 20.43548662 21.70261588 20.70261588
79 56 84.6177025 20.30382273 1.53822975 47.15118965 23.56388889 21.07293761 19.53470786 20.80382273 19.80382273
80 314 84.54681639 20.76538142 1.545318361 52.31894719 24.81961806 21.5380406 19.99272224 21.26538142 20.26538142
81 213 84.49405973 19.77714139 1.550594027 47.89347818 23.32986111 20.5524384 19.00184438 20.27714139 19.27714139
82 95 84.40654219 19.7002814 1.559345781 54.63681596 26.9 20.47995429 18.9206085 20.2002814 19.2002814
83 231 84.3155846 22.12824725 1.56844154 44.92457894 21.825 22.91246802 21.34402648 22.62824725 21.62824725
84 439 84.31413943 18.91859099 1.568586057 49.46327334 24.31128472 19.70288402 18.13429796 19.41859099 18.41859099
85 309 84.21094712 22.43529613 1.578905288 51.21809271 25.05711806 23.22474878 21.64584349 22.93529613 21.93529613
86 517 83.90382566 22.33400108 1.609617434 56.92157171 28.28142361 23.1388098 21.52919236 22.83400108 21.83400108
87 43 83.89701057 20.62681833 1.610298943 49.76961171 24.07777778 21.4319678 19.82166886 21.12681833 20.12681833
88 518 83.8432348 20.50080954 1.61567652 45.3316544 22.43767361 21.3086478 19.69297128 21.00080954 20.00080954
89 334 83.68408742 22.93756057 1.631591258 51.65430701 24.07673611 23.7533562 22.12176494 23.43756057 22.43756057
90 507 83.55361882 20.77297868 1.644638118 52.48789126 25.83142361 21.59529774 19.95065962 21.27297868 20.27297868
91 477 83.55135488 21.25048115 1.644864512 53.29463473 26.12482639 22.07291341 20.42804889 21.75048115 20.75048115
92 332 83.16890129 19.26111523 1.683109871 61.39513601 29.81597222 20.10267016 18.41956029 19.76111523 18.76111523
93 571 83.07407139 21.09394122 1.692592861 52.60595045 23.01336806 21.94023765 20.24764478 21.59394122 20.59394122
94 511 83.02579197 20.41568433 1.697420803 48.92654355 23.71111111 21.26439473 19.56697393 20.91568433 19.91568433
95 512 82.96114219 17.96038928 1.703885781 50.35400952 24.16336806 18.81233217 17.10844639 18.46038928 17.46038928
96 506 82.72483493 18.78584416 1.727516507 56.41087605 27.55798611 19.64960241 17.92208591 19.28584416 18.28584416
97 441 82.71004367 21.0597091 1.728995633 52.85127202 25.43072917 21.92420692 20.19521129 21.5597091 20.5597091
98 371 82.70952414 18.87605481 1.729047586 36.85442292 18.18055556 19.7405786 18.01153101 19.37605481 18.37605481
99 357 82.66301209 18.85499196 1.733698791 49.40649488 24.0703125 19.72184136 17.98814257 19.35499196 18.35499196
100 258 82.65292875 19.44297517 1.734707125 52.25601069 25.79097222 20.31032873 18.57562161 19.94297517 18.94297517
101 665 82.43020831 22.09542851 1.756979169 39.83877133 19.90486111 22.9739181 21.21693893 22.59542851 21.59542851
102 7 82.23594199 20.69732096 1.776405801 37.63274553 17.9953125 21.58552386 19.80911806 21.19732096 20.19732096
103 382 82.14222113 18.46194778 1.785777887 44.21584187 21.28194444 19.35483672 17.56905883 18.96194778 17.96194778
104 467 82.12457747 19.42650117 1.787542253 48.82610734 24.04253472 20.32027229 18.53273004 19.92650117 18.92650117
105 331 81.93616793 20.42071756 1.806383207 38.51640863 19.08628472 21.32390917 19.51752596 20.92071756 19.92071756
106 417 81.9288585 20.07511161 1.80711415 46.71958989 23.13211806 20.97866868 19.17155453 20.57511161 19.57511161
107 391 81.92551103 19.46746521 1.807448897 53.5579385 25.67517361 20.37118966 18.56374077 19.96746521 18.96746521
108 284 81.78804229 19.56687614 1.821195771 49.39109897 24.39791667 20.47747403 18.65627826 20.06687614 19.06687614
109 542 81.72511437 19.51308894 1.827488563 48.70753181 24.04097222 20.42683323 18.59934466 20.01308894 19.01308894
110 429 81.51991367 21.90189819 1.848008633 41.21129645 20.39930556 22.82590251 20.97789388 22.40189819 21.40189819
111 204 81.11149832 20.26279966 1.888850168 52.13336409 25.50416667 21.20722474 19.31837458 20.76279966 19.76279966
112 444 81.06369177 20.17590244 1.893630823 35.22054411 16.91527778 21.12271785 19.22908702 20.67590244 19.67590244
113 351 80.60601427 19.00719522 1.939398573 41.06706528 19.84166667 19.97689451 18.03749593 19.50719522 18.50719522
114 241 80.13318942 19.11573699 1.986681058 33.81145364 15.46944444 20.10907752 18.12239646 19.61573699 18.61573699
115 61 80.04112544 21.02585212 1.995887456 38.90863255 19.29253472 22.02379585 20.0279084 21.52585212 20.52585212
116 510 79.81282697 19.98470261 2.018717303 33.50082552 16.23958333 20.99406126 18.97534396 20.48470261 19.48470261
117 405 79.80348392 21.08234798 2.019651608 36.79200045 18.11597222 22.09217378 20.07252218 21.58234798 20.58234798
118 423 79.15175529 19.66527741 2.084824471 34.76139517 16.63628472 20.70768964 18.62286517 20.16527741 19.16527741
119 525 78.96712587 8.666945472 2.103287413 49.51914471 21.13263889 9.718589179 7.615301766 9.166945472 8.166945472
120 433 78.26329946 18.80480566 2.173670054 42.18785512 20.94722222 19.89164069 17.71797063 19.30480566 18.30480566
121 154 77.82729981 21.66934196 2.217270019 40.68816788 18.96527778 22.77797697 20.56070695 22.16934196 21.16934196
122 409 76.99957206 17.76283912 2.300042794 34.73317735 16.1078125 18.91286052 16.61281773 18.26283912 17.26283912
123 264 76.9135872 17.36617097 2.30864128 39.22978251 19.06111111 18.52049161 16.21185033 17.86617097 16.86617097
124 227 76.8611202 19.55559319 2.31388798 49.70241593 24.2265625 20.71253718 18.3986492 20.05559319 19.05559319
125 367 76.6152778 21.73550242 2.33847222 26.76346601 12.37777778 22.90473853 20.56626631 22.23550242 21.23550242
126 373 76.2023446 18.94306283 2.37976554 29.51867229 14.35555556 20.1329456 17.75318006 19.44306283 18.44306283
127 613 76.14669958 17.48302776 2.385330042 51.00360448 22.72361111 18.67569278 16.29036274 17.98302776 16.98302776
128 553 75.86609542 19.46831573 2.413390458 49.38266364 22.21336806 20.67501096 18.2616205 19.96831573 18.96831573
129 122 75.8382196 20.96396491 2.41617804 38.09273611 18.62847222 22.17205393 19.75587589 21.46396491 20.46396491
130 305 74.90898131 20.14842413 2.509101869 7.114106656 3.525694444 21.40297506 18.89387319 20.64842413 19.64842413
131 266 74.78144485 19.49982562 2.521855515 29.00292749 14.29305556 20.76075338 18.23889787 19.99982562 18.99982562
132 531 73.97782979 19.71773203 2.602217021 42.75960061 21.21180556 21.01884054 18.41662352 20.21773203 19.21773203
133 174 72.59653975 18.61302042 2.740346025 36.79020485 17.82517361 19.98319344 17.24284741 19.11302042 18.11302042
134 173 68.4747227 16.90080002 3.15252773 35.3722429 16.91388889 18.47706389 15.32453616 17.40080002 16.40080002
135 97 67.07519172 18.45976344 3.292480828 16.66758985 7.836111111 20.10600385 16.81352302 18.95976344 17.95976344
136 451 67.01057486 18.66571681 3.298942514 13.9944712 6.846527778 20.31518806 17.01624555 19.16571681 18.16571681
137 555 65.65915944 21.61985706 3.434084056 18.26578424 8.696701389 23.33689909 19.90281503 22.11985706 21.11985706
138 162 65.46105941 19.76708976 3.453894059 72.34759096 36.13975694 21.49403679 18.04014273 20.26708976 19.26708976
139 211 64.89503207 19.33912296 3.510496793 27.12528662 13.20572917 21.09437135 17.58387456 19.83912296 18.83912296
140 295 64.45281225 19.6776221 3.554718775 31.72291044 15.47152778 21.45498148 17.90026271 20.1776221 19.1776221
141 290 63.40668865 16.95259957 3.659331135 15.96841038 7.793055556 18.78226514 15.122934 17.45259957 16.45259957
142 442 61.45088688 19.69206067 3.854911312 28.66491151 13.08055556 21.61951633 17.76460502 20.19206067 19.19206067
143 386 54.81660646 15.74014676 4.518339354 28.48098816 14.05086806 17.99931643 13.48097708 16.24014676 15.24014676
144 341 43.1223546 19.05242033 5.68776454 16.0811554 7.970138889 21.8963026 16.20853806 19.55242033 18.55242033
145 248 42.15707704 19.88245385 5.784292296 19.07875165 9.463888889 22.77459999 16.9903077 20.38245385 19.38245385
146 377 24.31173532 18.83233751 7.568826468 5.846881863 2.870138889 22.61675074 15.04792428 19.33233751 18.33233751






That’s an impressive amount of work, very nice!

I must say though that I’m not convinced this is the right approach. Without knowing the target this is just the standard deviation. There are lots of people using setback overnight or might warm the house up for specific times. That’s for their comfort but gets “punished” in the model. Different sensor locations, outliers, solar gain, intermittent ventilation boosts (German Stoßlüften :sweat_smile:) all enter here. An RMS deviation from a target value would be a start as I mentioned previously; after careful outlier filtering (look at the 2nd place) and gating for periods where the occupants care about the temperature. With thermal inertia being as it is, the heat pump has zero control over the cooldown period and the ramp-up can only be accelerated by increasing power and reducing COP. It would be very very tough to get anything truly comparable.

3 Likes

Thanks! You are right, there are many factors. It took me weeks to find a sensor location that minimises stray heat from the TV, kettle, or people passing by. However, I’d like to install MVHR in the future and even that spot would get affected then. Stoßlüften is ingenious :slight_smile:

The beauty of this approach is its simplicity: no extra user configuration is required

Maybe instead of calling it Comfort Score which implies that all these factors are weighed and accounted for (maybe in the future), we could give this metric a more general name, e.g.

  • Thermal Steadiness Index
  • Room Temperature Stability Score

That way, users can compare their system with another and answer the kind of questions you raised as complexity factors! e.g. “By how much do room‑temperature swings increase under a variable‑rate electricity tariff—where the setpoint is raised during certain hours to maximise savings—compared with a flat‑tariff system?”

Interesting thread!

I’ve been monitoring whole house room-by-room temperatures for over a year now using 11 sensors logging to Home Assistant.

The heat pump was installed last June, with the Vaillant SensoComfort controls in a central location internal wall downstairs, and an emonTH on an internal wall in the N facing bedroom above. The weather compensation sensor is on a N facing wall. I’ve been running my heat pump purely on weather compensation so far, so the SensoComfort thermostat is not being used to control the heat pump.

It’s been really interesting watching temperature variation day by day and room by room. Solar gain is really obvious from the graphs, far more than any wind effect.

I much prefer the term Room Temperature Stability Score to Comfort Score because using just one temperature sensor only indicates the temperature stability of, as you say, one carefully chosen room, which may or may not be a room you spend much time in.

Some rooms in my house suffer from a big temperature range mainly due to fabric/airtightness and solar gain, whereas the SensoComfort and emonTH were carefully located to avoid solar gain, and both are in rooms the original house with similar heat losses. A full set of room sensors in a certified Passivhaus would I’m sure tell a different story!

2 Likes

Well… Still a big influence from solar gain in my Passivhaus. There’s fixed shading to keep out the summer sun but the winter sun (intentionally) gets in under the shading and heats the south-facing rooms, some of which have a lot of (triple) glazing. Obviously the free heating is A Good Thing but it does lead to temperature variations; probably more than you’d expect.

The MVHR system tends to even out the temperatures but there remains a distinct north-south split:

  • B1 (Bedroom 1; Green line) is on the south-west corner, has a lot of glazing and is the warmest of the bedrooms; also has the highest occupancy
  • B3 (Bedroom 3; Cyan line) is on the north-east corner and is the coolest of the bedrooms
  • B4 (Bedroom 4; Orange line) is on the north-west corner, directly above LR (Living Room; Blue line)
  • HO (Home Office; Red line) is in the ‘attic’, facing west, with less thermal mass than the rest of the house (SIP construction rather than brick-and-block) and has the greatest temperature swings

If the heat pump was to run purely on WC control, the house would overheat in cold-but-sunny conditions, so a centrally-located room temperature sensor acts to dial-back the WC algorithm when that sensor exceeds the target temperature.

I presume the last few days on this graph weren’t very sunny, so they’re showing decent temperature regulation from the NIBE heat pump, compared with the much greater swings on the sunny days.

1 Like

I’d expect the solar gain to be greater in a passivhaus if anything. It certainly is in my house. At present when there’s no heating, the average temperature starts at around 22.5°C between 08:00 and 09:00 and climbs to around 23.5°C by about 16:00 and then falls back over the rest of the time.

During the heating season, the temperature varies about 1.5 K, because I just run heating overnight on an E7 tariff. So it peaks about 08:00 and is at its lowest about midnight.

We’re quite happy with the reversed temperature profile and comparatively large temperature changes. It’s definitely the most comforatble house we’ve lived in.

2 Likes

Solar influence is huge for me as well. I’m currently in process building an addon for the MyHeatpump app to perform heat demand estimation including solar gains from official meteorological sources. Have a look here:

2 Likes