Răsfoiți Sursa

feat (devices): add Klarstein WonderSky Smart 360W ACO14 (#4398)

* feat (devices): add Klarstein WonderSky Smart 360W ACO14

* Update translation key

* feat (devices): add optional light_mode hidden entity to Klarstein WonderSky Smart 360W ACO14

* feat (devices): code review changes

* feat (klarstein_wondersky_heater): naming changes

- include device type in filename to help users with identification
- shorten top level name (it is prepended in various places in the UI)

PR #4398

---------

Co-authored-by: Robert Rychcicki <robert.rychcicki@solveamaze.uk>
Co-authored-by: Jason Rumney <make-all@users.noreply.github.com>
er2er 1 săptămână în urmă
părinte
comite
f129b068dc

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

@@ -0,0 +1,156 @@
+name: IR heater
+products:
+  - id: canayin50j2qfgml
+    manufacturer: Klarstein
+    model: Wondersky Smart 360W
+    model_id: ACO14
+entities:
+  - entity: climate
+    translation_key: heater
+    dps:
+      - id: 1
+        type: boolean
+        name: hvac_mode
+        mapping:
+          - dps_val: false
+            value: "off"
+          - dps_val: true
+            value: "heat"
+      - id: 2
+        type: integer
+        name: temperature
+        unit: C
+        range:
+          min: 5
+          max: 50
+      - id: 3
+        type: integer
+        name: current_temperature
+      - id: 6
+        type: boolean
+        name: preset_mode
+        mapping:
+          - dps_val: false
+            value: "none"
+          - dps_val: true
+            value: "eco"
+      - id: 11
+        type: string
+        name: hvac_action
+        mapping:
+          - dps_val: "standby"
+            value: "idle"
+          - dps_val: "heating"
+            value: "heating"
+          - dps_val: "timer"
+            value: "heating"
+  - entity: light
+    dps:
+      - id: 102
+        type: string
+        name: switch
+        mapping:
+          - dps_val: "0"
+            value: false
+          - dps_val: "1"
+            value: true
+          - dps_val: "2"
+            value: true
+            hidden: true
+      - id: 101
+        type: string
+        name: brightness
+        mapping:
+          - dps_val: "0"
+            value: 25
+          - dps_val: "1"
+            value: 56
+          - dps_val: "2"
+            value: 84
+          - dps_val: "3"
+            value: 112
+          - dps_val: "4"
+            value: 140
+          - dps_val: "5"
+            value: 168
+          - dps_val: "6"
+            value: 196
+          - dps_val: "7"
+            value: 224
+          - dps_val: "8"
+            value: 255
+      - id: 102
+        type: string
+        name: color_temp
+        mapping:
+          - dps_val: "1"
+            value: 6500
+          - dps_val: "2"
+            value: 2700
+  - entity: select
+    translation_key: timer
+    category: config
+    dps:
+      - id: 19
+        type: string
+        name: option
+        mapping:
+          - dps_val: cancel
+            value: "cancel"
+          - dps_val: "1h"
+            value: "1h"
+          - dps_val: "2h"
+            value: "2h"
+          - dps_val: "3h"
+            value: "3h"
+          - dps_val: "4h"
+            value: "4h"
+          - dps_val: "5h"
+            value: "5h"
+          - dps_val: "6h"
+            value: "6h"
+          - dps_val: "7h"
+            value: "7h"
+          - dps_val: "8h"
+            value: "8h"
+          - dps_val: "9h"
+            value: "9h"
+          - dps_val: "10h"
+            value: "10h"
+          - dps_val: "11h"
+            value: "11h"
+          - dps_val: "12h"
+            value: "12h"
+          - dps_val: "13h"
+            value: "13h"
+          - dps_val: "14h"
+            value: "14h"
+          - dps_val: "15h"
+            value: "15h"
+          - dps_val: "16h"
+            value: "16h"
+          - dps_val: "17h"
+            value: "17h"
+          - dps_val: "18h"
+            value: "18h"
+          - dps_val: "19h"
+            value: "19h"
+          - dps_val: "20h"
+            value: "20h"
+          - dps_val: "21h"
+            value: "21h"
+          - dps_val: "22h"
+            value: "22h"
+          - dps_val: "23h"
+            value: "23h"
+          - dps_val: "24h"
+            value: "24h"
+  - entity: sensor
+    translation_key: time_remaining
+    class: duration
+    category: diagnostic
+    dps:
+      - id: 20
+        type: integer
+        name: sensor
+        unit: min