From b84c4d7513d1f9cf1dd9d577357d27f22e2b7cbd Mon Sep 17 00:00:00 2001 From: Tony Stork Date: Tue, 11 Mar 2025 13:37:10 -0400 Subject: [PATCH] Continue improving basement heater logic, as the weather warms up --- flows.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/flows.json b/flows.json index 861c850..d248651 100644 --- a/flows.json +++ b/flows.json @@ -17262,7 +17262,7 @@ "z": "47f17992fab9b4f5", "g": "550e5b2d99316b12", "name": "Heat Logic", - "func": "const states = global.get('homeassistant.homeAssistant.states')\nconst allowed = states['input_boolean.basement_studio_heat_allowed'].state\nconst outsideTemp = states['weather.iron_nerd_weather_station'].attributes.temperature\nconst todaysHighTemp = states['sensor.todays_high_temp'].state\n\nlet power = {}\n\nif (todaysHighTemp < 55 || outsideTemp < 40) {\n power = 'on'\n} else {\n power = 'off'\n}\n\nif (allowed === 'on') {\n if (power === 'on') {\n node.status({fill:'green',shape:'dot',text:'Heater Needed'})\n node.send(msg,null)\n } else {\n node.status({fill:'red',shape:'ring',text:'Heater Not Needed'})\n node.send(null,msg)\n }\n} else {\n node.status({fill:'red',shape:'ring',text:'Heat Disabled'})\n}\n", + "func": "const states = global.get('homeassistant.homeAssistant.states')\nconst allowed = states['input_boolean.basement_studio_heat_allowed'].state\nconst outsideTemp = states['weather.iron_nerd_weather_station'].attributes.temperature\nconst todaysHighTemp = states['sensor.todays_high_temp'].state\nconst basementTemp = states['sensor.basement_studio_temperature'].state\n\nlet power = {}\nlet reason = {}\n\nif (todaysHighTemp < 55) {\n power = 'on'\n reason = 'Todays High Temperature'\n} else if (outsideTemp < 40) {\n power = 'on'\n reason = 'Outside Temperature'\n} else if (basementTemp < 64) {\n power = 'on'\n reason = 'Basement Temperature'\n} else {\n power = 'off'\n}\n\nif (allowed === 'on') {\n if (power === 'on') {\n node.status({fill:'green',shape:'dot',text:'Heater Needed: ' + reason})\n node.send(msg,null)\n } else {\n node.status({fill:'red',shape:'ring',text:'Heater Not Needed'})\n node.send(null,msg)\n }\n} else {\n node.status({fill:'red',shape:'ring',text:'Heat Disabled'})\n}\n", "outputs": 1, "timeout": 0, "noerr": 0,