Skip to content

Wrong model detection from Z2M #1672

@mbarta

Description

@mbarta

It looks like my thermostat model is wrongly detected. From the code, it takes the value from brackets that Z2M provides, but this is how my thermostat is reported:

Image

The model then is Beok wall thermostat instead of the specific model number.

Versions and HW

Home Assistant: 2025.10.2
Better Thermostat: 1.7.1-beta4

TRV(s): TS0601 _TZE284_cvub6xbb (Beok wall thermostat); TGM50-ZB

Debug data

diagnostic data

{
  "home_assistant": {
    "installation_type": "Home Assistant OS",
    "version": "2025.10.2",
    "dev": false,
    "hassio": true,
    "virtualenv": false,
    "python_version": "3.13.7",
    "docker": true,
    "arch": "aarch64",
    "timezone": "Europe/Prague",
    "os_name": "Linux",
    "os_version": "6.12.34-haos-raspi",
    "container_arch": "aarch64",
    "supervisor": "2025.10.0",
    "host_os": "Home Assistant OS 16.2",
    "docker_version": "28.3.3",
    "chassis": "embedded",
    "run_as_root": true
  },
  "custom_components": {
    "sonoff": {
      "documentation": "https://github.com/AlexxIT/SonoffLAN",
      "version": "3.9.3",
      "requirements": [
        "pycryptodome>=3.6.6"
      ]
    },
    "mammotion": {
      "documentation": "https://github.com/mikey0000/Mammotion-HA/wiki",
      "version": "0.4.8",
      "requirements": [
        "pymammotion==0.5.34"
      ]
    },
    "hacs": {
      "documentation": "https://hacs.xyz/docs/use/",
      "version": "2.0.5",
      "requirements": [
        "aiogithubapi>=22.10.1"
      ]
    },
    "solarman": {
      "documentation": "https://github.com/davidrapan/ha-solarman",
      "version": "25.08.16",
      "requirements": [
        "propcache",
        "aiohttp",
        "aiofiles",
        "pyyaml"
      ]
    },
    "cezdistribuce": {
      "documentation": "https://github.com/zigul/HomeAssistant-CEZdistribuce",
      "version": "0.5.0",
      "requirements": []
    },
    "cz_energy_spot_prices": {
      "documentation": "https://github.com/rnovacek/homeassistant_cz_energy_spot_prices",
      "version": "0.7.6",
      "requirements": []
    },
    "goodwe": {
      "documentation": "https://github.com/mletenay/home-assistant-goodwe-inverter",
      "version": "0.9.9.29",
      "requirements": [
        "goodwe==0.4.8"
      ]
    },
    "jablotron100": {
      "documentation": "https://github.com/kukulich/home-assistant-jablotron100",
      "version": "3.29.0",
      "requirements": []
    },
    "goecharger_api2": {
      "documentation": "https://github.com/marq24/ha-goecharger-api2",
      "version": "2025.9.0",
      "requirements": []
    },
    "better_thermostat": {
      "documentation": "https://github.com/KartoffelToby/better_thermostat",
      "version": "1.7.1-beta4",
      "requirements": []
    },
    "solcast_solar": {
      "documentation": "https://github.com/BJReplay/ha-solcast-solar",
      "version": "v4.4.4",
      "requirements": [
        "aiohttp>=3.8.5",
        "aiofiles>=23.2.0",
        "watchdog>=6.0.0"
      ]
    },
    "adaptive_lighting": {
      "documentation": "https://github.com/basnijholt/adaptive-lighting#readme",
      "version": "1.26.0",
      "requirements": [
        "ulid-transform"
      ]
    }
  },
  "integration_manifest": {
    "domain": "better_thermostat",
    "name": "Better Thermostat",
    "after_dependencies": [
      "climate",
      "zwave_js"
    ],
    "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.7.1-beta4",
    "is_built_in": false,
    "overwrites_built_in": false
  },
  "setup_times": {
    "null": {
      "setup": 0.0001429819967597723
    },
    "01K78XQMM50ZCEPZBBN0CF1DWN": {
      "wait_import_platforms": -8.511010952061042,
      "config_entry_setup": 10.534046998945996
    }
  },
  "data": {
    "info": {
      "cooler": null,
      "humidity_sensor": "sensor.relative_humidity_living_room",
      "model": "Beok wall thermostat",
      "name": "BT Living room",
      "off_temperature": 20,
      "outdoor_sensor": null,
      "target_temp_step": 0.0,
      "temperature_sensor": "sensor.temperature_living_room",
      "tolerance": 0.0,
      "weather": "weather.forecast_home",
      "window_off_delay": 60,
      "window_off_delay_after": 60,
      "window_sensors": "binary_sensor.left_terrace_door_opening_detector_device_9_door"
    },
    "thermostat": {
      "climate.thermostat_1": {
        "name": "Thermostat 1 (Living Room)",
        "state": "heat",
        "attributes": {
          "hvac_modes": [
            "off",
            "heat"
          ],
          "min_temp": 5.0,
          "max_temp": 35.0,
          "target_temp_step": 0.5,
          "preset_modes": [
            "none",
            "manual",
            "auto"
          ],
          "current_temperature": 26.7,
          "temperature": 19.0,
          "hvac_action": "idle",
          "preset_mode": "manual",
          "friendly_name": "Thermostat 1 (Living Room)",
          "supported_features": 401
        },
        "bt_config": {
          "calibration": "hybrid_calibration",
          "calibration_mode": "heating_power_calibration",
          "protect_overheating": false,
          "no_off_system_mode": false,
          "heat_auto_swapped": false,
          "child_lock": false,
          "homematicip": false
        },
        "bt_adapter": "mqtt",
        "bt_integration": "mqtt",
        "model": "Beok wall thermostat"
      }
    },
    "external_temperature_sensor": {
      "entity_id": "sensor.temperature_living_room",
      "state": "21.4524612426758",
      "attributes": {
        "state_class": "measurement",
        "unit_of_measurement": "°C",
        "device_class": "temperature",
        "friendly_name": "Temperature"
      },
      "last_changed": "2025-10-12T06:34:57.276467+00:00",
      "last_reported": "2025-10-12T06:34:57.276467+00:00",
      "last_updated": "2025-10-12T06:34:57.276467+00:00",
      "context": {
        "id": "01K7BJ28VWAVAJ0NBTSC97SPJJ",
        "parent_id": null,
        "user_id": null
      }
    },
    "window_sensor": {
      "entity_id": "binary_sensor.left_terrace_door_opening_detector_device_9_door",
      "state": "off",
      "attributes": {
        "battery_level": 100,
        "device_class": "door",
        "friendly_name": "Left Terrace Door opening detector (device 9) Door"
      },
      "last_changed": "2025-10-12T05:55:10.490534+00:00",
      "last_reported": "2025-10-12T05:55:10.490534+00:00",
      "last_updated": "2025-10-12T05:55:10.490534+00:00",
      "context": {
        "id": "01K7BFSE0T7KSVNFHX5JT1QETP",
        "parent_id": null,
        "user_id": null
      }
    }
  },
  "issues": []
}

debug log

2025-10-12 07:40:29.406 DEBUG (MainThread) [custom_components.better_thermostat.config_flow] Updated config: {'cooler': None, 'humidity_sensor': 'sensor.relative_humidity_living_room', 'model': 'Beok wall thermostat', 'name': 'BT Living room', 'off_temperature': 20, 'outdoor_sensor': None, 'target_temp_step': 0.0, 'temperature_sensor': 'sensor.temperature_living_room', 'thermostat': [{'adapter': None, 'advanced': {'calibration': 'local_calibration_based', 'calibration_mode': 'default', 'protect_overheating': False, 'no_off_system_mode': False, 'heat_auto_swapped': False, 'child_lock': False, 'homematicip': False}, 'integration': 'mqtt', 'model': 'Beok wall thermostat', 'trv': 'climate.thermostat_1'}], 'tolerance': 0.0, 'weather': 'weather.forecast_home', 'window_off_delay': 60, 'window_off_delay_after': 60, 'window_sensors': 'binary_sensor.left_terrace_door_opening_detector_device_9_door'}

Metadata

Metadata

Assignees

Labels

new bugincoming bug issue

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions