ソースを参照

Add support for MatSee Plus bidirectional 2-channel clamp meter

Issue #1072
Jason Rumney 2 年 前
コミット
89e3802495

+ 1 - 0
ACKNOWLEDGEMENTS.md

@@ -361,3 +361,4 @@ Further device support has been made with the assistance of users.  Please consi
 - [iindigoo](https://github.com/iindigoo) for assisting with support for MRC Magnum floor heating.
 - [suyashrai](https://github.com/suyashrai) for contributing support for WF520D dual dimmers.
 - [sityware](https://github.com/sitiware) for contributing support for CT20W motion detectors.
+- [Eduardoct](https://github.com/Eduardoct) for assisting with support for MatSee Plus bidirectional 2-channel clamp meters.

+ 1 - 0
DEVICES.md

@@ -240,6 +240,7 @@
 - Compteur digital electric (single phase)
 - DTS238-7 3 phase smart meter
 - eMylo EAI-90 smart meter
+- MatSee Plus bidirectional two channel clamp meter
 - PC311-TY 2 phase power clamp meter
 - PC321-TY 3 phase power clamp meter
 - PJ-1103 power clamp meter

+ 242 - 0
custom_components/tuya_local/devices/matsee_2way_energymeter.yaml

@@ -0,0 +1,242 @@
+name: Bidirectional energy meter
+products:
+  - id: z95s7p3z54xbsjnl
+    name: MatSee Plus bidirectional 2 channel clamp meter
+primary_entity:
+  entity: sensor
+  name: Energy consumed
+  class: energy
+  dps:
+    - id: 1
+      type: integer
+      name: sensor
+      unit: kWh
+      class: measurement
+      mapping:
+        - scale: 100
+secondary_entities:
+  - entity: sensor
+    name: Energy produced
+    class: energy
+    dps:
+      - id: 2
+        type: integer
+        name: sensor
+        unit: kWh
+        class: measurement
+        mapping:
+          - scale: 100
+  - entity: sensor
+    name: Power A
+    class: power
+    category: diagnostic
+    dps:
+      - id: 101
+        type: integer
+        name: sensor
+        unit: W
+        class: measurement
+        mapping:
+          - scale: 10
+      - id: 118
+        type: integer
+        name: calibration
+        mapping:
+          - scale: 1000
+  - entity: sensor
+    name: Power B
+    class: power
+    category: diagnostic
+    dps:
+      - id: 105
+        type: integer
+        name: sensor
+        unit: W
+        class: measurement
+        mapping:
+          - scale: 10
+      - id: 124
+        type: integer
+        name: calibration
+        mapping:
+          - scale: 1000
+  - entity: sensor
+    name: Energy consumed A
+    class: energy
+    category: diagnostic
+    dps:
+      - id: 106
+        type: integer
+        name: sensor
+        unit: kWh
+        class: measurement
+        mapping:
+          - scale: 100
+      - id: 119
+        type: integer
+        name: calibration
+        mapping:
+          - scale: 1000
+  - entity: sensor
+    name: Energy produced A
+    class: energy
+    category: diagnostic
+    dps:
+      - id: 107
+        type: integer
+        name: sensor
+        unit: kWh
+        class: measurement
+        mapping:
+          - scale: 100
+      - id: 127
+        type: integer
+        name: calibration
+        mapping:
+          - scale: 1000
+  - entity: sensor
+    name: Energy consumed B
+    class: energy
+    category: diagnostic
+    dps:
+      - id: 108
+        type: integer
+        name: sensor
+        unit: kWh
+        class: measurement
+        mapping:
+          - scale: 100
+      - id: 125
+        type: integer
+        name: calibration
+        mapping:
+          - scale: 1000
+  - entity: sensor
+    name: Energy produced B
+    class: energy
+    category: diagnostic
+    dps:
+      - id: 109
+        type: integer
+        name: sensor
+        unit: kWh
+        class: measurement
+        mapping:
+          - scale: 100
+      - id: 128
+        type: integer
+        name: calibration
+        mapping:
+          - scale: 1000
+  - entity: sensor
+    name: Power factor A
+    class: power_factor
+    category: diagnostic
+    dps:
+      - id: 110
+        type: integer
+        name: sensor
+        unit: "%"
+        class: measurement
+  - entity: sensor
+    class: frequency
+    category: diagnostic
+    dps:
+      - id: 111
+        type: integer
+        name: sensor
+        unit: Hz
+        class: measurement
+        mapping:
+          - scale: 100
+      - id: 122
+        type: integer
+        name: calibration
+        mapping:
+          - scale: 1000
+  - entity: sensor
+    class: voltage
+    category: diagnostic
+    dps:
+      - id: 112
+        type: integer
+        name: sensor
+        unit: V
+        class: measurement
+        mapping:
+          - scale: 10
+      - id: 116
+        type: integer
+        name: calibration
+        mapping:
+          - scale: 1000
+  - entity: sensor
+    name: Current A
+    class: current
+    category: diagnostic
+    dps:
+      - id: 113
+        type: integer
+        name: sensor
+        unit: A
+        class: measurement
+        mapping:
+          - scale: 1000
+      - id: 117
+        type: integer
+        name: calibration
+        mapping:
+          - scale: 1000
+  - entity: sensor
+    name: Current B
+    class: current
+    category: diagnostic
+    dps:
+      - id: 114
+        type: integer
+        name: sensor
+        unit: A
+        class: measurement
+        mapping:
+          - scale: 1000
+      - id: 123
+        type: integer
+        name: calibration
+        mapping:
+          - scale: 1000
+  - entity: sensor
+    name: Total power
+    class: power
+    category: diagnostic
+    dps:
+      - id: 115
+        type: integer
+        name: sensor
+        unit: W
+        class: measurement
+        mapping:
+          - scale: 10
+  - entity: sensor
+    name: Power factor B
+    class: power_factor
+    category: diagnostic
+    dps:
+      - id: 121
+        type: integer
+        name: sensor
+        unit: "%"
+        class: measurement
+        mapping:
+          - scale: 100
+  - entity: number
+    name: Reporting rate
+    category: config
+    icon: "mdi:timer-refresh"
+    dps:
+      - id: 
+        type: integer
+        name: value
+        unit: s
+        range:
+          min: 3
+          max: 60