Преглед изворни кода

Add support for ETOP-HT thermostat

Issue #272
Jason Rumney пре 3 година
родитељ
комит
e258ca519c
3 измењених фајлова са 161 додато и 0 уклоњено
  1. 3 0
      ACKNOWLEDGEMENTS.md
  2. 2 0
      DEVICES.md
  3. 156 0
      custom_components/tuya_local/devices/etop_ht_thermostat.yaml

+ 3 - 0
ACKNOWLEDGEMENTS.md

@@ -127,3 +127,6 @@ Further device support has been made with the assistance of users.  Please consi
 - [geroulas](https://github.com/geroulas) for assisting with support for Inventor Atmosphere XL dehumidifiers.
 - [and7ey](https://github.com/and7ey) for assisting with support for Screen sync smart lights.
 - [dragosmd](https://github.com/dragosmd) and [RomchikL](https://github.com/RomchikL) for assisting with support for more dual switches.
+- [patrik-malina](https://github.com/patrik-malina) for contributing improvements to Kyvol vacuums.
+- [cr4shydlo](https://github.com/cr4shydlo) for assistance supporting Rotenso Roni heat pumps.
+- [mojiro](https://github.com/mojiro) for contributing support for ETOP-HT thermostats.

+ 2 - 0
DEVICES.md

@@ -33,6 +33,7 @@
 - TroniTechnik Hellnar Klimagerät
 - Be Cool BC14KL2101F
 - Sendo air conditioner
+- Rotenso Roni R35WI
 
 ### Pool heaters / heatpumps
 
@@ -76,6 +77,7 @@
 - Moes MS-103 temperature and humidity switch (partial functions, temperature only)
 - Beok TGR81 thermostat
 - T5E-WF thermostat
+- ETOP-HT thermostat
 
 ### Fans
 

+ 156 - 0
custom_components/tuya_local/devices/etop_ht_thermostat.yaml

@@ -0,0 +1,156 @@
+name: ETOP-HT thermostat
+products:
+  - id: viav1onpzcozfneb
+
+primary_entity:
+  entity: climate
+  name: Thermostat
+  dps:
+    - id: 1
+      type: boolean
+      name: hvac_mode
+      mapping:
+        - dps_val: false
+          value: "off"
+          icon_priority: 1
+        - dps_val: true
+          value: heat
+          icon_priority: 1
+    - id: 2
+      type: string
+      name: preset_mode
+      mapping:
+        - dps_val: manual
+          value: none
+          icon: "mdi:cursor-pointer"
+        - dps_val: eco
+          value: eco
+          icon: "mdi:sprout"
+        - dps_val: auto
+          value: activity
+          icon: "mdi:thermostat-auto"
+    - id: 3
+      type: string
+      name: hvac_action
+      mapping:
+        - dps_val: no_heating
+          value: "off"
+        - dps_val: heating
+          value: heating
+    - id: 24
+      type: integer
+      name: current_temperature
+      range:
+        min: 0
+        max: 1000
+      mapping:
+        - scale: 10
+          step: 5
+    - id: 16
+      type: integer
+      name: temperature
+      range:
+        min: 0
+        max: 1000
+      mapping:
+        - scale: 10
+          step: 5
+    - id: 26
+      type: integer
+      name: min_temperature
+      range:
+        min: 0
+        max: 1000
+      mapping:
+        - scale: 10
+          step: 5
+    - id: 19
+      type: integer
+      name: max_temperature
+      range:
+        min: 50
+        max: 1000
+      mapping:
+        - scale: 10
+          step: 5
+
+secondary_entities:
+  - entity: switch
+    name: "Anti-frost"
+    icon: "mdi:snowflake-melt"
+    category: config
+    dps:
+      - id: 10
+        type: boolean
+        name: switch
+  - entity: lock
+    name: "Child lock"
+    category: config
+    dps:
+      - id: 40
+        type: boolean
+        name: lock
+        mapping:
+          - dps_val: true
+            icon: "mdi:hand-back-right-off"
+          - dps_val: false
+            icon: "mdi:hand-back-right"
+  - entity: number
+    name: "Setpoint min."
+    category: config
+    mode: slider
+    dps:
+      - id: 26
+        name: value
+        type: integer
+        unit: C
+        range:
+          min: 0
+          max: 1000
+        mapping:
+          - scale: 10
+            step: 5
+            icon: "mdi:thermometer-low"
+  - entity: number
+    name: "Setpoint max."
+    category: config
+    mode: slider
+    dps:
+      - id: 19
+        type: integer
+        name: value
+        unit: C
+        range:
+          min: 50
+          max: 1000
+        mapping:
+          - scale: 10
+            step: 5
+            icon: "mdi:thermometer-high"
+  - entity: number
+    name: Temperature correction
+    category: config
+    mode: slider
+    dps:
+      - id: 27
+        name: value
+        type: integer
+        unit: C
+        range:
+          min: -100
+          max: 100
+        mapping:
+          - scale: 10
+            step: 5
+            icon: "mdi:wrench-clock"
+  - entity: number
+    name: Error
+    category: diagnostic
+    class: problem
+    dps:
+      - id: 45
+        type: bitfield
+        name: value
+        readonly: true
+        mapping:
+          - icon: "mdi:alert"