瀏覽代碼

fix (ipengen_goe3116a_evcharger): use alternate dps

After testing, the non-standard non-phase dps seem more reliable, along
with the second power dp, and dp 3 for status, which is now partially
decoded.

Issue #3847
Jason Rumney 4 月之前
父節點
當前提交
b1f775081f
共有 1 個文件被更改,包括 48 次插入30 次删除
  1. 48 30
      custom_components/tuya_local/devices/ipengen_goe3116a_evcharger.yaml

+ 48 - 30
custom_components/tuya_local/devices/ipengen_goe3116a_evcharger.yaml

@@ -38,15 +38,15 @@ entities:
         type: base64
         optional: true
         mask: "FFFF000000000000"
-        name: sensor
-        unit: V
-        class: measurement
+        name: phase_data
         mapping:
           - scale: 10
       - id: 109
         type: integer
         optional: true
-        name: volt_a
+        name: sensor
+        unit: V
+        class: measurement
   - entity: sensor
     class: current
     translation_key: current_x
@@ -58,15 +58,15 @@ entities:
         type: base64
         optional: true
         mask: "0000FFFFFF000000"
-        name: sensor
-        unit: A
-        class: measurement
+        name: phase_data
         mapping:
           - scale: 1000
       - id: 103
         type: integer
         optional: true
-        name: a_current
+        name: sensor
+        unit: A
+        class: measurement
         mapping:
           - scale: 10
   - entity: sensor
@@ -96,15 +96,15 @@ entities:
         type: base64
         optional: true
         mask: "FFFF000000000000"
-        name: sensor
-        unit: V
-        class: measurement
+        name: phase_data
         mapping:
           - scale: 10
       - id: 104
         type: integer
         optional: true
-        name: voltb
+        name: sensor
+        unit: V
+        class: measurement
   - entity: sensor
     class: current
     translation_key: current_x
@@ -116,15 +116,15 @@ entities:
         type: base64
         optional: true
         mask: "0000FFFFFF000000"
-        name: sensor
-        unit: A
-        class: measurement
+        name: phase_data
         mapping:
           - scale: 1000
       - id: 106
         type: integer
         optional: true
-        name: b_current
+        name: sensor
+        unit: A
+        class: measurement
         mapping:
           - scale: 10
   - entity: sensor
@@ -154,15 +154,15 @@ entities:
         type: base64
         optional: true
         mask: "FFFF000000000000"
-        name: sensor
-        unit: V
-        class: measurement
+        name: phase_data
         mapping:
           - scale: 10
       - id: 105
         type: integer
         optional: true
-        name: cvolt
+        name: sensor
+        unit: V
+        class: measurement
   - entity: sensor
     class: current
     translation_key: current_x
@@ -174,15 +174,15 @@ entities:
         type: base64
         optional: true
         mask: "0000FFFFFF000000"
-        name: sensor
-        unit: A
-        class: measurement
+        name: phase_data
         mapping:
           - scale: 1000
       - id: 107
         type: integer
         optional: true
-        name: c_current
+        name: sensor
+        unit: A
+        class: measurement
         mapping:
           - scale: 10
   - entity: sensor
@@ -205,7 +205,7 @@ entities:
     class: power
     category: diagnostic
     dps:
-      - id: 9
+      - id: 108
         type: integer
         optional: true
         name: sensor
@@ -213,10 +213,10 @@ entities:
         class: measurement
         mapping:
           - scale: 1000
-      - id: 108
+      - id: 9
         type: integer
         optional: true
-        name: abc_power
+        name: std
         mapping:
           - scale: 1000
   - entity: binary_sensor
@@ -246,7 +246,7 @@ entities:
       - id: 13
         type: string
         optional: true
-        name: sensor
+        name: control_status
         mapping:
           - dps_val: controlpi_12v
             value: available
@@ -263,10 +263,28 @@ entities:
           - dps_val: controlpi_error
             value: fault
       - id: 3
-        # may be a better indicator of status, but undocumented numeric
         type: string
         optional: true
-        name: work_state
+        name: sensor
+        mapping:
+          - dps_val: "0"
+            value: available
+          - dps_val: "1"
+            value: waiting_for_authorization
+          - dps_val: "2"
+            value: plugged_in
+          - dps_val: "3"
+            value: unknown_3
+          - dps_val: "4"
+            value: charging
+          - dps_val: "5"
+            value: charged
+          - dps_val: "6"
+            value: scheduled
+          - dps_val: "7"
+            value: unknown_7
+          - dps_val: "8"
+            value: unknown_8
       - id: 118
         # another candidate that has undocumented numeric 0-8 values
         type: string