Pārlūkot izejas kodu

Add support for SR208C solar water heating controller

Issue #3102
Jason Rumney 8 mēneši atpakaļ
vecāks
revīzija
e8db33a8c2

+ 1 - 0
ACKNOWLEDGEMENTS.md

@@ -920,3 +920,4 @@ Further device support has been made with the assistance of users. Please consid
 - [duckati](https://github.com/duckati) for assisting with support for BBCoin AT5299 PCIe computer switch.
 - [webkaktuspl](https://github.com/webkaktuspl) for assisting with support for Vidos M13-XT video doorbell.
 - [rybe](https://github.com/rybe) for assisting with support for Haozee PS10 presence sensing light switch.
+- [BeriBGood](https://github.com/BeriBGood) for assisting with support for SR208C solar water heating controller.

+ 1 - 0
DEVICES.md

@@ -158,6 +158,7 @@
 - Nulite NL-B245 monobloc heat pump
 - Powerworld PW040, PWS58330, PWS58410 air+water heat pumps
 - Sanden GAU-A45HPD WiFi heat pump controller
+- Lohxa SR208C solar water heating controller
 - Thermex IF series V pro and Lima 80V hot water systems
 
 ### Thermostats

+ 171 - 0
custom_components/tuya_local/devices/lohxa_sr208c_waterheater.yaml

@@ -0,0 +1,171 @@
+name: Solar water heater
+products:
+  - id: hyrswocbx6i1rveo
+    manufacturer: Lohxa
+    model: SR208C
+entities:
+  - entity: water_heater
+    dps:
+      - id: 1
+        type: boolean
+        name: operation_mode
+        mapping:
+          - dps_val: false
+            value: "off"
+          - dps_val: true
+            constraint: mode
+            conditions:
+              - dps_val: auto
+                value: eco
+                default: true
+              - dps_val: heating
+                value: electric
+              - dps_val: cold
+                value: away
+      - id: 2
+        type: string
+        name: mode
+        hidden: true
+      - id: 4
+        type: integer
+        name: temperature
+        unit: C
+        range:
+          min: 0
+          max: 100
+      - id: 22
+        type: integer
+        name: current_temperature
+        mapping:
+          - scale: 10
+          - dps_val: 3888
+            value: null
+          - dps_val: 3999
+            value: null
+  - entity: select
+    translation_key: temperature_unit
+    category: config
+    dps:
+      - id: 6
+        type: string
+        name: option
+        mapping:
+          - dps_val: c
+            value: celsius
+          - dps_val: f
+            value: fahrenheit
+  - entity: switch
+    name: Instant heating
+    icon: "mdi:heating-coil"
+    category: config
+    dps:
+      - id: 8
+        type: boolean
+        name: switch
+  - entity: sensor
+    translation_key: time_remaining
+    class: duration
+    category: diagnostic
+    dps:
+      - id: 14
+        type: integer
+        optional: true
+        name: sensor
+        unit: min
+        class: measurement
+  - entity: binary_sensor
+    class: problem
+    category: diagnostic
+    dps:
+      - id: 15
+        type: bitfield
+        optional: true
+        name: sensor
+        mapping:
+          - dps_val: null
+            value: false
+          - dps_val: 0
+            value: false
+          - value: true
+      - id: 15
+        type: bitfield
+        optional: true
+        name: fault_code
+  - entity: sensor
+    name: Upper tank temperature
+    class: temperature
+    category: diagnostic
+    dps:
+      - id: 21
+        type: integer
+        name: sensor
+        unit: C
+        class: measurement
+        mapping:
+          - scale: 10
+          - dps_val: 3888
+            value: null
+          - dps_val: 3999
+            value: null
+  - entity: sensor
+    name: Solar collector temperature
+    class: temperature
+    category: diagnostic
+    dps:
+      - id: 26
+        type: integer
+        name: sensor
+        unit: C
+        class: measurement
+        mapping:
+          - scale: 10
+          - dps_val: 3888
+            value: null
+          - dps_val: 3999
+            value: null
+  - entity: binary_sensor
+    name: Solar
+    icon: "mdi:solar-power-variant"
+    class: running
+    category: diagnostic
+    dps:
+      - id: 30
+        type: boolean
+        name: sensor
+  - entity: binary_sensor
+    name: Electric element
+    class: running
+    icon: "mdi:heating-coil"
+    category: diagnostic
+    dps:
+      - id: 32
+        type: boolean
+        name: sensor
+  - entity: sensor
+    class: signal_strength
+    category: diagnostic
+    hidden: true
+    dps:
+      - id: 101
+        type: integer
+        optional: true
+        name: sensor
+        unit: dBm
+        class: measurement
+        range:
+          min: 0
+          max: 100
+        mapping:
+          - target_range:
+              min: -90
+              max: -20
+  - entity: text
+    name: Configuration
+    category: config
+    icon: "mdi:cogs"
+    hidden: true
+    dps:
+      - id: 102
+        type: base64
+        optional: true
+        name: value