瀏覽代碼

add: Support of Afyeev 32A EV Charger (#5239)

* add: Support of Afyeev 32A EV Charger

* fix: Fix voltage, current and power entities in Afyeev 32A 7kW EV charger

* fix: entities naming for Afyeev 32A 7kW EV charger

* fix: Add translations for voltage, current and power  entities

* fix: cleanup unsupported DPs

* fix: Remove unsupported charging modes for Afyeev 32A 7kW EV charger

* fix(afyeev_32a_evcharger): merge multiple power sensors

Removed firmware version sensor and updated option values to include units.

---------

Co-authored-by: Jason Rumney <make-all@users.noreply.github.com>
vanyasvl 4 周之前
父節點
當前提交
690970c08f
共有 1 個文件被更改,包括 251 次插入0 次删除
  1. 251 0
      custom_components/tuya_local/devices/afyeev_32a_evcharger.yaml

+ 251 - 0
custom_components/tuya_local/devices/afyeev_32a_evcharger.yaml

@@ -0,0 +1,251 @@
+name: EV charger
+products:
+  - id: dsmsam7xpb3ht7rl
+    manufacturer: Afyeev
+    model: "32A 7kW EV charger"
+entities:
+  - entity: sensor
+    translation_key: status
+    icon: "mdi:ev-station"
+    class: enum
+    dps:
+      - id: 3
+        type: string
+        name: sensor
+        mapping:
+          - dps_val: charger_charging
+            value: charging
+          - dps_val: charger_free
+            value: available
+          - dps_val: charger_insert
+            value: plugged_in
+          - dps_val: charger_free_fault
+            value: fault_unplugged
+          - dps_val: charger_wait
+            value: waiting
+          - dps_val: charger_pause
+            value: paused
+          - dps_val: charger_end
+            value: charged
+          - dps_val: charger_fault
+            value: fault
+      - id: 23
+        type: string
+        name: system_version
+  - entity: sensor
+    class: energy
+    dps:
+      - id: 1
+        type: integer
+        name: sensor
+        unit: kWh
+        optional: true
+        class: total_increasing
+        mapping:
+          - scale: 100
+  - entity: select
+    name: Charging current
+    category: config
+    icon: "mdi:ev-plug-type2"
+    dps:
+      - id: 4
+        type: integer
+        name: option
+        mapping:
+          - dps_val: 6
+            value: "6A"
+          - dps_val: 8
+            value: "8A"
+          - dps_val: 10
+            value: "10A"
+          - dps_val: 13
+            value: "13A"
+          - dps_val: 16
+            value: "16A"
+          - dps_val: 20
+            value: "20A"
+          - dps_val: 24
+            value: "24A"
+          - dps_val: 32
+            value: "32A"
+  - entity: sensor
+    class: power
+    dps:
+      - id: 9
+        type: integer
+        name: sensor
+        unit: kW
+        class: measurement
+        optional: true
+        mapping:
+          - scale: 1000
+      - id: 5
+        type: integer
+        name: single_phase
+        optional: true
+        mapping:
+          - scale: 1000
+  - entity: sensor
+    class: voltage
+    category: diagnostic
+    translation_key: voltage_x
+    translation_placeholders:
+      x: A
+    dps:
+      - id: 6
+        type: base64
+        name: sensor
+        optional: true
+        unit: V
+        mask: "FFFF000000000000"
+        mapping:
+          - scale: 10
+  - entity: sensor
+    class: current
+    category: diagnostic
+    translation_key: current_x
+    translation_placeholders:
+      x: A
+    dps:
+      - id: 6
+        type: base64
+        name: sensor
+        optional: true
+        unit: A
+        mask: "000000FFFF000000"
+        mapping:
+          - scale: 1000
+  - entity: sensor
+    class: power
+    category: diagnostic
+    translation_key: power_x
+    translation_placeholders:
+      x: A
+    dps:
+      - id: 6
+        type: base64
+        name: sensor
+        optional: true
+        unit: kW
+        class: measurement
+        mask: "000000000000FFFF"
+        mapping:
+          - scale: 1000
+  - entity: binary_sensor
+    class: problem
+    category: diagnostic
+    dps:
+      - id: 10
+        type: bitfield
+        name: sensor
+        mapping:
+          - dps_val: 0
+            value: false
+          - value: true
+      - id: 10
+        type: bitfield
+        name: fault_code
+      - id: 10
+        type: bitfield
+        name: description
+        mapping:
+          - dps_val: 0
+            value: ok
+          - dps_val: 1
+            value: Over current
+          - dps_val: 2
+            value: Over voltage
+          - dps_val: 4
+            value: Under voltage
+          - dps_val: 8
+            value: Contact adhesion fault
+          - dps_val: 16
+            value: Contact fault
+          - dps_val: 32
+            value: Earth fault
+          - dps_val: 64
+            value: Meter fault
+          - dps_val: 128
+            value: Scram fault
+          - dps_val: 256
+            value: CP fault
+          - dps_val: 512
+            value: Communication fault
+          - dps_val: 1024
+            value: Card reader fault
+          - dps_val: 2048
+            value: Short circuit
+          - dps_val: 4096
+            value: Adhesion fault
+          - dps_val: 8192
+            value: Self test
+          - dps_val: 16384
+            value: Earth leak
+  - entity: select
+    translation_key: charging_mode
+    category: config
+    dps:
+      - id: 14
+        type: string
+        optional: true
+        name: option
+        mapping:
+          - dps_val: charge_now
+            value: immediate
+          - dps_val: charge_delay
+            value: delayed_charge
+  - entity: switch
+    icon: "mdi:ev-station"
+    dps:
+      - id: 18
+        type: boolean
+        optional: true
+        name: switch
+  - entity: sensor
+    class: temperature
+    category: diagnostic
+    dps:
+      - id: 24
+        type: integer
+        optional: true
+        name: sensor
+        unit: C
+        class: measurement
+  - entity: sensor
+    name: Last charge
+    dps:
+      - id: 25
+        type: integer
+        name: sensor
+        unit: kWh
+        class: measurement
+        optional: true
+        mapping:
+          - scale: 100
+  - entity: binary_sensor
+    class: connectivity
+    category: diagnostic
+    dps:
+      - id: 27
+        optional: true
+        type: string
+        name: sensor
+        mapping:
+          - dps_val: offline
+            value: false
+          - dps_val: online
+            value: true
+  - entity: number
+    name: "Charging start delay"
+    translation_key: timer
+    class: duration
+    category: config
+    dps:
+      - id: 28
+        type: integer
+        name: value
+        unit: h
+        optional: true
+        range:
+          min: 0
+          max: 15