Closed user34756361233 closed 3 years ago
Hey there @mvn23, mind taking a look at this issue as its been labeled with an integration (opentherm_gw
) you are listed as a codeowner for? Thanks!
(message by CodeOwnersMention)
The Override Mode setting defines how the climate entity controls the OpenTherm Gateway.
To set the target temperature, use the climate.set_temperature
service with the opentherm_gw
climate entity as the target.
Ok, missed that. Thank you for the very quick answer!
@mvn23 sorry to disturb you again; TT or TC is determined by the setting in the config screen of the OpenTherm integration. Is there another way to set this beside in the config screen? Reason behind my question is that I would like to send TC from a "away" script but in al other cases I want to send a TT.
Tia
Han
At present there is no way to change this on a per-call basis. The reason behind this limitation is the fact that we're leveraging a service call from the climate
component, rather than implementing our own version of existing functionality. The climate
component is generic by design and has no support for this functionality, nor is it likely to be implemented there.
The easiest way to achieve what you want is most likely to implement your thermostat program in Home Assistant entirely. Then you will have full control over all conditions that may result in a temperature change and act accordingly. Another option is to create an additional automation that counters any programmed temperature changes if certain conditions are met (e.g. with an input_boolean
).
Thx for your extensive explanation; building my own thermostat in HA is way over my head ;-)
No need to build a whole thermostat, that's what the integration is for. I'm only suggesting to move the program from your thermostat to Home Assistant to allow for greater control. Just creating a few automations with time
triggers and climate.set_temperature
service calls should do the same thing your thermostat is doing now. Example:
alias: Set temperature to 20°C in the morning
mode: single
trigger:
- platform: time
at: '07:00'
action:
- service: climate.set_temperature
data:
temperature: 20
target:
entity_id: climate.thermostat
You can then disable the program on the thermostat, making the difference between TT
and TC
irrelevant. Instead, you can just disable some of the timed automations in your "away" script (using automation
service calls) to achieve the same effect (ignoring timed temperature changes).
That, sir, is another way of looking at things! Had not thought of that at all. I'll have a go in that direction. Thanks again!
The problem
In the latest release of the Opentherm Gateway integration it is possible via the integration configure button to set (or unset) a Temporary Setpoint Override Mode. This should make it possible to send commands like TC=20 (set room point temperature to 20 C forever) or TT=15 (set roompoint temperature to 15 C untill the thermostats next program step).
I can't find any service that makes it possible to use this setting.
The sources contain the following services non of which produce TT of TC commands towards the otgw SERVICE_RESET_GATEWAY = "reset_gateway" SERVICE_SET_CH_OVRD = "set_central_heating_ovrd" SERVICE_SET_CLOCK = "set_clock" SERVICE_SET_CONTROL_SETPOINT = "set_control_setpoint" SERVICE_SET_HOT_WATER_SETPOINT = "set_hot_water_setpoint" SERVICE_SET_HOT_WATER_OVRD = "set_hot_water_ovrd" SERVICE_SET_GPIO_MODE = "set_gpio_mode" SERVICE_SET_LED_MODE = "set_led_mode" SERVICE_SET_MAX_MOD = "set_max_modulation" SERVICE_SET_OAT = "set_outside_temperature" SERVICE_SET_SB_TEMP = "set_setback_temperature"
What is version of Home Assistant Core has the issue?
core-2021.5.4
What was the last working version of Home Assistant Core?
-
What type of installation are you running?
Home Assistant Container
Integration causing the issue
opentherm gateway
Link to integration documentation on our website
https://www.home-assistant.io/integrations/opentherm_gw
Example YAML snippet
Anything in the logs that might be useful for us?
Additional information
No response