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

Add support for Inkbird IHC-200 humidity controller

Issue #1466
Jason Rumney 2 лет назад
Родитель
Сommit
9309dce34c

+ 1 - 0
ACKNOWLEDGEMENTS.md

@@ -459,3 +459,4 @@ Further device support has been made with the assistance of users. Please consid
 - [aver-ua](https://github.com/aver-ua) for assisting with support for Tongou QCB2-WB circuit breakers.
 - [Sh4r0](https://github.com/Sh4r0) for assisting with support for Tesvor S6 vacuums.
 - [wholly1971](https://github.com/wholly1971) for assisting with support for Madimack Eco pool heatpumps.
+- [rbrtwillis](https://github.com/rbrtwillis) for assisting with support for Inkbird IHC-200 humidity controllers.

+ 2 - 0
DEVICES.md

@@ -242,6 +242,7 @@
 - Greenmigo Alpha Q25 dehumidifier
 - Honeywell TP(30/50/70) dehumidifiers
 - Hyundai Sahara dehumidifier
+- Inkbird IHC-200 humidity controller
 - Inventor Atmosphere XL dehumidifier
 - Inventor Eva Ion Pro dehumidifier
 - JJPro JPD01 dehumidifer
@@ -258,6 +259,7 @@
 - BlitzWolf BW-SH2 humidifier
 - BlitzWolf BW-SH5 humidifier
 - Eanons QT-JS2014 purifying humidifier
+- Inkbird IHC-200 humidity controller
 - Klarta Humea humidifier
 - Kyvol EA200 humidifier
 - Stadler Eva humidifier

+ 166 - 0
custom_components/tuya_local/devices/inkbird_ihc200_humiditycontroller.yaml

@@ -0,0 +1,166 @@
+name: Humidity controller
+products:
+  - id: hsstqaa2hn73auhj
+    name: Inkbird IHC-200
+primary_entity:
+  entity: humidifier
+  dps:
+    - id: 12
+      type: bitfield
+      name: fault_code
+    - id: 104
+      type: integer
+      name: current_humidity
+      mapping:
+        - scale: 10
+    - id: 106
+      type: integer
+      name: humidity
+      range:
+        min: 50
+        max: 990
+      mapping:
+        - scale: 10
+secondary_entities:
+  - entity: binary_sensor
+    name: Fault
+    class: problem
+    category: diagnostic
+    dps:
+      - id: 12
+        type: bitfield
+        name: sensor
+        mapping:
+          - dps_val: 0
+            value: false
+          - value: true
+  - entity: number
+    name: Calibration
+    category: config
+    icon: "mdi:format-vertical-align-center"
+    dps:
+      - id: 102
+        type: integer
+        name: value
+        unit: "%"
+        range:
+          min: -200
+          max: 200
+        mapping:
+          - scale: 10
+  - entity: number
+    name: Compressor delay
+    category: config
+    icon: "mdi:camera-timer"
+    dps:
+      - id: 108
+        type: integer
+        name: value
+        unit: min
+        range:
+          min: 0
+          max: 10
+   - entity: number
+    name: Low humidity threshold
+    category: config
+    icon: "mdi:format-vertical-align-bottom"
+    dps:
+      - id: 110
+        type: integer
+        name: value
+        unit: "%"
+        range:
+          min: 50
+          max: 990
+        mapping:
+          - scale: 10
+  - entity: switch
+    name: High humidity alarm
+    icon: "mdi:water-percent-alert"
+    category: config
+    dps:
+      - id: 111
+        type: boolean
+        name: switch
+  - entity: switch
+    name: Low humidity alarm
+    icon: "mdi:water-percent-alert"
+    category: config
+    dps:
+      - id: 112
+        type: boolean
+        name: switch
+  - entity: binary_sensor
+    name: Probe error
+    class: problem
+    category: diagnostic
+    dps:
+      - id: 113
+        type: boolean
+        name: sensor
+  - entity: sensor
+    name: Output
+    class: enum
+    icon: "mdi:air-humidifier"
+    category: diagnostic
+    dps:
+      - id: 115
+        type: string
+        name: sensor
+        mapping:
+          - dps_val: "0"
+            value: Dehumidifier idle
+          - dps_val: "1"
+            value: Dehumidifying
+          - dps_val: "2"
+            value: Humidifier idle
+          - dps_val: "3"
+            value: Humidifying
+  - entity: number
+    name: Humidify when below by
+    category: config
+    icon: "mdi:arrow-expand-up"
+    dps:
+      - id: 117
+        type: integer
+        name: value
+        unit: "%"
+        range:
+          min: 10
+          max: 200
+        mapping:
+          - scale: 10
+  - entity: number
+    name: Dehumidify when above by
+    category: config
+    icon: "mdi:arrow-expand-down"
+    dps:
+      - id: 118
+        type: integer
+        name: value
+        unit: "%"
+        range:
+          min: 10
+          max: 200
+        mapping:
+          - scale: 10
+  - entity: binary_sensor
+    name: Alarm
+    class: sound
+    category: diagnostic
+    dps:
+      - id: 119
+        type: boolean
+        name: sensor
+  - entity: button
+    name: Alarm cancel
+    category: config
+    dps:
+      - id: 119
+        type: boolean
+        name: button
+        mapping:
+          - dps_val: true
+            value: false
+          - dps_val: false
+            value: true