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

Unknow 2way energy meter: changes from review

- Add commented dps as optional
- remove step: 1, add other steps into a mapping
- let some default translations show through

PR #2282
Jason Rumney 1 год назад
Родитель
Сommit
fdbc605894
1 измененных файлов с 145 добавлено и 210 удалено
  1. 145 210
      custom_components/tuya_local/devices/unknow_2way_energymeter.yaml

+ 145 - 210
custom_components/tuya_local/devices/unknow_2way_energymeter.yaml

@@ -2,10 +2,9 @@
 name: Bidirectional energy meter
 products:
   - id: 8bjnabt4gh8tu4vr
-    name: Smart meters
+    name: Unbranded dual channel
 primary_entity:
   entity: sensor
-  name: Forward energy total
   class: energy
   dps:
     - id: 1
@@ -16,21 +15,15 @@ primary_entity:
       class: total_increasing
       mapping:
         - scale: 100
+    - id: 122
+      type: integer
+      optional: true
+      name: hourly
+      mapping:
+        - scale: 100
 secondary_entities:
   - entity: sensor
-    name: Forward energy total hour
-    class: energy
-    dps:
-      - id: 122
-        type: integer
-        optional: true
-        name: sensor
-        unit: kWh
-        class: total_increasing
-        mapping:
-          - scale: 100
-  - entity: sensor
-    name: Reverse energy total
+    name: Reverse energy
     class: energy
     dps:
       - id: 2
@@ -41,16 +34,10 @@ secondary_entities:
         class: total_increasing
         mapping:
           - scale: 100
-  - entity: sensor
-    name: Reverse energy total hour
-    class: energy
-    dps:
       - id: 123
         type: integer
         optional: true
-        name: sensor
-        unit: kWh
-        class: total_increasing
+        name: hourly
         mapping:
           - scale: 100
   - entity: sensor
@@ -67,7 +54,6 @@ secondary_entities:
       - id: 127
         type: integer
         name: calibration
-        step: 1
         range:
           min: 800
           max: 1200
@@ -87,14 +73,12 @@ secondary_entities:
       - id: 128
         type: integer
         name: calibration
-        step: 1
         range:
           min: 800
           max: 1200
         mapping:
           - scale: 1000
   - entity: sensor
-    name: Total power
     class: power
     category: diagnostic
     dps:
@@ -129,15 +113,15 @@ secondary_entities:
         class: measurement
         mapping:
           - scale: 1000
-      # - id: 129
-      #   type: integer
-      #   name: calibration
-      #   step: 1
-      #     range:
-      #       min: 800
-      #       max: 1200
-      #     mapping:
-      #       - scale: 1000
+      - id: 129
+        type: integer
+        optional: true
+        name: calibration
+        range:
+          min: 800
+          max: 1200
+        mapping:
+          - scale: 1000
   - entity: sensor
     name: Power A
     class: power
@@ -153,15 +137,15 @@ secondary_entities:
       - id: 124
         type: boolean
         name: direction
-  #     - id: 130
-  #       type: integer
-  #       name: calibration
-  #       step: 1
-  #       range:
-  #         min: 800
-  #         max: 1200
-  #       mapping:
-  #         - scale: 1000
+      - id: 130
+        type: integer
+        optional: true
+        name: calibration
+        range:
+          min: 800
+          max: 1200
+        mapping:
+          - scale: 1000
   - entity: sensor
     name: Forward energy A
     class: energy
@@ -174,82 +158,54 @@ secondary_entities:
         class: total_increasing
         mapping:
           - scale: 100
-  #     - id: 131
-  #       type: integer
-  #       name: calibration
-  #       step: 1
-  #       range:
-  #         min: 800
-  #         max: 1200
-  #       mapping:
-  #         - scale: 1000
-  - entity: sensor
-    name: Reverse energy A
-    class: energy
-    category: diagnostic
-    dps:
-      - id: 108
+      - id: 114
         type: integer
-        name: sensor
-        unit: kWh
-        class: total_increasing
+        name: total
         mapping:
           - scale: 100
-  #     - id: 132
-  #       type: integer
-  #       name: calibration
-  #       step: 1
-  #       range:
-  #         min: 800
-  #         max: 1200
-  #       mapping:
-  #         - scale: 1000
-  - entity: sensor
-    name: Forward energy A total
-    class: energy
-    category: diagnostic
-    dps:
-      - id: 114
+      - id: 118
         type: integer
-        name: sensor
-        unit: kWh
-        class: total_increasing
+        name: hourly
         mapping:
           - scale: 100
+      - id: 131
+        type: integer
+        optional: true
+        name: calibration
+        range:
+          min: 800
+          max: 1200
+        mapping:
+          - scale: 1000
   - entity: sensor
-    name: Reverse energy A total
+    name: Reverse energy A
     class: energy
     category: diagnostic
     dps:
-      - id: 115
+      - id: 108
         type: integer
         name: sensor
         unit: kWh
         class: total_increasing
         mapping:
           - scale: 100
-  - entity: sensor
-    name: Forward energy A hour
-    class: energy
-    category: diagnostic
-    dps:
-      - id: 118
+      - id: 132
         type: integer
-        name: sensor
-        unit: kWh
-        class: total_increasing
+        optional: true
+        name: calibration
+        range:
+          min: 800
+          max: 1200
+        mapping:
+          - scale: 1000
+      - id: 115
+        type: integer
+        name: total
         mapping:
           - scale: 100
-  - entity: sensor
-    name: Reverse energy A hour
-    class: energy
-    category: diagnostic
-    dps:
       - id: 119
         type: integer
-        name: sensor
-        unit: kWh
-        class: total_increasing
+        name: hourly
         mapping:
           - scale: 100
   - entity: sensor
@@ -276,15 +232,15 @@ secondary_entities:
         class: measurement
         mapping:
           - scale: 1000
-  #     - id: 133
-  #       type: integer
-  #       name: calibration
-  #       step: 1
-  #       range:
-  #         min: 800
-  #         max: 1200
-  #       mapping:
-  #         - scale: 1000
+      - id: 133
+        type: integer
+        optional: true
+        name: calibration
+        range:
+          min: 800
+          max: 1200
+        mapping:
+          - scale: 1000
   - entity: sensor
     name: Power B
     class: power
@@ -300,15 +256,15 @@ secondary_entities:
       - id: 125
         type: boolean
         name: direction
-  #     - id: 134
-  #       type: integer
-  #       name: calibration
-  #       step: 1
-  #       range:
-  #         min: 800
-  #         max: 1200
-  #       mapping:
-  #         - scale: 1000
+      - id: 134
+        type: integer
+        optional: true
+        name: calibration
+        range:
+          min: 800
+          max: 1200
+        mapping:
+          - scale: 1000
   - entity: sensor
     name: Forward energy B
     class: energy
@@ -321,82 +277,54 @@ secondary_entities:
         class: total_increasing
         mapping:
           - scale: 100
-  #     - id: 135
-  #       type: integer
-  #       name: calibration
-  #       step: 1
-  #       range:
-  #         min: 800
-  #         max: 1200
-  #       mapping:
-  #         - scale: 1000
-  - entity: sensor
-    name: Reverse energy B
-    class: energy
-    category: diagnostic
-    dps:
-      - id: 113
+      - id: 116
         type: integer
-        name: sensor
-        unit: kWh
-        class: total_increasing
+        name: total
         mapping:
           - scale: 100
-  #     - id: 136
-  #       type: integer
-  #       name: calibration
-  #       step: 1
-  #       range:
-  #         min: 800
-  #         max: 1200
-  #       mapping:
-  #         - scale: 1000
-  - entity: sensor
-    name: Forward energy B total
-    class: energy
-    category: diagnostic
-    dps:
-      - id: 116
+      - id: 120
         type: integer
-        name: sensor
-        unit: kWh
-        class: total_increasing
+        name: hourly
         mapping:
           - scale: 100
+      - id: 135
+        type: integer
+        optional: true
+        name: calibration
+        range:
+          min: 800
+          max: 1200
+        mapping:
+          - scale: 1000
   - entity: sensor
-    name: Reverse energy B total
+    name: Reverse energy B
     class: energy
     category: diagnostic
     dps:
-      - id: 117
+      - id: 113
         type: integer
         name: sensor
         unit: kWh
         class: total_increasing
         mapping:
           - scale: 100
-  - entity: sensor
-    name: Forward energy B hour
-    class: energy
-    category: diagnostic
-    dps:
-      - id: 120
+      - id: 136
         type: integer
-        name: sensor
-        unit: kWh
-        class: total_increasing
+        optional: true
+        name: calibration
+        range:
+          min: 800
+          max: 1200
+        mapping:
+          - scale: 1000
+      - id: 117
+        type: integer
+        name: total
         mapping:
           - scale: 100
-  - entity: sensor
-    name: Reverse energy B hour
-    class: energy
-    category: diagnostic
-    dps:
       - id: 121
         type: integer
-        name: sensor
-        unit: kWh
-        class: total_increasing
+        name: hourly
         mapping:
           - scale: 100
   - entity: number
@@ -408,45 +336,52 @@ secondary_entities:
         type: integer
         name: value
         unit: s
-        step: 10
+        mapping:
+          - step: 10
         range:
           min: 10
           max: 180
-  # - entity: number
-  #   name: Power setting
-  #   category: config
-  #   dps:
-  #     - id: 137
-  #       type: integer
-  #       name: value
-  #       unit: W
-  #       step: 100
-  #       range:
-  #         min: 200
-  #         max: 20000
-  # - entity: switch
-  #   name: Power alarm
-  #   category: config
-  #   dps:
-  #     - id: 138
-  #       type: boolean
-  #       name: Power alarm 2
-  # - entity: number
-  #   name: Power setting 2
-  #   category: config
-  #   dps:
-  #     - id: 139
-  #       type: integer
-  #       name: value
-  #       unit: W
-  #       step: 100
-  #       range:
-  #         min: 200
-  #         max: 20000
-  # - entity: switch
-  #   name: Power alarm 2
-  #   category: config
-  #   dps:
-  #     - id: 140
-  #       type: boolean
-  #       name: Power alarm 2
+  - entity: number
+    name: Power setting
+    category: config
+    dps:
+      - id: 137
+        type: integer
+        optional: true
+        name: value
+        unit: W
+        range:
+          min: 200
+          max: 20000
+        mapping:
+          - step: 100
+  - entity: switch
+    name: Power alarm
+    category: config
+    dps:
+      - id: 138
+        type: boolean
+        optional: true
+        name: switch
+  - entity: number
+    name: Power setting 2
+    category: config
+    dps:
+      - id: 139
+        type: integer
+        optional: true
+        name: value
+        unit: W
+        mapping:
+          - step: 100
+        range:
+          min: 200
+          max: 20000
+  - entity: switch
+    name: Power alarm 2
+    category: config
+    dps:
+      - id: 140
+        type: boolean
+        optional: true
+        name: switch