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

feat(devices): add eLoad Gen2 EV charger

Issue #5725
Jason Rumney 6 часов назад
Родитель
Сommit
04f3937962
2 измененных файлов с 290 добавлено и 0 удалено
  1. 1 0
      DEVICES.md
  2. 289 0
      custom_components/tuya_local/devices/eload_gen2_evcharger.yaml

+ 1 - 0
DEVICES.md

@@ -758,6 +758,7 @@
 - Demuda 4048/6048 MPPT solar charge controller
 - Demuda 4048/6048 MPPT solar charge controller
 - Dowell iOneAIO EV charger
 - Dowell iOneAIO EV charger
 - EcoPoint EV charger
 - EcoPoint EV charger
+- eLoad Gen2 EV charger
 - Emini 16A Public EV charger
 - Emini 16A Public EV charger
 - EVSun EV charger
 - EVSun EV charger
 - Feyree EV charger (several models)
 - Feyree EV charger (several models)

+ 289 - 0
custom_components/tuya_local/devices/eload_gen2_evcharger.yaml

@@ -0,0 +1,289 @@
+name: EV charger
+products:
+  - id: wgtkomhkmkvrweel
+    manufacturer: eLoad
+    model: Gen2
+entities:
+  - entity: sensor
+    translation_key: status
+    icon: "mdi:ev-station"
+    class: enum
+    dps:
+      - id: 3
+        type: string
+        optional: true
+        name: sensor
+        mapping:
+          - 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_charging
+            value: charging
+          - dps_val: charger_pause
+            value: paused
+          - dps_val: charger_end
+            value: charged
+          - dps_val: charger_fault
+            value: fault
+      - id: 23
+        type: string
+        optional: true
+        name: system_version
+  - 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
+  - entity: text
+    name: Alarm 1
+    category: config
+    icon: "mdi:bell-cog"
+    hidden: true
+    dps:
+      - id: 11
+        type: base64
+        optional: true
+        name: value
+  - entity: text
+    name: Alarm 2
+    category: config
+    icon: "mdi:bell-cog"
+    hidden: true
+    dps:
+      - id: 12
+        type: base64
+        optional: true
+        name: value
+  - entity: select
+    translation_key: charging_mode
+    dps:
+      - id: 14
+        type: string
+        name: option
+        mapping:
+          - dps_val: charge_now
+            value: immediate
+          - dps_val: charge_pct
+            value: charge_to_percent
+          - dps_val: charge_energy
+            value: fixed_charge
+          - dps_val: charge_schedule
+            value: scheduled_charge
+          - dps_val: charge_delay
+            value: delayed_charge
+  - entity: sensor
+    name: Remaining
+    class: energy_storage
+    dps:
+      - id: 15
+        optional: true
+        type: integer
+        name: sensor
+        unit: kWh
+        class: measurement
+        mapping:
+          - scale: 1000
+  - entity: button
+    name: Clear energy
+    class: reestart
+    category: config
+    dps:
+      - id: 16
+        type: boolean
+        optional: true
+        name: button
+  - entity: switch
+    icon: "mdi:ev-station"
+    dps:
+      - id: 18
+        type: boolean
+        name: switch
+  - entity: sensor
+    name: Charge
+    class: energy_storage
+    dps:
+      - id: 25
+        type: integer
+        optional: true
+        name: sensor
+        unit: kWh
+        class: measurement
+        mapping:
+          - scale: 100
+  - entity: button
+    name: Refresh
+    icon: "mdi:sync"
+    category: config
+    dps:
+      - id: 27
+        type: string
+        optional: true
+        name: switch
+        mapping:
+          - dps_val: online
+            value: true
+          - dps_val: offline
+            value: false
+  - entity: sensor
+    name: Device status
+    class: enum
+    translation_key: status
+    category: diagnostic
+    dps:
+      - id: 101
+        type: string
+        name: sensor
+        mapping:
+          - dps_val: no_connect
+            value: available
+          - dps_val: connect
+            value: plugged_in
+          - dps_val: charing
+            value: charging
+          - dps_val: wait_rfid
+            value: waiting_for_authorization
+          - dps_val: finish
+            value: done
+          - dps_val: wait_charing
+            value: waiting
+          - dps_val: error
+            value: fault
+  - entity: number
+    class: current
+    dps:
+      - id: 102
+        type: integer
+        optional: true
+        name: value
+        unit: A
+        range:
+          min: 8
+          max: 32
+        mapping:
+          - constraint: support_32a
+            conditions:
+              - dps_val: false
+                value_redirect: set_16a
+                range:
+                  min: 8
+                  max: 16
+      - id: 103
+        type: boolean
+        name: support_32a
+      - id: 111
+        type: integer
+        optional: true
+        name: set_16a
+        range:
+          min: 8
+          max: 16
+  - entity: number
+    name: Charging delay
+    class: duration
+    dps:
+      - id: 104
+        type: integer
+        name: value
+        unit: h
+        range:
+          min: 0
+          max: 15
+  - entity: switch
+    name: Authentication
+    category: config
+    dps:
+      - id: 105
+        type: boolean
+        optional: true
+        name: switch
+  - entity: sensor
+    class: energy
+    dps:
+      - id: 106
+        type: integer
+        name: sensor
+        unit: kWh
+        class: total_increasing
+        mapping:
+          - scale: 10
+  - entity: sensor
+    class: voltage
+    dps:
+      - id: 107
+        type: integer
+        name: sensor
+        unit: V
+        class: measurement
+  - entity: sensor
+    class: current
+    category: diagnostic
+    dps:
+      - id: 108
+        type: integer
+        name: sensor
+        unit: A
+        class: measurement
+        mapping:
+          - scale: 10
+  - entity: sensor
+    class: power
+    dps:
+      - id: 109
+        type: integer
+        name: sensor
+        unit: kW
+        class: measurement
+        mapping:
+          - scale: 10
+  - entity: sensor
+    class: temperature
+    dps:
+      - id: 110
+        type: integer
+        name: sensor
+        unit: C
+        class: measurement
+        mapping:
+          - scale: 10
+  - entity: switch
+    name: RFID swipe
+    category: config
+    dps:
+      - id: 112
+        type: boolean
+        name: switch
+  - entity: sensor
+    class: duration
+    category: diagnostic
+    dps:
+      - id: 113
+        type: integer
+        name: sensor
+        unit: h
+        mapping:
+          - scale: 10
+  - entity: number
+    name: Charge duration
+    class: duration
+    dps:
+      - id: 114
+        type: integer
+        name: value
+        unit: h
+        range:
+          min: 0
+          max: 15