The Thermostat revisited

ThermostatRemember this? I put this Node-Red Dashboard (+ images) stat together January 2017 then promptly forgot about it – thank heavens I blogged the lot, having recently moved home.

I find I need a thermostat for our home and yesterday I was in the process of re-inventing the wheel when I came across my Node-Red stat.

All documented in the original blog entry and apart from a minor change to Node-Red Dashboard’s default cell sizes from 48×48 to 52×52, it just works. Lovely.

Here’s the link – I can’t believe I put all that work in then just ignored the design – it’s marvellous even though I say it myself and setup (end user0 could not be easier.


20 thoughts on “The Thermostat revisited

  1. Finally! I’ve got it working 🙂
    You follow the link “HERE” on the main article.
    On “angularscript” web-page just follow a new link “Official Page: Go to website”.
    On “angular-canvas-gauge” web-page follow another link “to Mikhus’s canv-gauge project”
    And here is the place where we can download the magic gauge script:
    It worked for me and hopefully it will help other beginners to find it faster.
    Unfortunately I couldn’t get working the Angular in Node-Red but Canvas-gauge works great.

  2. Yes, I did it, but without success. It is white blank square.
    Exactly how Pete said in the main article:
    “I have it working in a simple local web page but sadly when I put it in a template right now – I get a white screen… ”
    May be I miss fonts or something else?

  3. Hello!
    Can anybody help me to get the thermostat gauge in Node-Red dashboard?
    It is showing all buttons except the gauge.
    Definitely I miss something but what?

    1. Good, but on setting heat, readout seems to stop on the set temperature and direction doesnt feel right.

      1. I don’t know if you fell into the same problem as I did when first using this some time ago – in adjusting it I was trying to follow the dial with my finger but it works much better with either pure left right or up down – then works fine.

  4. I replaced “if (global.get(“frost”)) { msg.desired=global.get(“timing”)[168]; global.set(“frost”,global.get(“frost”)-1); }” with “if (msg.frost > msg.desired) msg.desired = msg.frost;” – seems to work OK

    1. In that case you can likely help me – I can’t recall how to reset frost timeout – setting it to 0 doesn’t do anything..(ie not changing the frost fallback temperature, just going back to normal settings…)

      1. I’m getting somewhere… in “store away” and “store frost” – the payload needs surrounding by Number()

        1. Perhaps I have misunderstood the purpose of the frost setting. I was under the impression that it was too provide a minimum temperature regardless of any other setting in the schedule. In that scenario I don’t see the purpose for a frost timeout – it would be akin to saying “only protect the system from freezing when I have anticipated a problem”.

          1. It is a stop point you can set from node red if you want the heating OFF for a long period… clearly you don’t want OFF or the place could freeze. It is only half thought out, clearly, but works.. whereas AWAY wont let it get colder than 14 which WAS the fallback for nights until I made the thing hourly programmable. This all stems from having THIS thermometer for the owner, a simpler wall display for holiday renters and you would not want to give them access to the FROST setting but you could give them AWAY control.

  5. I really like the stat code and have been incorporating it into my setup. One thing is slightly confusing and maybe you can enlighten me. In the Process Heat node (around line 17) you decrement the context global “frost” in the same way you do “away” as a countdown timer. I am not sure why you would want a timer on the frost setting which I assumed was to act as a minimum temperature. Indeed f you set the frost global using the test inputs provided the setting buttons stop working as they are overriden by the frost counter. In addition I don’t see any functionality to actually take into account if the frost temperature setting is higher than the desired or actual temperature reading in the setting of the heat relay.

Comments are closed.