Explorar el Código

Add support for Avatto WHS20S climate IR remote

Issue #3043
Jason Rumney hace 9 meses
padre
commit
fed577b2c6

+ 1 - 0
ACKNOWLEDGEMENTS.md

@@ -900,3 +900,4 @@ Further device support has been made with the assistance of users. Please consid
 - [lemeshovich](https://github.com/lemeshovich) for contributing support for Haozee ZG-302ZM presence dual light switch.
 - [lemeshovich](https://github.com/lemeshovich) for contributing support for Haozee ZG-302ZM presence dual light switch.
 - [emmanuel-ferdman](https://github.com/emmanuel-ferdman) for contributing logging improvements.
 - [emmanuel-ferdman](https://github.com/emmanuel-ferdman) for contributing logging improvements.
 - [r3m0x](https://github.com/r3m0x) for contributing support for PTH9BW air quality monitor.
 - [r3m0x](https://github.com/r3m0x) for contributing support for PTH9BW air quality monitor.
+- [JabeBRD](https://github.com/JabeBRD) for assisting with support for Avatto WHS20S climate IR remote.

+ 1 - 0
DEVICES.md

@@ -928,6 +928,7 @@ port and password.
 ### Remote controllers
 ### Remote controllers
 
 
 - Arlec HUBRF06HA RF 8x8 learning remote transmitter
 - Arlec HUBRF06HA RF 8x8 learning remote transmitter
+- Avatto WHS20S remote control with temperature and humidity sensors
 - Moes IR/RF remote controller (also IR controller pro, may work only for IR)
 - Moes IR/RF remote controller (also IR controller pro, may work only for IR)
 - Moes touchscreen control panel mini with IR remote and Bluetooth sigmesh hub
 - Moes touchscreen control panel mini with IR remote and Bluetooth sigmesh hub
 - Universal remote control with temperature and humidity sensors
 - Universal remote control with temperature and humidity sensors

+ 116 - 0
custom_components/tuya_local/devices/avatto_whs20s_irremote.yaml

@@ -0,0 +1,116 @@
+name: Climate remote
+products:
+  - id: 09gdcqy0dgziveek
+    manufacturer: Avatto
+    model: WHS20S
+entities:
+  - entity: sensor
+    class: temperature
+    dps:
+      - id: 1
+        type: integer
+        name: sensor
+        class: measurement
+        mapping:
+          - scale: 10
+      - id: 105
+        type: string
+        name: unit
+        mapping:
+          - dps_val: f
+            value: F
+          - value: C
+  - entity: sensor
+    class: humidity
+    dps:
+      - id: 2
+        type: integer
+        name: sensor
+        unit: "%"
+        class: measurement
+  - entity: sensor
+    class: battery
+    category: diagnostic
+    dps:
+      - id: 4
+        type: integer
+        name: sensor
+        unit: "%"
+        class: measurement
+      - id: 8
+        type: boolean
+        optional: true
+        name: charging
+  - entity: binary_sensor
+    class: problem
+    category: diagnostic
+    dps:
+      - id: 10
+        type: string
+        name: sensor
+        mapping:
+          - dps_val: device_fault
+            value: true
+          - value: false
+      - id: 10
+        type: string
+        name: description
+      - id: 103
+        type: string
+        optional: true
+        name: device_status
+      - id: 104
+        type: string
+        optional: true
+        name: device_version
+  - entity: binary_sensor
+    class: connectivity
+    category: diagnostic
+    dps:
+      - id: 10
+        type: string
+        name: sensor
+        mapping:
+          - dps_val: online
+            value: true
+          - value: false
+      - id: 11
+        type: string
+        name: power_off_reason
+  - entity: binary_sensor
+    class: plug
+    category: diagnostic
+    dps:
+      - id: 20
+        type: string
+        name: sensor
+        mapping:
+          - dps_val: usb_power
+            value: true
+          - value: false
+      - id: 20
+        type: string
+        name: details
+  - entity: select
+    translation_key: temperature_unit
+    category: config
+    dps:
+      - id: 105
+        type: string
+        name: option
+        mapping:
+          - dps_val: c
+            value: celsius
+          - dps_val: f
+            value: fahrenheit
+  - entity: remote
+    dps:
+      - id: 201
+        name: send
+        type: string
+        optional: true
+      - id: 202
+        name: receive
+        type: string
+        optional: true
+        persist: false