Hi, I am using a schedy schedule to controll my radiators with ShellyTRVs.
The trvs are connected via coiot, not mqtt.
For some reason (at least) one of the trvs keeps setting itselfs to 20°C after returning from an open-window period
2023-01-09 08:25:56.663671 INFO schedy_heating: --> Attribute 'state' of 'binary_sensor.zsens_sz_fenster_ias_zone_delayed' changed from 'on' to 'off', reevaluating <Room R:Schlafzimmer>.
2023-01-09 08:25:58.136942 INFO schedy_heating: --- [R:Schlafzimmer] Restoring overlaid value 14.0??.
2023-01-09 08:25:58.164268 INFO schedy_heating: <-- [R:Schlafzimmer] Value set to 14.0??. [manual]
2023-01-09 08:25:59.623020 INFO schedy_heating: --> [R:Schlafzimmer] [A:climate.shellytrv_schlafzimmer] Received value of 14.0??.
2023-01-09 08:26:00.603744 INFO schedy_heating: --> [R:Schlafzimmer] [A:climate.shellytrv_schlafzimmer] Received value of 20.0??.
2023-01-09 08:26:00.614123 INFO schedy_heating: --- [R:Schlafzimmer] Re-applying the schedule not before 09:26:00 (in 1:00:00).
2023-01-09 08:26:05.545848 INFO schedy_heating: --> [R:Schlafzimmer] [A:climate.shellytrv_schlafzimmer] Received value of 14.0??.
Unfortunately the reset (last line) to the requested temperature does not always happen within 5 seconds.
Any idea what is happening here?
The device log shows the trv becoming unavalable intermedately
(roughly translated)
08:27:05 - changes to heating on
08:27:05 - no longer avalable
08:25:59 - changes to heating on, triggered by service climate.set_temperature
The schedy schedule looks like this
schedy_heating:
module: hass_apps_loader
class: SchedyApp
actor_type: thermostat
expression_environment: |
def heating_mode():
return state("input_select.heating_mode")
def is_occupied():
return is_on("binary_sensor.wohnung_bewohnt")
def is_workday():
return is_on("binary_sensor.workday_sensor")
watched_entities:
- input_select.heating_mode
- binary_sensor.wohnung_bewohnt
- binary_sensor.workday_sensor
rooms:
Schlafzimmer:
watched_entities:
- binary_sensor.zsens_sz_fenster_ias_zone_delayed
rescheduling_delay: 60
actors:
climate.shellytrv_schlafzimmer:
schedule:
- name: "Turn off in summer-mode"
x: "OFF if heating_mode() == 'Sommer' else Next()"
- name: "Turn off when window open"
x: "Mark(OFF, Mark.OVERLAY) if is_on('binary_sensor.zsens_sz_fenster_ias_zone_delayed') else Next()"
- name: "Turn on during daytime in homeoffice mode"
v: 19
rules:
- x: "Next() if heating_mode() == 'Homeoffice' and is_workday() else Break()"
- { start: "09:00", end: "17:00" }
- name: "Set to 14 in all other situations"
v: 14