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

Add support for Herschel Infrared heaters

Contributed via discussion #1659
Jason Rumney 2 лет назад
Родитель
Сommit
f72190b7d2
3 измененных файлов с 103 добавлено и 1 удалено
  1. 1 0
      ACKNOWLEDGEMENTS.md
  2. 2 1
      DEVICES.md
  3. 100 0
      custom_components/tuya_local/devices/herschel_irheater.yaml

+ 1 - 0
ACKNOWLEDGEMENTS.md

@@ -503,3 +503,4 @@ Further device support has been made with the assistance of users. Please consid
 - [xlemassacre](https://github.com/xlemassacre) for contributing support for Kesser infrared 400W wall and 3000W heaters.
 - [dannygreg](https://github.com/dannygreg)for contributing support for Graywind window shades.
 - [xeroski](https://github.com/xeroski) for assisting with support for Kerui 200W and JS-P162 300W cameras.
+- [dakker78](https://github.com/dakker78) for contributing support for Herschel IR heaters.

+ 2 - 1
DEVICES.md

@@ -23,8 +23,9 @@
 - Eurom Sani Wall Heat 2000 heater
 - Eurom Wall Designheat 2000 heater
 - Goldair heater models beginning with the code GPPH, GCPV, GECO
-- Heatstorm HS-6000-GC heavy duty heater
 - Hama radiator controller
+- Heatstorm HS-6000-GC heavy duty heater
+- Herschel infrared heater 
 - HJZ oil column radiator
 - Hombli radiator controller
 - INOW Wi-Fi heating element (single and dual air/water temperature control variants)

+ 100 - 0
custom_components/tuya_local/devices/herschel_irheater.yaml

@@ -0,0 +1,100 @@
+name: IR heater
+products:
+  - id: 4aVbNfxEYUbylvvW
+    name: Herschel Infrared Heater
+primary_entity:
+  entity: climate
+  icon: "mdi:radiator"
+  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
+      mapping:
+        - scale: 10
+          step: 10
+      range:
+        min: 0
+        max: 370
+    - id: 3
+      type: integer
+      name: current_temperature
+      mapping:
+        - scale: 10
+secondary_entities:
+  - entity: select
+    name: Timer
+    icon: "mdi:timer"
+    category: config
+    dps:
+      - id: 10
+        type: string
+        name: option
+        optional: true
+        mapping:
+          - dps_val: "0"
+            value: "Off"
+          - dps_val: "1"
+            value: "1 hour"
+          - dps_val: "2"
+            value: "2 hours"
+          - dps_val: "3"
+            value: "3 hours"
+          - dps_val: "4"
+            value: "4 hours"
+          - dps_val: "5"
+            value: "5 hours"
+          - dps_val: "6"
+            value: "6 hours"
+          - dps_val: "7"
+            value: "7 hours"
+          - dps_val: "8"
+            value: "8 hours"
+          - dps_val: "9"
+            value: "9 hours"
+          - dps_val: "10"
+            value: "10 hours"
+          - dps_val: "11"
+            value: "11 hours"
+          - dps_val: "12"
+            value: "12 hours"
+          - dps_val: "13"
+            value: "13 hours"
+          - dps_val: "14"
+            value: "14 hours"
+          - dps_val: "15"
+            value: "15 hours"
+          - dps_val: "16"
+            value: "16 hours"
+          - dps_val: "17"
+            value: "17 hours"
+          - dps_val: "18"
+            value: "18 hours"
+          - dps_val: "19"
+            value: "19 hours"
+          - dps_val: "20"
+            value: "20 hours"
+          - dps_val: "21"
+            value: "21 hours"
+          - dps_val: "22"
+            value: "22 hours"
+          - dps_val: "23"
+            value: "23 hours"
+          - dps_val: "24"
+            value: "24 hours"
+  - entity: sensor
+    name: Time remaining
+    class: duration
+    category: diagnostic
+    dps:
+      - id: 11
+        type: integer
+        name: sensor
+        unit: min