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
747 stars 122 forks source link

BT tries to set unsupported TRV mode #1191

Closed danielwuensche closed 7 months ago

danielwuensche commented 9 months ago

Prerequisites

Real TRV diagnostic data

{
  "home_assistant": {
    "installation_type": "Home Assistant OS",
    "version": "2023.12.1",
    "dev": false,
    "hassio": true,
    "virtualenv": false,
    "python_version": "3.11.6",
    "docker": true,
    "arch": "armv7l",
    "timezone": "Europe/Berlin",
    "os_name": "Linux",
    "os_version": "6.1.21-v7",
    "supervisor": "2023.11.6",
    "host_os": "Home Assistant OS 11.1",
    "docker_version": "24.0.6",
    "chassis": "embedded",
    "run_as_root": true
  },
  "custom_components": {
    "better_thermostat": {
      "version": "1.4.0",
      "requirements": []
    },
    "hacs": {
      "version": "1.33.0",
      "requirements": [
        "aiogithubapi>=22.10.1"
      ]
    }
  },
  "integration_manifest": {
    "domain": "zha",
    "name": "Zigbee Home Automation",
    "after_dependencies": [
      "onboarding",
      "usb"
    ],
    "codeowners": [
      "@dmulcahey",
      "@adminiuga",
      "@puddly",
      "@TheJulianJES"
    ],
    "config_flow": true,
    "dependencies": [
      "file_upload"
    ],
    "documentation": "https://www.home-assistant.io/integrations/zha",
    "iot_class": "local_polling",
    "loggers": [
      "aiosqlite",
      "bellows",
      "crccheck",
      "pure_pcapy3",
      "zhaquirks",
      "zigpy",
      "zigpy_deconz",
      "zigpy_xbee",
      "zigpy_zigate",
      "zigpy_znp",
      "universal_silabs_flasher"
    ],
    "requirements": [
      "bellows==0.37.1",
      "pyserial==3.5",
      "pyserial-asyncio==0.6",
      "zha-quirks==0.0.107",
      "zigpy-deconz==0.22.0",
      "zigpy==0.60.0",
      "zigpy-xbee==0.20.0",
      "zigpy-zigate==0.12.0",
      "zigpy-znp==0.12.0",
      "universal-silabs-flasher==0.0.15",
      "pyserial-asyncio-fast==0.11"
    ],
    "usb": [
      {
        "vid": "10C4",
        "pid": "EA60",
        "description": "*2652*",
        "known_devices": [
          "slae.sh cc2652rb stick"
        ]
      },
      {
        "vid": "1A86",
        "pid": "55D4",
        "description": "*sonoff*plus*",
        "known_devices": [
          "sonoff zigbee dongle plus v2"
        ]
      },
      {
        "vid": "10C4",
        "pid": "EA60",
        "description": "*sonoff*plus*",
        "known_devices": [
          "sonoff zigbee dongle plus"
        ]
      },
      {
        "vid": "10C4",
        "pid": "EA60",
        "description": "*tubeszb*",
        "known_devices": [
          "TubesZB Coordinator"
        ]
      },
      {
        "vid": "1A86",
        "pid": "7523",
        "description": "*tubeszb*",
        "known_devices": [
          "TubesZB Coordinator"
        ]
      },
      {
        "vid": "1A86",
        "pid": "7523",
        "description": "*zigstar*",
        "known_devices": [
          "ZigStar Coordinators"
        ]
      },
      {
        "vid": "1CF1",
        "pid": "0030",
        "description": "*conbee*",
        "known_devices": [
          "Conbee II"
        ]
      },
      {
        "vid": "0403",
        "pid": "6015",
        "description": "*conbee*",
        "known_devices": [
          "Conbee III"
        ]
      },
      {
        "vid": "10C4",
        "pid": "8A2A",
        "description": "*zigbee*",
        "known_devices": [
          "Nortek HUSBZB-1"
        ]
      },
      {
        "vid": "0403",
        "pid": "6015",
        "description": "*zigate*",
        "known_devices": [
          "ZiGate+"
        ]
      },
      {
        "vid": "10C4",
        "pid": "EA60",
        "description": "*zigate*",
        "known_devices": [
          "ZiGate"
        ]
      },
      {
        "vid": "10C4",
        "pid": "8B34",
        "description": "*bv 2010/10*",
        "known_devices": [
          "Bitron Video AV2010/10"
        ]
      }
    ],
    "zeroconf": [
      {
        "type": "_esphomelib._tcp.local.",
        "name": "tube*"
      },
      {
        "type": "_zigate-zigbee-gateway._tcp.local.",
        "name": "*zigate*"
      },
      {
        "type": "_zigstar_gw._tcp.local.",
        "name": "*zigstar*"
      },
      {
        "type": "_uzg-01._tcp.local.",
        "name": "uzg-01*"
      },
      {
        "type": "_slzb-06._tcp.local.",
        "name": "slzb-06*"
      }
    ],
    "is_built_in": true
  },
  "data": {
    "ieee": "**REDACTED**",
    "nwk": 46902,
    "manufacturer": "_TZE200_2cs6g9i7",
    "model": "TS0601",
    "name": "_TZE200_2cs6g9i7 TS0601",
    "quirk_applied": true,
    "quirk_class": "zhaquirks.tuya.ts0601_trv.SiterwellGS361_Type2",
    "quirk_id": null,
    "manufacturer_code": 4098,
    "power_source": "Battery or Unknown",
    "lqi": 192,
    "rssi": -52,
    "last_seen": "2023-12-09T16:18:47",
    "available": true,
    "device_type": "EndDevice",
    "signature": {
      "node_descriptor": "NodeDescriptor(logical_type=<LogicalType.EndDevice: 2>, complex_descriptor_available=0, user_descriptor_available=0, reserved=0, aps_flags=0, frequency_band=<FrequencyBand.Freq2400MHz: 8>, mac_capability_flags=<MACCapabilityFlags.AllocateAddress: 128>, manufacturer_code=4098, maximum_buffer_size=82, maximum_incoming_transfer_size=82, server_mask=11264, maximum_outgoing_transfer_size=82, descriptor_capability_field=<DescriptorCapability.NONE: 0>, *allocate_address=True, *is_alternate_pan_coordinator=False, *is_coordinator=False, *is_end_device=True, *is_full_function_device=False, *is_mains_powered=False, *is_receiver_on_when_idle=False, *is_router=False, *is_security_capable=False)",
      "endpoints": {
        "1": {
          "profile_id": "0x0104",
          "device_type": "0x0301",
          "input_clusters": [
            "0x0000",
            "0x0001",
            "0x0004",
            "0x0005",
            "0x0201",
            "0x0204",
            "0xef00"
          ],
          "output_clusters": [
            "0x000a",
            "0x0019"
          ]
        }
      },
      "manufacturer": "_TZE200_2cs6g9i7",
      "model": "TS0601"
    },
    "active_coordinator": false,
    "entities": [
      {
        "entity_id": "climate.wohnzimmer_heizung_thermostat_2",
        "name": "_TZE200_2cs6g9i7 TS0601"
      },
      {
        "entity_id": "sensor.wohnzimmer_heizung_battery_2",
        "name": "_TZE200_2cs6g9i7 TS0601"
      },
      {
        "entity_id": "sensor.wohnzimmer_heizung_hvac_action_2",
        "name": "_TZE200_2cs6g9i7 TS0601"
      }
    ],
    "neighbors": [],
    "routes": [],
    "endpoint_names": [
      {
        "name": "THERMOSTAT"
      }
    ],
    "user_given_name": "Wohnzimmer Heizung",
    "device_reg_id": "faecaec1795323e751d2d59ca20a56cb",
    "area_id": "living_room",
    "cluster_details": {
      "1": {
        "device_type": {
          "name": "THERMOSTAT",
          "id": 769
        },
        "profile_id": 260,
        "in_clusters": {
          "0x0000": {
            "endpoint_attribute": "basic",
            "attributes": {
              "0x0001": {
                "attribute_name": "app_version",
                "value": 85
              },
              "0x0004": {
                "attribute_name": "manufacturer",
                "value": "_TZE200_2cs6g9i7"
              },
              "0x0005": {
                "attribute_name": "model",
                "value": "TS0601"
              }
            },
            "unsupported_attributes": {}
          },
          "0x0004": {
            "endpoint_attribute": "groups",
            "attributes": {},
            "unsupported_attributes": {}
          },
          "0x0005": {
            "endpoint_attribute": "scenes",
            "attributes": {},
            "unsupported_attributes": {}
          },
          "0xef00": {
            "endpoint_attribute": "tuya_manufacturer",
            "attributes": {
              "0x0215": {
                "attribute_name": "battery",
                "value": 100
              },
              "0x0107": {
                "attribute_name": "child_lock",
                "value": 0
              },
              "0x0404": {
                "attribute_name": "mode",
                "value": 2
              },
              "0x0202": {
                "attribute_name": "target_temperature",
                "value": 70
              },
              "0x0203": {
                "attribute_name": "temperature",
                "value": 221
              },
              "0x0114": {
                "attribute_name": "valve_detect",
                "value": 1
              },
              "0x0112": {
                "attribute_name": "window_detection",
                "value": 1
              }
            },
            "unsupported_attributes": {}
          },
          "0x0201": {
            "endpoint_attribute": "thermostat",
            "attributes": {
              "0x001b": {
                "attribute_name": "ctrl_sequence_of_oper",
                "value": 2
              },
              "0x0000": {
                "attribute_name": "local_temperature",
                "value": 2210
              },
              "0x0012": {
                "attribute_name": "occupied_heating_setpoint",
                "value": 700
              },
              "0x0025": {
                "attribute_name": "programing_oper_mode",
                "value": 0
              },
              "0x001e": {
                "attribute_name": "running_mode",
                "value": 4
              },
              "0x0029": {
                "attribute_name": "running_state",
                "value": 1
              },
              "0x001c": {
                "attribute_name": "system_mode",
                "value": 4
              }
            },
            "unsupported_attributes": {}
          },
          "0x0204": {
            "endpoint_attribute": "thermostat_ui",
            "attributes": {
              "0x0001": {
                "attribute_name": "keypad_lockout",
                "value": 0
              }
            },
            "unsupported_attributes": {}
          },
          "0x0001": {
            "endpoint_attribute": "power",
            "attributes": {
              "0x0021": {
                "attribute_name": "battery_percentage_remaining",
                "value": 200
              },
              "0x0033": {
                "attribute_name": "battery_quantity",
                "value": 2
              },
              "0x0034": {
                "attribute_name": "battery_rated_voltage",
                "value": 15
              },
              "0x0031": {
                "attribute_name": "battery_size",
                "value": 3
              }
            },
            "unsupported_attributes": {}
          }
        },
        "out_clusters": {
          "0x000a": {
            "endpoint_attribute": "time",
            "attributes": {},
            "unsupported_attributes": {}
          },
          "0x0019": {
            "endpoint_attribute": "ota",
            "attributes": {},
            "unsupported_attributes": {}
          }
        }
      }
    }
  }
}

BT TRV diagnostic data

{
  "home_assistant": {
    "installation_type": "Home Assistant OS",
    "version": "2023.12.1",
    "dev": false,
    "hassio": true,
    "virtualenv": false,
    "python_version": "3.11.6",
    "docker": true,
    "arch": "armv7l",
    "timezone": "Europe/Berlin",
    "os_name": "Linux",
    "os_version": "6.1.21-v7",
    "supervisor": "2023.11.6",
    "host_os": "Home Assistant OS 11.1",
    "docker_version": "24.0.6",
    "chassis": "embedded",
    "run_as_root": true
  },
  "custom_components": {
    "better_thermostat": {
      "version": "1.4.0",
      "requirements": []
    },
    "hacs": {
      "version": "1.33.0",
      "requirements": [
        "aiogithubapi>=22.10.1"
      ]
    }
  },
  "integration_manifest": {
    "domain": "better_thermostat",
    "name": "Better Thermostat",
    "after_dependencies": [
      "climate"
    ],
    "codeowners": [
      "@kartoffeltoby"
    ],
    "config_flow": true,
    "dependencies": [
      "climate",
      "recorder"
    ],
    "documentation": "https://github.com/KartoffelToby/better_thermostat",
    "iot_class": "local_push",
    "issue_tracker": "https://github.com/KartoffelToby/better_thermostat/issues",
    "requirements": [],
    "version": "1.4.0",
    "is_built_in": false
  },
  "data": {
    "info": {
      "name": "Wohnzimmer Heizung",
      "temperature_sensor": "sensor.wohnzimmer_sensor_temperature_2",
      "off_temperature": 15,
      "tolerance": 0.0,
      "humidity_sensor": "sensor.wohnzimmer_sensor_humidity_2",
      "window_sensors": "binary_sensor.wohnzimmer_balkontur_opening",
      "weather": "weather.forecast_home",
      "window_off_delay_after": 300,
      "outdoor_sensor": null,
      "cooler": null,
      "window_off_delay": 0,
      "model": "TS0601"
    },
    "thermostat": {
      "climate.wohnzimmer_heizung_thermostat_2": {
        "name": "Wohnzimmer Heizung Thermostat",
        "state": "heat",
        "attributes": {
          "hvac_modes": [
            "off",
            "heat"
          ],
          "min_temp": 7.0,
          "max_temp": 30.0,
          "current_temperature": 22.1,
          "temperature": 7.0,
          "hvac_action": "heating",
          "system_mode": "[4]/heat",
          "occupied_heating_setpoint": 700,
          "friendly_name": "Wohnzimmer Heizung Thermostat",
          "supported_features": 1
        },
        "bt_config": {
          "calibration": "target_temp_based",
          "calibration_mode": "heating_power_calibration",
          "protect_overheating": false,
          "no_off_system_mode": true,
          "heat_auto_swapped": true,
          "child_lock": false,
          "homaticip": false
        },
        "bt_adapter": "zha",
        "bt_integration": "zha",
        "model": "TS0601"
      }
    },
    "external_temperature_sensor": {
      "entity_id": "sensor.wohnzimmer_sensor_temperature_2",
      "state": "19.6",
      "attributes": {
        "state_class": "measurement",
        "unit_of_measurement": "\u00b0C",
        "device_class": "temperature",
        "friendly_name": "Wohnzimmer Sensor Temperature"
      },
      "last_changed": "2023-12-09T15:12:37.625511+00:00",
      "last_updated": "2023-12-09T15:12:37.625511+00:00",
      "context": {
        "id": "01HH7J6E7SE6V4XQPEBGNQDCE5",
        "parent_id": null,
        "user_id": null
      }
    },
    "window_sensor": {
      "entity_id": "binary_sensor.wohnzimmer_balkontur_opening",
      "state": "off",
      "attributes": {
        "migrated_to_cache": true,
        "device_class": "opening",
        "friendly_name": "Wohnzimmer Balkont\u00fcr Opening"
      },
      "last_changed": "2023-12-09T15:13:21.583897+00:00",
      "last_updated": "2023-12-09T15:13:21.583897+00:00",
      "context": {
        "id": "01HH7J7S5FBP0QG6ATFC73PJAJ",
        "parent_id": null,
        "user_id": null
      }
    }
  }
}

Developer Tools State (Real TRV)

Entity: climate.wohnzimmer_heizung_thermostat_2

State: heat

Attributes:
hvac_modes: off, heat
min_temp: 7
max_temp: 30
current_temperature: 22.1
temperature: 7
hvac_action: heating
system_mode: [4]/heat
occupied_heating_setpoint: 700
friendly_name: Wohnzimmer Heizung Thermostat
supported_features: 1

Developer Tools State (BT TRV)

Entity: climate.wohnzimmer_heizung
State: Off

Attributes:
hvac_modes: heat, off
min_temp: 7
max_temp: 30
target_temp_step: 0.1
current_temperature: 19.6
temperature: 20
hvac_action: heating
window_open: false
call_for_heat: null
last_change: 2023-12-09T10:05:49.032123
saved_temperature: null
humidity: 42
main_mode: auto
tolerance: 0
heating_power: 0.0097
errors: []
batteries: {"sensor.wohnzimmer_sensor_temperature_2": {"battery": "96", "battery_id": "sensor.wohnzimmer_sensor_battery_2"}, "sensor.wohnzimmer_sensor_humidity_2": {"battery": "96", "battery_id": "sensor.wohnzimmer_sensor_battery_2"}, "binary_sensor.wohnzimmer_balkontur_opening": {"battery": "100", "battery_id": "sensor.wohnzimmer_balkontur_battery"}, "climate.wohnzimmer_heizung_thermostat_2": {"battery": "100", "battery_id": "sensor.wohnzimmer_heizung_battery_2"}}
friendly_name: Wohnzimmer Heizung
supported_features: 1

Description

After opening a window, the BT Thermostat is being set to off as expected. After closing the window and waiting for the defined delay to pass, the BT TRV isn't being set to heat. Debug logs show that BT tries to set the real TRV to "auto". which fails because the real TRV only supports modes "heat" and "off".

Steps to Reproduce

  1. Open window
  2. Close window and wait for the configured delay to pass

Expected behavior:

Set BT TRV to "heat" and configure the real TRV accordingly.

Actual behavior:

BT TRV stays "off", not configuring the real TRV.

Versions

HA Core: 2023.12.1 BT: 1.4.0

Additional Information

HA / BT Logs

2023-12-09 16:06:55.518 DEBUG (MainThread) [custom_components.better_thermostat.events.window] better_thermostat Wohnzimmer Heizung: Window opened, waiting 0 seconds before continuing
2023-12-09 16:06:55.533 DEBUG (MainThread) [custom_components.better_thermostat.utils.controlling] better_thermostat Wohnzimmer Heizung: control_trv: window is open or status of window is unknown, setting window open
2023-12-09 16:06:55.534 DEBUG (MainThread) [custom_components.better_thermostat.utils.controlling] better_thermostat Wohnzimmer Heizung: sending 7.0°C to the TRV because this device has no system mode off and heater should be off
2023-12-09 16:06:55.534 DEBUG (MainThread) [custom_components.better_thermostat.utils.controlling] better_thermostat Wohnzimmer Heizung: TO TRV set_temperature: climate.wohnzimmer_heizung_thermostat_2 from: 23.5 to: 7.0
2023-12-09 16:06:56.598 DEBUG (MainThread) [custom_components.better_thermostat.utils.controlling] better_thermostat Wohnzimmer Heizung: climate.wohnzimmer_heizung_thermostat_2 / check_target_temp / _last: 7.0 - _current: 23.5
2023-12-09 16:09:12.319 DEBUG (MainThread) [custom_components.better_thermostat.events.temperature] better_thermostat Wohnzimmer Heizung: external_temperature changed from 20.3 to 20.2
2023-12-09 16:09:12.327 DEBUG (MainThread) [custom_components.better_thermostat.utils.controlling] better_thermostat Wohnzimmer Heizung: sending 7.0°C to the TRV because this device has no system mode off and heater should be off
2023-12-09 16:12:11.697 DEBUG (MainThread) [custom_components.better_thermostat.utils.controlling] better_thermostat Wohnzimmer Heizung: climate.wohnzimmer_heizung_thermostat_2 the real TRV did not respond to the system mode change
2023-12-09 16:12:37.634 DEBUG (MainThread) [custom_components.better_thermostat.events.temperature] better_thermostat Wohnzimmer Heizung: external_temperature changed from 20.2 to 19.6
2023-12-09 16:12:37.640 DEBUG (MainThread) [custom_components.better_thermostat.utils.controlling] better_thermostat Wohnzimmer Heizung: sending 7.0°C to the TRV because this device has no system mode off and heater should be off
2023-12-09 16:13:03.055 DEBUG (MainThread) [custom_components.better_thermostat.events.trv] better_thermostat Wohnzimmer Heizung: TRV climate.wohnzimmer_heizung_thermostat_2 update received
2023-12-09 16:13:03.056 DEBUG (MainThread) [custom_components.better_thermostat.events.trv] better_thermostat Wohnzimmer Heizung: TRV climate.wohnzimmer_heizung_thermostat_2 sends new internal temperature from 23.4 to 22.1
2023-12-09 16:13:03.057 DEBUG (MainThread) [custom_components.better_thermostat.events.trv] better_thermostat Wohnzimmer Heizung: trigger_trv_change / _old_heating_setpoint: 7.0 - _new_heating_setpoint: 7.0 - _last_temperature: 7.0
2023-12-09 16:13:03.060 DEBUG (MainThread) [custom_components.better_thermostat.events.trv] better_thermostat Wohnzimmer Heizung: sending 5°C to the TRV because this device has no system mode off and heater should be off
2023-12-09 16:13:03.061 DEBUG (MainThread) [custom_components.better_thermostat.utils.controlling] better_thermostat Wohnzimmer Heizung: sending 7.0°C to the TRV because this device has no system mode off and heater should be off
2023-12-09 16:13:21.594 DEBUG (MainThread) [custom_components.better_thermostat.events.window] better_thermostat Wohnzimmer Heizung: Window closed, waiting 300 seconds before continuing
2023-12-09 16:18:21.611 DEBUG (MainThread) [custom_components.better_thermostat.utils.helpers] better_thermostat Wohnzimmer Heizung: climate.wohnzimmer_heizung_thermostat_2 / heating_power_valve_position - temp diff: 0.4 - heating power: 0.0097 - expected valve position: 41%
2023-12-09 16:18:21.612 DEBUG (MainThread) [custom_components.better_thermostat.events.trv] better_thermostat Wohnzimmer Heizung: sending 5°C to the TRV because this device has no system mode off and heater should be off
2023-12-09 16:18:21.613 DEBUG (MainThread) [custom_components.better_thermostat.utils.controlling] better_thermostat Wohnzimmer Heizung: control_trv: window is closed, setting window closed restoring mode: auto
2023-12-09 16:18:21.613 DEBUG (MainThread) [custom_components.better_thermostat.utils.controlling] better_thermostat Wohnzimmer Heizung: TO TRV set_hvac_mode: climate.wohnzimmer_heizung_thermostat_2 from: heat to: auto
2023-12-09 16:18:21.630 WARNING (MainThread) [homeassistant.components.zha.entity] climate.wohnzimmer_heizung_thermostat_2: can't set 'auto' mode. Supported modes are: [<HVACMode.OFF: 'off'>, <HVACMode.HEAT: 'heat'>]
2023-12-09 16:21:11.656 INFO (MainThread) [custom_components.better_thermostat.utils.bridge] better_thermostat -: intigration: zha isn't native supported, feel free to open an issue, fallback adapter generic
2023-12-09 16:24:23.201 DEBUG (MainThread) [custom_components.better_thermostat.utils.controlling] better_thermostat Wohnzimmer Heizung: climate.wohnzimmer_heizung_thermostat_2 the real TRV did not respond to the system mode change

BT Settings Page 1 image

BT Settings Page 2 image

/

danielwuensche commented 9 months ago

I disabled the delay after opening the window. Now the BT TRV is never set to off which makes the heating work as expected. Still, Debug logs show that BT tries to set "auto" mode on the real TRV.

2023-12-09 16:42:59.534 DEBUG (MainThread) [custom_components.better_thermostat.events.trv] better_thermostat Wohnzimmer Heizung: TRV climate.wohnzimmer_heizung_thermostat_2 update received
2023-12-09 16:42:59.534 DEBUG (MainThread) [custom_components.better_thermostat.events.trv] better_thermostat Wohnzimmer Heizung: TRV climate.wohnzimmer_heizung_thermostat_2 sends new internal temperature from 22.1 to 23.2
2023-12-09 16:42:59.535 DEBUG (MainThread) [custom_components.better_thermostat.events.trv] better_thermostat Wohnzimmer Heizung: trigger_trv_change / _old_heating_setpoint: 21.5 - _new_heating_setpoint: 21.5 - _last_temperature: 21.5
2023-12-09 16:42:59.538 DEBUG (MainThread) [custom_components.better_thermostat.utils.controlling] better_thermostat Wohnzimmer Heizung: TO TRV set_hvac_mode: climate.wohnzimmer_heizung_thermostat_2 from: heat to: auto
2023-12-09 16:42:59.540 WARNING (MainThread) [homeassistant.components.zha.entity] climate.wohnzimmer_heizung_thermostat_2: can't set 'auto' mode. Supported modes are: [<HVACMode.OFF: 'off'>, <HVACMode.HEAT: 'heat'>]
2023-12-09 16:42:59.542 DEBUG (MainThread) [custom_components.better_thermostat.utils.controlling] better_thermostat Wohnzimmer Heizung: TO TRV set_temperature: climate.wohnzimmer_heizung_thermostat_2 from: 21.5 to: 23.0
2023-12-09 16:42:59.734 DEBUG (MainThread) [custom_components.better_thermostat.utils.controlling] better_thermostat Wohnzimmer Heizung: climate.wohnzimmer_heizung_thermostat_2 / check_target_temp / _last: 23.0 - _current: 21.5

I suspect the option "if the auto means heat for your TRV and you want to swap it" is creating the problem. Other issue threads stated that this mode is required for this TRV.

danielwuensche commented 9 months ago

I now disabled the option "if the auto means heat for your TRV and you want to swap it", now BT doesn't try to set the auto mode anymore. I have one Room set up with a window close delay and one without delay.

I will monitor the behavior for a couple of days.

danielwuensche commented 8 months ago

After the last change, every time a window was opened the corresponding BT entity was set to off. The BT entity stays off after closing the window though. My BT entities were always off in the last 3 weeks unless I manually set the BT entities to heat after closing the windows. This is also described in the issue #1195 . I'll probably just do an automation that sets the BT entity to heat when it's set to off and windows are closed.

JackSmart007 commented 8 months ago

After the last change, every time a window was opened the corresponding BT entity was set to off. The BT entity stays off after closing the window though. My BT entities were always off in the last 3 weeks unless I manually set the BT entities to heat after closing the windows. This is also described in the issue #1195 . I'll probably just do an automation that sets the BT entity to heat when it's set to off and windows are closed.

I solved it the same way but it’d be really nice if the BT is set automatically to heat again.

danielwuensche commented 7 months ago

I encountered other issues and ended up setting all BT heating modes to off. I didn't need heating so It was fine. Now I have replaced the TRVs with Sonoff TRVZB so this issue doesn't exist anymore in my case.