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

ADD support for Wilfa Moist C HU-430CW humidifier (#4483)

* ADD support for Wilfa Moist C HU-430CW humidifier

* FIX yamllint

* FIX wilfa_moist_c translation_key sleep

* FIX wilfa_moist_c remove ionizer icon

* FIX wilfa_moist_c translation_key time_remaining

* FIX wilfa_moist_c set problem=1 false; it's tank_empty, handled above

* fix (wilfa_moistc_humidifier): shorten and standardize filename

- no need to include both model name and code in filename
- compress model name into a single word to follow convention

PR #4483

---------

Co-authored-by: Jason Rumney <make-all@users.noreply.github.com>
Nicolaj Græsholt 2 недель назад
Родитель
Сommit
031bfbefe2
1 измененных файлов с 178 добавлено и 0 удалено
  1. 178 0
      custom_components/tuya_local/devices/wilfa_moistc_humidifier.yaml

+ 178 - 0
custom_components/tuya_local/devices/wilfa_moistc_humidifier.yaml

@@ -0,0 +1,178 @@
+name: Humidifier
+products:
+  - id: d6i3plbgjh3urikx
+    manufacturer: Wilfa
+    model: Moist C
+    model_id: HU-430CW
+entities:
+  - entity: humidifier
+    class: humidifier
+    dps:
+      - id: 1
+        name: switch
+        type: boolean
+        mapping:
+          - dps_val: true
+            icon: "mdi:air-humidifier"
+          - dps_val: false
+            icon: "mdi:air-humidifier-off"
+      - id: 13
+        name: humidity
+        type: integer
+        range:
+          min: 30
+          max: 90  # 95 is "Co"
+        mapping:
+          - step: 5
+      - id: 14
+        name: current_humidity
+        type: integer
+
+  - entity: switch
+    name: Continuous Mode  # The 95 "Co" humidity setting
+    category: config
+    icon: "mdi:infinity"
+    dps:
+      - id: 13
+        name: switch
+        type: integer
+        mapping:
+          - dps_val: 95  # If device is 95, Switch is ON
+            value: true
+          - value: false  # If device is anything else (30-90), Switch is OFF
+            dps_val: 40   # Default value when turning OFF (back to normal)
+
+  - entity: fan
+    name: Mist Level
+    dps:
+      - id: 1
+        name: switch
+        type: boolean
+      - id: 23
+        name: speed
+        type: string
+        mapping:
+          - dps_val: level_1
+            value: 30
+          - dps_val: level_2
+            value: 60
+          - dps_val: level_3
+            value: 100
+  - entity: switch
+    translation_key: sleep
+    category: config
+    dps:
+      - id: 16
+        name: switch
+        type: boolean
+  - entity: switch
+    name: Heat
+    category: config
+    icon: "mdi:fire"
+    dps:
+      - id: 26
+        name: switch
+        type: boolean
+  - entity: switch
+    translation_key: ionizer
+    category: config
+    dps:
+      - id: 35
+        name: switch
+        type: boolean
+  - entity: sensor
+    class: temperature
+    dps:
+      - id: 10
+        name: sensor
+        type: integer
+        class: measurement
+      - id: 18
+        name: unit
+        type: string
+        mapping:
+          - dps_val: c
+            value: C
+          - dps_val: f
+            value: F
+  - entity: select
+    category: config
+    translation_key: temperature_unit
+    dps:
+      - id: 18
+        name: option
+        type: string
+        mapping:
+          - dps_val: c
+            value: celsius
+          - dps_val: f
+            value: fahrenheit
+  - entity: select
+    translation_key: timer
+    category: config
+    dps:
+      - id: 19
+        name: option
+        type: string
+        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"
+  - entity: sensor
+    translation_key: time_remaining
+    category: diagnostic
+    dps:
+      - id: 20
+        name: sensor
+        type: integer
+        unit: min
+  - entity: binary_sensor
+    translation_key: tank_empty
+    category: diagnostic
+    dps:
+      - id: 22
+        type: bitfield
+        name: sensor
+        mapping:
+          - dps_val: 1
+            value: true
+          - value: false
+  - entity: binary_sensor
+    class: problem
+    category: diagnostic
+    dps:
+      - id: 22
+        type: bitfield
+        name: sensor
+        mapping:
+          - dps_val: 0
+            value: false
+          - dps_val: 1
+            value: false
+          - value: true
+      - id: 22
+        type: bitfield
+        name: fault_code