Просмотр исходного кода

Add support Thermann R290 heat pump (#4165)

* Add Thermann R290 heat pump water heater config

Introduces a new device configuration for the Thermann R290 heat pump water heater, including support for water heater controls, diagnostic sensors, and various temperature and operational sensors.

* Remove icon fields from dps entries

Deleted the 'icon' attributes from DPS entries due to failing tests

* Update entity names in Thermann R290 config

Renamed entity fields to use snake_case: 'Operation mode' to 'operation_mode', 'Set temperature' to 'temperature', and 'Current temperature' to 'current_temperature' for consistency and improved integration.

* Update entity names in Thermann R290 device config

Renamed 'Diagnostic sensor' to 'sensor' and 'Fault Code' to 'fault_code' in the Thermann R290 heat pump water heater YAML configuration

* feat (thermann_r290_waterheater): rename and tidy

- rename file to have less components and match naming convention
- split power out so it can be switched
- use only valid operation modes
- use translations where available

PR #4165

---------

Co-authored-by: Jason Rumney <make-all@users.noreply.github.com>
Declan Wade 1 месяц назад
Родитель
Сommit
10051ec52f
1 измененных файлов с 159 добавлено и 0 удалено
  1. 159 0
      custom_components/tuya_local/devices/thermann_r290_waterheater.yaml

+ 159 - 0
custom_components/tuya_local/devices/thermann_r290_waterheater.yaml

@@ -0,0 +1,159 @@
+name: Water heat pump
+products:
+  - id: yyyonqkhysbmr2ov
+    manufacturer: Thermann
+    model: R290
+entities:
+  - entity: switch
+    dps:
+      - id: 1
+        type: boolean
+        name: switch
+  - entity: water_heater
+    dps:
+      - id: 4
+        type: string
+        name: operation_mode
+        mapping:
+          - dps_val: water
+            value: heat_pump
+          - dps_val: boost
+            value: performance
+          - dps_val: holiday
+            value: away
+          - dps_val: rescue
+            value: electric
+      - id: 2
+        type: integer
+        name: temperature
+        unit: C
+        range:
+          min: 10
+          max: 65
+      - id: 3
+        type: integer
+        name: current_temperature
+  - entity: binary_sensor
+    class: problem
+    category: diagnostic
+    dps:
+      - id: 9
+        type: bitfield
+        name: sensor
+        mapping:
+          - dps_val: 0
+            value: false
+          - value: true
+      - id: 9
+        type: bitfield
+        name: fault_code
+  - entity: binary_sensor
+    name: Holiday mode
+    icon: "mdi:palm-tree"
+    category: diagnostic
+    dps:
+      - id: 101
+        type: boolean
+        name: sensor
+  - entity: sensor
+    name: Remaining holiday
+    class: duration
+    icon: "mdi:counter"
+    category: diagnostic
+    dps:
+      - id: 102
+        type: integer
+        name: sensor
+        unit: d
+  - entity: binary_sensor
+    name: Compressor
+    icon: "mdi:hvac"
+    class: running
+    category: diagnostic
+    dps:
+      - id: 103
+        type: boolean
+        name: sensor
+  - entity: binary_sensor
+    name: Fan
+    icon: "mdi:fan"
+    class: running
+    category: diagnostic
+    dps:
+      - id: 104
+        type: boolean
+        name: sensor
+  - entity: binary_sensor
+    name: Heating element
+    class: running
+    category: diagnostic
+    icon: "mdi:heating-coil"
+    dps:
+      - id: 105
+        type: boolean
+        name: sensor
+  - entity: sensor
+    name: Expansion valve position
+    icon: "mdi:pipe-valve"
+    category: diagnostic
+    dps:
+      - id: 106
+        type: integer
+        name: sensor
+  - entity: sensor
+    name: Inlet water temperature
+    class: temperature
+    icon: "mdi:water-thermometer"
+    category: diagnostic
+    dps:
+      - id: 107
+        type: integer
+        name: sensor
+        unit: C
+  - entity: sensor
+    name: Ambient temperature
+    icon: "mdi:thermometer"
+    class: temperature
+    category: diagnostic
+    dps:
+      - id: 108
+        type: integer
+        name: sensor
+        unit: C
+  - entity: sensor
+    name: Discharge temperature
+    icon: "mdi:coolant-temperature"
+    class: temperature
+    category: diagnostic
+    dps:
+      - id: 109
+        type: integer
+        name: sensor
+        unit: C
+  - entity: sensor
+    name: Coil temperature
+    icon: "mdi:thermometer-lines"
+    class: temperature
+    category: diagnostic
+    dps:
+      - id: 110
+        type: integer
+        name: sensor
+        unit: C
+  - entity: sensor
+    name: Suction temperature
+    icon: "mdi:hydraulic-oil-temperature"
+    class: temperature
+    category: diagnostic
+    dps:
+      - id: 111
+        type: integer
+        name: sensor
+        unit: C
+  - entity: binary_sensor
+    translation_key: defrost
+    category: diagnostic
+    dps:
+      - id: 112
+        type: boolean
+        name: sensor