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
752 stars 123 forks source link

Switch from Zigbee2MQTT depended device identification strings to general HA ones. #182

Closed RubenKelevra closed 2 years ago

RubenKelevra commented 2 years ago

We currently rely on Zigbee2MQTT device information to be active to identify the devices.

That's not necessary. HA itself already has device information stored for all devices (not only Zigbee). Using additional fields limits us to only support Zigbee2MQTT devices and also needs manual intervention to activate it.

So let's switch to HA device information, we still need the info on those:

If you got the hardware, feel free to make a PR and add the info to the table in the Readme.md

How to find the information:

Device Info 1 Device Info 2

RubenKelevra commented 2 years ago

In the demo case it's

model: Radiator valve with thermostat (TS0601_thermostat) and manufacturer: TuYa

RubenKelevra commented 2 years ago

This would permanently fix https://github.com/KartoffelToby/ai_thermostat/issues/1 :)

RubenKelevra commented 2 years ago

@KartoffelToby which devices do you got? :)

KartoffelToby commented 2 years ago

Eurotronic Spirit and the moes, i think its the 802 but there are always shown as both with a slash

Hardware shoud be the same so its not relevant

tieuwe commented 2 years ago

Below info for Moes BRT-100-TRV:

moes

availability:
  - topic: zigbee2mqtt/bridge/state
current_temperature_template: '{{ value_json.local_temperature }}'
current_temperature_topic: zigbee2mqtt/Zone CV - TRV Keuken
device:
  identifiers:
    - zigbee2mqtt_0xxxxxxxxxxxxxxxxx
  manufacturer: Moes
  model: Thermostatic radiator valve (BRT-100-TRV)
  name: Zone CV - TRV Keuken
hold_command_topic: zigbee2mqtt/Zone CV - TRV Keuken/set/preset
hold_modes:
  - programming
  - manual
  - temporary_manual
  - holiday
hold_state_template: '{{ value_json.preset }}'
hold_state_topic: zigbee2mqtt/Zone CV - TRV Keuken
json_attributes_topic: zigbee2mqtt/Zone CV - TRV Keuken
max_temp: '35'
min_temp: '5'
name: Zone CV - TRV Keuken
temp_step: 0.5
temperature_command_topic: zigbee2mqtt/Zone CV - TRV Keuken/set/current_heating_setpoint
temperature_state_template: '{{ value_json.current_heating_setpoint }}'
temperature_state_topic: zigbee2mqtt/Zone CV - TRV Keuken
temperature_unit: C
unique_id: 0xxxxxxxxxxxxxxxxx_climate_zigbee2mqtt
platform: mqtt
yavasilek commented 2 years ago

I seem to be a little different. There is an option (availability_mode: all) Moes BRT-100-TRV

availability:
  - topic: zigbee2mqtt/bridge/state
  - topic: zigbee2mqtt/Детская/availability
availability_mode: all
current_temperature_template: '{{ value_json.local_temperature }}'
current_temperature_topic: zigbee2mqtt/Детская
device:
  identifiers:
    - zigbee2mqtt_0xxxxxxxxxxxxxxx
  manufacturer: Moes
  model: Thermostatic radiator valve (BRT-100-TRV)
  name: Детская
hold_command_topic: zigbee2mqtt/Детская/set/preset
hold_modes:
  - programming
  - manual
  - temporary_manual
  - holiday
hold_state_template: '{{ value_json.preset }}'
hold_state_topic: zigbee2mqtt/Детская
json_attributes_topic: zigbee2mqtt/Детская
max_temp: '35'
min_temp: '5'
name: Детская
temp_step: 0.5
temperature_command_topic: zigbee2mqtt/Детская/set/current_heating_setpoint
temperature_state_template: '{{ value_json.current_heating_setpoint }}'
temperature_state_topic: zigbee2mqtt/Детская
temperature_unit: C
unique_id: 0xxxxxxxxxxxxxxx_climate_zigbee2mqtt
platform: mqtt
ChibangLW commented 2 years ago

Does that mean z2m is not needed anymore for zigbee TRVs if this issue is closed? Or is it only for generic information and the business logic still depends on z2m?

RubenKelevra commented 2 years ago

Does that mean z2m is not needed anymore for zigbee TRVs if this issue is closed? Or is it only for generic information and the business logic still depends on z2m?

z2m will still handle your TRV. It just means we can handle all climate devices HA can handle, so Wifi, DECT, cloud devices, etc.

jeroen85 commented 2 years ago

Does it mean it can also handle zigbee TRVs connected via Deconz/Conbee?