Преглед изворни кода

Add support for V-WIFI-DL01-ES energy meter

Issue #3161
Jason Rumney пре 10 месеци
родитељ
комит
24b52be3c5

+ 1 - 0
ACKNOWLEDGEMENTS.md

@@ -932,3 +932,4 @@ Further device support has been made with the assistance of users. Please consid
 - [sangphan12](https://github.com/sangphan12) for assisting with support for Neo Siren Alarm 2.
 - [orzeu](https://github.com/orzeu) for assisting with support for Parkside PPWD 30 A1 workshop vacuum.
 - [RudikHotValliant](https://github.com/RudikHotValliant) for assisting with support for Aeno EK7S kettle.
+- [sidkipper1](https://github.com/sidkipper1) for assisting with support for V-WIFI-DL01-ES energy meter.

+ 2 - 1
DEVICES.md

@@ -466,7 +466,8 @@
 - Tongou ST463JWT 4P 3-phase circuit breaker
 - Tongou TO-Q-SYS-WT energy monitoring circuit breaker
 - Unknown brand dual channel smart meter
-- V-WIFI-DL02-ES energy consumption clamp meter
+- V-WIFI-DL01-ES energy consumption single clamp meter
+- V-WIFI-DL02-ES energy consumption dual clamp meter
 - WDYK 2P63A, 3P 400V, 4P100A  energy meter circuit breakers
 - Xoca DAC2121C BI energy meter
 - Yagusmart 3PN 63A 3-phase multi-tariff energy meter

+ 173 - 0
custom_components/tuya_local/devices/dl01es_energymeter.yaml

@@ -0,0 +1,173 @@
+name: Energy meter
+products:
+  - id: dyazpvq8orn3psn1
+    model: V-WIFI-DL01-ES
+entities:
+  - entity: sensor
+    name: Total energy
+    class: energy
+    dps:
+      - id: 108
+        name: sensor
+        type: integer
+        optional: true
+        unit: kWh
+        class: total_increasing
+        mapping:
+          - scale: 1000
+      - id: 109
+        name: today
+        type: integer
+        optional: true
+        mapping:
+          - scale: 1000
+      - id: 104
+        name: add_ele
+        type: integer
+        optional: true
+        mapping:
+          - scale: 100
+      - id: 112
+        name: add_today
+        type: integer
+        optional: true
+        mapping:
+          - scale: 100
+  - entity: sensor
+    category: diagnostic
+    class: power
+    dps:
+      - id: 105
+        name: sensor
+        type: integer
+        unit: W
+        force: true
+        class: measurement
+        mapping:
+          - scale: 10
+  - entity: sensor
+    category: diagnostic
+    class: current
+    dps:
+      - id: 106
+        name: sensor
+        type: integer
+        unit: A
+        class: measurement
+        force: true
+        mapping:
+          - scale: 1000
+  - entity: sensor
+    category: diagnostic
+    class: voltage
+    dps:
+      - id: 107
+        name: sensor
+        type: integer
+        unit: V
+        class: measurement
+        force: true
+        mapping:
+          - scale: 10
+  - entity: binary_sensor
+    name: Power alert
+    class: safety
+    category: diagnostic
+    dps:
+      - id: 110
+        type: string
+        name: sensor
+        mapping:
+          - dps_val: warn
+            value: true
+          - value: false
+  - entity: number
+    name: Power limit
+    category: config
+    class: power
+    dps:
+      - id: 111
+        type: integer
+        name: value
+        unit: W
+        range:
+          min: 200
+          max: 50000
+        mapping:
+          - step: 100
+  - entity: binary_sensor
+    class: connectivity
+    name: Cloud
+    category: diagnostic
+    dps:
+      - id: 113
+        type: string
+        name: sensor
+        mapping:
+          - dps_val: cloud_net
+            value: true
+          - value: false
+  - entity: binary_sensor
+    class: connectivity
+    category: diagnostic
+    dps:
+      - id: 113
+        type: string
+        name: sensor
+        mapping:
+          - dps_val: cloud_net
+            value: true
+          - dps_val: local_net
+            value: true
+          - value: false
+  - entity: event
+    name: Sync request
+    dps:
+      - id: 101
+        type: string
+        name: event
+        optional: true
+        mapping:
+          - dps_val: idle
+            value: idle
+          - dps_val: request
+            value: request
+  - entity: button
+    name: Sync idle
+    category: config
+    dps:
+      - id: 102
+        type: string
+        optional: true
+        name: button
+        mapping:
+          - dps_val: idle
+            value: true
+  - entity: button
+    name: Sync ok
+    category: config
+    dps:
+      - id: 102
+        type: string
+        optional: true
+        name: button
+        mapping:
+          - dps_val: "ok"
+            value: true
+  - entity: sensor
+    translation_key: status
+    class: enum
+    category: diagnostic
+    dps:
+      - id: 103
+        type: string
+        name: sensor
+        mapping:
+          - dps_val: close
+            value: close
+          - dps_val: monitor
+            value: monitor
+          - dps_val: working
+            value: working
+          - dps_val: warning
+            value: warning

+ 0 - 1
custom_components/tuya_local/devices/tuya_energy_meter.yaml

@@ -21,7 +21,6 @@ entities:
         mapping:
           - dps_val: close
             value: close
-            default: true
           - dps_val: monitor
             value: monitor
           - dps_val: working