KartoffelToby / better_thermostat

This custom component for Home Assistant will add crucial features to your climate-controlling TRV (Thermostatic Radiator Valves) to save you the work of creating automations to make it smart. It combines a room-temperature sensor, window/door sensors, weather forecasts, or an ambient temperature probe to decide when it should call for heat and automatically calibrate your TRVs to fix the imprecise measurements taken in the radiator's vicinity.
https://better-thermostat.org
GNU Affero General Public License v3.0
807 stars 124 forks source link

Create a sensor switch for eco mode #723

Open pbranly opened 1 year ago

pbranly commented 1 year ago

What is the feature?

Create a sensor switch for controlling better thermostat eco mode externally to BT UI

Description

Eco mode cannot be controlled via a scheduler as the switch sensor does not exist

Additional Information

None

regards Phil

maciejmatczak commented 1 year ago

https://better-thermostat.org/schedule

From what I remember this turns BT into eco.

pbranly commented 1 year ago

Thanks by I know that ! This is what I use today but existing eco mode in BT UI should be a sensor switch. Phil

kuduacz commented 1 year ago

but for what since you can do it by automation? Create switch herlper which trigger automation Better Thermostat: set_temp_target_temperature and vice versa.

pbranly commented 1 year ago

Because I find regrettable to have developed such eco feature that can be used only with fingers Phil

maciejmatczak commented 1 year ago

I am not sure if that should be a switch, though.

Eco for me is more of a preset. I would suggest for BT to support multiple preset_modes like Comfort, Eco, Boost, so that standard service calls with climate.set_preset_mode could set those for further automation.

pbranly commented 1 year ago

@KartoffelToby Hi Tobias, Any news bout that ? I think it’s a pity to have that mode only from User Interface. It should be used as well with schedulers Thanks. Per advance and congratulation for your work. I now have 7 BRT100 and 2 TS0601 and they all work without any issue . phil

pbranly commented 1 year ago

Any news about that request ?

Hankanman commented 1 year ago

Upvote for this, whether a switch, mode or both, should be able to set "eco" mode via a service call

pbranly commented 1 year ago

Hi as long as it can be controlled by a scheduler, this should be ok . Best for me would be an hvac mode Phil

pbranly commented 1 year ago

Hi Any news about that feature ? Phil

maciejmatczak commented 1 year ago

@KartoffelToby Hi Tobias, Any news bout that ? I think it’s a pity to have that mode only from User Interface. It should be used as well with schedulers Thanks. Per advance and congratulation for your work. I now have 7 BRT100 and 2 TS0601 and they all work without any issue . phil

I am not sure if you understood what I shared via link on 2nd of December.

The Eco mode is switchable by a service call, which can be controlled by a scheduler, where Better Thermostat helps with a Blueprint (link to their documentation).

Maybe add argumentation why having it as a preset mode (or switch) would be better from the current implementation.

@hankanman, it is possible to set Eco mode via service call: https://better-thermostat.org/schedule

pbranly commented 1 year ago

This is not an eco mode . This is a parallel service that emulates a different temperature. I really don't need to define such service while it is possible to force temperature from the scheduler.this is what I use between night and days and as well at different times of the day. What I need is a real ECO hvac mode that I can use when I leave home for exemple using the Eco parameters as they are defined in the BT. Phil

Wickedy123 commented 1 year ago

This is a necessary feature in order for Eco Mode to be compatible with any kind of automation, including the native BT night schedule.

I find Eco Mode a very convenient way of turning off zones, but for now I have to remove it from all the cards.

Scheduler: This is because the scheduler restores each BT back to the current set point, NOT the current set point if set via Eco Mode.

The effect of this is that every time the schedule comes out of night mode, the Eco settings are not re-applied and so the whole house starts heating up until I remember to set the Eco mode back.

Automation The actual problem I'm trying to address right now is the TS0601's flaw of losing calibration on their position, meaning valves remain open when reporting a position of 0. My solution for this is going to be an overnight automation which simply sets all BTs to a high target value briefly, then back again. I find this always sorts out any stuck ones. However as above, if any BT has been set to Eco Mode via the UI, this automation will re-enable the heating back at the underlying set-point. There is no way to detect whether Eco Mode has been set, making the Eco Mode unusable.

pbranly commented 1 year ago

Éco mode is a necessary feature

FireflyRobots commented 11 months ago

+1

Schmu1605 commented 11 months ago

I have created a possibility via Node Red to change the mode and transfer the desired temperature for Eco and Normal Mode. flows-7.json

[{"id":"a81cce650457cc88","type":"tab","label":"Bette Thermostat Mode change for github","disabled":false,"info":"","env":[]},{"id":"911b9e337613a414","type":"api-current-state","z":"a81cce650457cc88","name":"Comfort Temperature","server":"f373320f.3e04c","version":3,"outputs":1,"halt_if":"","halt_if_type":"str","halt_if_compare":"is","entity_id":"input_number.h_thermostat_esstisch_komforttemp","state_type":"str","blockInputOverrides":false,"outputProperties":[{"property":"payload","propertyType":"msg","value":"","valueType":"entityState"},{"property":"data","propertyType":"msg","value":"","valueType":"entity"}],"for":"0","forType":"num","forUnits":"minutes","override_topic":false,"state_location":"payload","override_payload":"msg","entity_location":"data","override_data":"msg","x":760,"y":240,"wires":[["984a8f5818674295"]]},{"id":"1d3f91d921e8c23c","type":"api-current-state","z":"a81cce650457cc88","name":"Eco-Temp","server":"f373320f.3e04c","version":3,"outputs":1,"halt_if":"","halt_if_type":"str","halt_if_compare":"is","entity_id":"input_number.h_thermostat_esstisch_ecotemp","state_type":"str","blockInputOverrides":false,"outputProperties":[{"property":"payload","propertyType":"msg","value":"","valueType":"entityState"},{"property":"data","propertyType":"msg","value":"","valueType":"entity"}],"for":"0","forType":"num","forUnits":"minutes","override_topic":false,"state_location":"payload","override_payload":"msg","entity_location":"data","override_data":"msg","x":370,"y":420,"wires":[["006a1fb1d275af31"]]},{"id":"984a8f5818674295","type":"change","z":"a81cce650457cc88","name":"","rules":[{"t":"set","p":"payload","pt":"msg","to":"{\"temperature\":payload}","tot":"jsonata"}],"action":"","property":"","from":"","to":"","reg":false,"x":1070,"y":240,"wires":[["e810bcde8c70edd8"]]},{"id":"006a1fb1d275af31","type":"change","z":"a81cce650457cc88","name":"","rules":[{"t":"set","p":"payload","pt":"msg","to":"{\"temperature\":payload}","tot":"jsonata"}],"action":"","property":"","from":"","to":"","reg":false,"x":770,"y":420,"wires":[["8c85f4a06ba36775"]]},{"id":"8c85f4a06ba36775","type":"api-call-service","z":"a81cce650457cc88","name":"Better Th. - setzt Eco Temperatur in Eco Modus","server":"f373320f.3e04c","version":5,"debugenabled":false,"domain":"better_thermostat","service":"set_temp_target_temperature","areaId":[],"deviceId":["58156da65ec98ff386d3d843af2a404d"],"entityId":["climate.better_thermostat_esszimmer"],"data":"msg.payload","dataType":"jsonata","mergeContext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":1200,"y":420,"wires":[[]]},{"id":"e810bcde8c70edd8","type":"api-call-service","z":"a81cce650457cc88","name":"Better Th. - setzt Komforttemp","server":"f373320f.3e04c","version":5,"debugenabled":false,"domain":"climate","service":"set_temperature","areaId":[],"deviceId":["58156da65ec98ff386d3d843af2a404d"],"entityId":["climate.better_thermostat_esszimmer"],"data":"msg.payload","dataType":"jsonata","mergeContext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":1370,"y":240,"wires":[[]]},{"id":"5bd2b8416d128c21","type":"inject","z":"a81cce650457cc88","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"","payloadType":"date","x":100,"y":140,"wires":[["c2078a4189b0f5fd"]]},{"id":"8b50c7bec02b117e","type":"inject","z":"a81cce650457cc88","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"","payloadType":"date","x":120,"y":420,"wires":[["1d3f91d921e8c23c"]]},{"id":"c2078a4189b0f5fd","type":"api-call-service","z":"a81cce650457cc88","name":"Restore the Temperature of Better Thermostat to change from ECO Mode to Normal Mode","server":"f373320f.3e04c","version":5,"debugenabled":false,"domain":"better_thermostat","service":"restore_saved_target_temperature","areaId":[],"deviceId":["58156da65ec98ff386d3d843af2a404d"],"entityId":["climate.better_thermostat_esszimmer"],"data":"","dataType":"jsonata","mergeContext":"","mustacheAltTags":false,"outputProperties":[],"queue":"none","x":540,"y":140,"wires":[["911b9e337613a414"]]},{"id":"3399bada77fc18bc","type":"comment","z":"a81cce650457cc88","name":"Helper to set my Comforttemperatur in UI (input number)","info":"","x":730,"y":280,"wires":[]},{"id":"bb5e1af28cb3027b","type":"comment","z":"a81cce650457cc88","name":"Set the temperatur over the STANDARD climate entity","info":"","x":1340,"y":200,"wires":[]},{"id":"76f062f0f8427d73","type":"comment","z":"a81cce650457cc88","name":"Helper to set my ECO-Temperature in UI (input number)","info":"","x":420,"y":380,"wires":[]},{"id":"a284cc3a1564a30f","type":"comment","z":"a81cce650457cc88","name":"Set the temperatur over the BETTER THERMOSTAT climate entity","info":"","x":1150,"y":380,"wires":[]},{"id":"03391adf851f7a4a","type":"comment","z":"a81cce650457cc88","name":"This is usefull if you come from Eco Mode to normal Mode","info":"","x":430,"y":100,"wires":[]},{"id":"f373320f.3e04c","type":"server","name":"Home Assistant Willi","version":5,"addon":true,"rejectUnauthorizedCerts":true,"ha_boolean":"y|yes|true|on|home|open","connectionDelay":true,"cacheJson":true,"heartbeat":false,"heartbeatInterval":"30","areaSelector":"friendlyName","deviceSelector":"friendlyName","entitySelector":"friendlyName","statusSeparator":"at: ","statusYear":"hidden","statusMonth":"short","statusDay":"numeric","statusHourCycle":"h23","statusTimeFormat":"h:m","enableGlobalContextStore":true}]

magicjohansson commented 10 months ago

Another vote for Eco-mode in BT ! I am using Eco-mode on all other thermostats but cannot use the same logic for the BT-ones