Add cli-configure templates and generated docs (#1951)
Add the current template definitions for the upcoming cli configure command, and the generated documentation files that will be included in the documentation website
This commit is contained in:
parent
51d412c504
commit
aeb67da85f
207 changed files with 2542 additions and 0 deletions
10
templates/definition/charger/abl.yaml
Normal file
10
templates/definition/charger/abl.yaml
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
template: abl
|
||||
description: ABL eMH / SENEC.Wallbox pro
|
||||
requirements:
|
||||
sponsorship: true
|
||||
params:
|
||||
- name: modbus
|
||||
choice: ["rs485"]
|
||||
render: |
|
||||
type: abl
|
||||
{{include "modbus" .}}
|
||||
10
templates/definition/charger/cfos.yaml
Normal file
10
templates/definition/charger/cfos.yaml
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
template: cfos_charger
|
||||
description: cFos PowerBrain
|
||||
requirements:
|
||||
sponsorship: true
|
||||
params:
|
||||
- name: modbus
|
||||
choice: ["tcpip"]
|
||||
render: |
|
||||
type: cfos
|
||||
{{include "modbus" .}}
|
||||
18
templates/definition/charger/easee.yaml
Normal file
18
templates/definition/charger/easee.yaml
Normal file
|
|
@ -0,0 +1,18 @@
|
|||
template: easee
|
||||
description: Easee Home (Cloud API)
|
||||
requirements:
|
||||
sponsorship: true
|
||||
params:
|
||||
- name: user
|
||||
required: true
|
||||
- name: password
|
||||
required: true
|
||||
mask: true
|
||||
- name: charger
|
||||
required: true
|
||||
example: EH______
|
||||
render: |
|
||||
type: easee
|
||||
user: {{ .user }}
|
||||
password: {{ .password }}
|
||||
charger: {{ .charger }}
|
||||
22
templates/definition/charger/eebus.yaml
Normal file
22
templates/definition/charger/eebus.yaml
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
template: eebus
|
||||
description: EEBUS kompatible Wallbox
|
||||
generic: true
|
||||
requirements:
|
||||
eebus: true
|
||||
params:
|
||||
- name: ski
|
||||
required: true
|
||||
example:
|
||||
help:
|
||||
en: The SKI of the wallbox, can usually be found on the web interface of the wallbox
|
||||
de: Die SKI der Wallbox, ist üblicherweise im Web Interface der Wallbox zu finden
|
||||
- name: enforcePVLimits
|
||||
default: true
|
||||
valuetype: bool
|
||||
help:
|
||||
en: Use PV charging via overload protection (just as usual wallboxes do it) with vehicles supporting ISO15519
|
||||
de: Verwende PV Laden über eine Ladebegrenzung (wie herkömmliche Wallboxen) bei Fahrzeugen mit Unterstützung von ISO15118
|
||||
render: |
|
||||
type: eebus
|
||||
ski: {{ .ski }}
|
||||
forcePVLimits: {{ .enforcePVLimits }}
|
||||
8
templates/definition/charger/evsedin.yaml
Normal file
8
templates/definition/charger/evsedin.yaml
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
template: evse_din
|
||||
description: EVSE DIN
|
||||
params:
|
||||
- name: modbus
|
||||
choice: ["rs485"]
|
||||
render: |
|
||||
type: simpleevse
|
||||
{{include "modbus" .}}
|
||||
9
templates/definition/charger/evsewifi.yaml
Normal file
9
templates/definition/charger/evsewifi.yaml
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
template: evsewifi
|
||||
description: EVSE-Wifi
|
||||
params:
|
||||
- name: host
|
||||
required: true
|
||||
example: 192.0.2.2
|
||||
render: |
|
||||
type: evsewifi
|
||||
uri: http://{{ .host }}
|
||||
26
templates/definition/charger/fritzdect.yaml
Normal file
26
templates/definition/charger/fritzdect.yaml
Normal file
|
|
@ -0,0 +1,26 @@
|
|||
template: fritzdect
|
||||
description: FritzDECT
|
||||
params:
|
||||
- name: uri
|
||||
default: https://fritz.box
|
||||
- name: user
|
||||
required: true
|
||||
- name: password
|
||||
required: true
|
||||
mask: true
|
||||
- name: ain
|
||||
required: true
|
||||
mask: true
|
||||
example: '007788992233'
|
||||
help:
|
||||
en: The AIN is printed on the type label on the back of the device.
|
||||
de: Die AIN ist auf dem Typenschild auf der Geräterückseite aufgedruckt.
|
||||
- name: standbypower
|
||||
default: 15
|
||||
render: |
|
||||
type: fritzdect
|
||||
uri: {{ .uri }}
|
||||
user: {{ .user }}
|
||||
password: {{ .password }}
|
||||
ain: {{ .ain }} # switch actor identification number without blanks (see AIN number on switch sticker)
|
||||
standbypower: {{ .standbypower }} # treat as charging above this power
|
||||
14
templates/definition/charger/goe.yaml
Normal file
14
templates/definition/charger/goe.yaml
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
template: go-e
|
||||
description: go-eCharger Home/Pro/V3
|
||||
requirements:
|
||||
description:
|
||||
en: Models Home and Pro required firmware 040.0 or later.
|
||||
de: Bei den Modellen Home und Pro ist mindestens Firmware 040.0 oder höher erforderlich.
|
||||
uri: https://docs.evcc.io/docs/devices/chargers#go-echarger-homeprov3
|
||||
params:
|
||||
- name: host
|
||||
required: true
|
||||
example: 192.0.2.2
|
||||
render: |
|
||||
type: go-e
|
||||
uri: http://{{ .host }}
|
||||
10
templates/definition/charger/heidelberg.yaml
Normal file
10
templates/definition/charger/heidelberg.yaml
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
template: heidelberg
|
||||
description: Heidelberg Energy Control (Modbus RTU)
|
||||
requirements:
|
||||
sponsorship: true
|
||||
params:
|
||||
- name: modbus
|
||||
choice: ["rs485"]
|
||||
render: |
|
||||
type: heidelberg
|
||||
{{include "modbus" .}}
|
||||
35
templates/definition/charger/icharge-cion.yaml
Normal file
35
templates/definition/charger/icharge-cion.yaml
Normal file
|
|
@ -0,0 +1,35 @@
|
|||
template: ichargecion
|
||||
description: i-CHARGE CION (Modbus RTU-over-TCP)
|
||||
params:
|
||||
- name: modbus
|
||||
choice: ["tcpip"]
|
||||
render: |
|
||||
type: custom
|
||||
status:
|
||||
source: modbus
|
||||
{{include "modbus" . | indent 2}}
|
||||
register: # manual register configuration
|
||||
address: 139 # CP-Status
|
||||
type: holding
|
||||
decode: uint16
|
||||
enabled:
|
||||
source: modbus
|
||||
{{include "modbus" . | indent 2}}
|
||||
register: # manual register configuration
|
||||
address: 100 # Zustand
|
||||
type: holding
|
||||
decode: uint16
|
||||
enable:
|
||||
source: modbus
|
||||
{{include "modbus" . | indent 2}}
|
||||
register: # manual register configuration
|
||||
address: 100 # ein / aus
|
||||
type: writesingle
|
||||
decode: uint16
|
||||
maxcurrent:
|
||||
source: modbus
|
||||
{{include "modbus" . | indent 2}}
|
||||
register: # manual register configuration
|
||||
address: 127 # Strom max
|
||||
type: writesingle
|
||||
decode: uint16
|
||||
19
templates/definition/charger/keba.yaml
Normal file
19
templates/definition/charger/keba.yaml
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
template: keba
|
||||
description: KEBA Connect
|
||||
requirements:
|
||||
description:
|
||||
en: This requires the UDP function to be enabled with DIP 1.3 = ON, see the installation manual.
|
||||
de: Es muss eine sogenannte UDP Funktion über den DIP Schalter 1.3 eingeschaltet (ON) werden. Die Installationsanleitung der Wallbox hilft hier weiter.
|
||||
uri: https://docs.evcc.io/docs/devices/chargers#keba-connect
|
||||
params:
|
||||
- name: host
|
||||
required: true
|
||||
example: 192.0.2.2
|
||||
- name: rfid
|
||||
render: |
|
||||
type: keba
|
||||
uri: {{ .host }}
|
||||
{{ if ne .rfid "" }}
|
||||
rfid:
|
||||
tag: {{ .rfid }}
|
||||
{{ end }}
|
||||
11
templates/definition/charger/nrgkick-bluetooth.yaml
Normal file
11
templates/definition/charger/nrgkick-bluetooth.yaml
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
template: nrgkick-bluetooth
|
||||
description: NRGKick Bluetooth
|
||||
params:
|
||||
- name: mac
|
||||
required: true
|
||||
- name: pin
|
||||
required: true
|
||||
render: |
|
||||
type: nrgkick-bluetooth
|
||||
mac: {{ .mac }}
|
||||
pin: {{ .pin }}
|
||||
16
templates/definition/charger/nrgkick-connect.yaml
Normal file
16
templates/definition/charger/nrgkick-connect.yaml
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
template: nrgkick-connect
|
||||
description: NRGKick Connect
|
||||
params:
|
||||
- name: host
|
||||
required: true
|
||||
example: 192.0.2.2
|
||||
- name: mac
|
||||
required: true
|
||||
- name: password
|
||||
required: true
|
||||
mask: true
|
||||
render: |
|
||||
type: nrgkick-connect
|
||||
uri: http://{{ .host }}
|
||||
mac: {{ .mac }} # BT device MAC address (sudo hcitool lescan)
|
||||
password: {{ .password }}
|
||||
17
templates/definition/charger/openwb.yaml
Normal file
17
templates/definition/charger/openwb.yaml
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
template: openwb
|
||||
description: openWB (MQTT)
|
||||
requirements:
|
||||
description:
|
||||
en: The wallbox has to be configured running as a loadpoint.
|
||||
de: Die Wallbox muss als Ladepunkt konfiguriert sein.
|
||||
uri: https://docs.evcc.io/docs/devices/chargers#openwb
|
||||
params:
|
||||
- name: host
|
||||
required: true
|
||||
example: 192.0.2.2
|
||||
- name: loadpointid
|
||||
default: 1
|
||||
render: |
|
||||
type: openwb
|
||||
broker: {{ .host }}
|
||||
id: {{ .loadpointid }} # loadpoint id
|
||||
21
templates/definition/charger/phoenix-em-eth.yaml
Normal file
21
templates/definition/charger/phoenix-em-eth.yaml
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
template: phoenix-em-eth
|
||||
description: Phoenix EM-CP-PP-ETH Controller (Modbus TCP)
|
||||
generic: true
|
||||
requirements:
|
||||
description:
|
||||
en: The Wallbe must be connected using Ethernet and the DIP switch 10 must be set to 'ON'.
|
||||
de: Die Wallbox muss über ein Netzwerkkabel angebunden sein und im Gerät muss der DIP Schalter 10 auf 'ON' gestellt sein.
|
||||
uri: https://docs.evcc.io/docs/devices/chargers#phoenix-contact
|
||||
params:
|
||||
- name: host
|
||||
required: true
|
||||
example: 192.0.2.2
|
||||
- name: port
|
||||
default: 502
|
||||
render: |
|
||||
type: phoenix-em-eth
|
||||
uri: {{ .host }}:{{ .port }}
|
||||
meter: # only if a charge meter is connected to the controller
|
||||
power: true
|
||||
energy: true
|
||||
currents: true
|
||||
21
templates/definition/charger/phoenix-ev-eth.yaml
Normal file
21
templates/definition/charger/phoenix-ev-eth.yaml
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
template: phoenix-ev-eth
|
||||
description: Phoenix EV-ETH Controller (Modbus TCP)
|
||||
generic: true
|
||||
requirements:
|
||||
description:
|
||||
en: The Wallbe must be connected using Ethernet and the DIP switch 10 must be set to 'ON'.
|
||||
de: Die Wallbox muss über ein Netzwerkkabel angebunden sein und im Gerät muss der DIP Schalter 10 auf 'ON' gestellt sein.
|
||||
uri: https://docs.evcc.io/docs/devices/chargers#phoenix-contact
|
||||
params:
|
||||
- name: host
|
||||
required: true
|
||||
example: 192.0.2.2
|
||||
- name: port
|
||||
default: 502
|
||||
render: |
|
||||
type: phoenix-ev-eth
|
||||
uri: {{ .host }}:{{ .port }}
|
||||
meter: # only if a charge meter is connected to the controller
|
||||
power: true
|
||||
energy: true
|
||||
currents: true
|
||||
9
templates/definition/charger/phoenix-ev-ser.yaml
Normal file
9
templates/definition/charger/phoenix-ev-ser.yaml
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
template: phoenix-ev-ser
|
||||
description: Phoenix EV-SER Controller (Modbus RTU)
|
||||
generic: true
|
||||
params:
|
||||
- name: modbus
|
||||
choice: ["rs485"]
|
||||
render: |
|
||||
type: phoenix-ev-ser
|
||||
{{include "modbus" .}}
|
||||
21
templates/definition/charger/porsche_pmcc.yaml
Normal file
21
templates/definition/charger/porsche_pmcc.yaml
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
template: pmcc
|
||||
description: Porsche Mobile Charger Connect
|
||||
loglevel: eebus
|
||||
requirements:
|
||||
eebus: true
|
||||
params:
|
||||
- name: ski
|
||||
required: true
|
||||
help:
|
||||
en: The SKI of the wallbox, can usually be found on the web interface of the wallbox
|
||||
de: Die SKI der Wallbox, ist üblicherweise im Web Interface der Wallbox zu finden
|
||||
- name: enforcePVLimits
|
||||
default: true
|
||||
valuetype: bool
|
||||
help:
|
||||
en: Use PV charging via overload protection (just as usual wallboxes do it) with vehicles supporting ISO15519
|
||||
de: Verwende PV Laden über eine Ladebegrenzung (wie herkömmliche Wallboxen) bei Fahrzeugen mit Unterstützung von ISO15118
|
||||
render: |
|
||||
type: eebus
|
||||
ski: {{ .ski }}
|
||||
forcePVLimits: {{ .enforcePVLimits }}
|
||||
14
templates/definition/charger/porsche_pmcc_http.yaml
Normal file
14
templates/definition/charger/porsche_pmcc_http.yaml
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
template: pmcc_http
|
||||
description: Porsche Mobile Charger Connect (HTTP API)
|
||||
loglevel: mcc
|
||||
params:
|
||||
- name: host
|
||||
required: true
|
||||
example: 192.0.2.2
|
||||
- name: password
|
||||
mask: true
|
||||
required: true
|
||||
render: |
|
||||
type: mcc
|
||||
uri: https://{{ .host }}
|
||||
password: {{ .password }}
|
||||
15
templates/definition/charger/porsche_pmcp.yaml
Normal file
15
templates/definition/charger/porsche_pmcp.yaml
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
template: pmcp
|
||||
description: Porsche Mobile Charger Plus
|
||||
loglevel: eebus
|
||||
requirements:
|
||||
eebus: true
|
||||
params:
|
||||
- name: ski
|
||||
required: true
|
||||
help:
|
||||
en: The SKI of the wallbox, can usually be found on the web interface of the wallbox
|
||||
de: Die SKI der Wallbox, ist üblicherweise im Web Interface der Wallbox zu finden
|
||||
render: |
|
||||
type: eebus
|
||||
ski: {{ .ski }}
|
||||
forcePVLimits: true
|
||||
13
templates/definition/charger/shelly.yaml
Normal file
13
templates/definition/charger/shelly.yaml
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
template: shelly
|
||||
description: Shelly
|
||||
params:
|
||||
- name: host
|
||||
required: true
|
||||
example: 192.0.2.2
|
||||
- name: standbypower
|
||||
default: 15
|
||||
render: |
|
||||
type: shelly
|
||||
uri: http://{{ .host }} # shelly device ip address (local)
|
||||
channel: 0 # shelly device relay channel
|
||||
standbypower: {{ .standbypower }} # treat as charging above this power
|
||||
27
templates/definition/charger/tasmota.yaml
Normal file
27
templates/definition/charger/tasmota.yaml
Normal file
|
|
@ -0,0 +1,27 @@
|
|||
template: tasmota
|
||||
description: Tasmota
|
||||
params:
|
||||
- name: host
|
||||
required: true
|
||||
example: 192.0.2.2
|
||||
- name: user
|
||||
help:
|
||||
en: (optional) in case user + password are defined
|
||||
de: (optional) nur erforderlich falls diese Werte im Gerät gesetzt sind
|
||||
- name: password
|
||||
mask: true
|
||||
help:
|
||||
en: (optional) in case user + password are defined
|
||||
de: (optional) nur erforderlich falls diese Werte im Gerät gesetzt sind
|
||||
- name: standbypower
|
||||
default: 15
|
||||
render: |
|
||||
type: tasmota
|
||||
uri: http://{{ .host }} # shelly device ip address (local)
|
||||
{{ if ne .user "" }}
|
||||
user: {{ .user }}
|
||||
{{ end }}
|
||||
{{ if ne .password "" }}
|
||||
password: {{ .password }}
|
||||
{{ end }}
|
||||
standbypower: {{ .standbypower }} # treat as charging above this power
|
||||
23
templates/definition/charger/tinkerforge_warp.yaml
Normal file
23
templates/definition/charger/tinkerforge_warp.yaml
Normal file
|
|
@ -0,0 +1,23 @@
|
|||
template: tinkerforge_warp
|
||||
description: TinkerForge WARP Charger
|
||||
requirements:
|
||||
description:
|
||||
en: A MQTT Broker software needs to be running on a computer. The MQTT connection also needs to be configured in the wallbox.
|
||||
de: Es muss ein sogennanter MQTT Broker auf einem Computer installiert sein. Die MQTT Verbindung muss in der Wallbox eingerichtet sein.
|
||||
uri: https://docs.evcc.io/docs/devices/chargers#tinkerforge-warp-charger
|
||||
params:
|
||||
- name: host
|
||||
required: true
|
||||
example: 192.0.2.2
|
||||
- name: port
|
||||
default: 1883
|
||||
- name: topic
|
||||
default: warp
|
||||
- name: timeout
|
||||
default: 30s
|
||||
render: |
|
||||
type: warp
|
||||
broker: {{ .host }}:{{ .port }}
|
||||
topic: {{ .topic }}
|
||||
useMeter: false
|
||||
timeout: {{ .timeout }}
|
||||
23
templates/definition/charger/tinkerforge_warp_pro.yaml
Normal file
23
templates/definition/charger/tinkerforge_warp_pro.yaml
Normal file
|
|
@ -0,0 +1,23 @@
|
|||
template: tinkerforge_warp_pro
|
||||
description: TinkerForge WARP Charger
|
||||
requirements:
|
||||
description:
|
||||
en: A MQTT Broker software needs to be running on a computer. The MQTT connection also needs to be configured in the wallbox.
|
||||
de: Es muss ein sogennanter MQTT Broker auf einem Computer installiert sein. Die MQTT Verbindung muss in der Wallbox eingerichtet sein.
|
||||
uri: https://docs.evcc.io/docs/devices/chargers#tinkerforge-warp-charger
|
||||
params:
|
||||
- name: host
|
||||
required: true
|
||||
example: 192.0.2.2
|
||||
- name: port
|
||||
default: 1883
|
||||
- name: topic
|
||||
default: warp
|
||||
- name: timeout
|
||||
default: 30s
|
||||
render: |
|
||||
type: warp
|
||||
broker: {{ .host }}:{{ .port }}
|
||||
topic: {{ .topic }}
|
||||
useMeter: true
|
||||
timeout: {{ .timeout }}
|
||||
12
templates/definition/charger/tplink.yaml
Normal file
12
templates/definition/charger/tplink.yaml
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
template: tplink
|
||||
description: TP-LINK Smart Plug
|
||||
params:
|
||||
- name: host
|
||||
required: true
|
||||
example: 192.0.2.2
|
||||
- name: standbypower
|
||||
default: 15
|
||||
render: |
|
||||
type: tasmota
|
||||
uri: {{ .host }}
|
||||
standbypower: {{ .standbypower }} # treat as charging above this power
|
||||
17
templates/definition/charger/wallbe.yaml
Normal file
17
templates/definition/charger/wallbe.yaml
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
template: wallbe
|
||||
description: Wallbe (Eco, Pro)
|
||||
requirements:
|
||||
description:
|
||||
en: The Wallbe must be connected using Ethernet and the DIP switch 10 must be set to 'ON'.
|
||||
de: Die Wallbox muss über ein Netzwerkkabel angebunden sein und im Gerät muss der DIP Schalter 10 auf 'ON' gestellt sein.
|
||||
uri: https://docs.evcc.io/docs/devices/chargers#wallbe-ecopro
|
||||
params:
|
||||
- name: host
|
||||
required: true
|
||||
example: 192.0.2.2
|
||||
- name: port
|
||||
default: 1883
|
||||
render: |
|
||||
type: wallbe
|
||||
uri: {{ .host }}:{{ .port }}
|
||||
legacy: false # set only for older Wallbe devices (pre ~2019, old controller firmware)
|
||||
17
templates/definition/charger/wallbe_pre2019.yaml
Normal file
17
templates/definition/charger/wallbe_pre2019.yaml
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
template: wallbe_pre2019
|
||||
description: Wallbe (Eco, Pro) (pre ~2019)
|
||||
requirements:
|
||||
description:
|
||||
en: The Wallbe must be connected using Ethernet and the DIP switch 10 must be set to 'ON'.
|
||||
de: Die Wallbox muss über ein Netzwerkkabel angebunden sein und im Gerät muss der DIP Schalter 10 auf 'ON' gestellt sein.
|
||||
uri: https://docs.evcc.io/docs/devices/chargers#wallbe-ecopro
|
||||
params:
|
||||
- name: host
|
||||
required: true
|
||||
example: 192.0.2.2
|
||||
- name: port
|
||||
default: 502
|
||||
render: |
|
||||
type: wallbe
|
||||
uri: {{ .host }}:{{ .port }}
|
||||
legacy: true # set only for older Wallbe devices (pre ~2019, old controller firmware)
|
||||
21
templates/definition/charger/wallbe_pre2019_with_meter.yaml
Normal file
21
templates/definition/charger/wallbe_pre2019_with_meter.yaml
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
template: wallbe_pre2019_meter
|
||||
description: Wallbe (Eco, Pro) (pre ~2019) with Meter
|
||||
requirements:
|
||||
description:
|
||||
en: The Wallbe must be connected using Ethernet and the DIP switch 10 must be set to 'ON'.
|
||||
de: Die Wallbox muss über ein Netzwerkkabel angebunden sein und im Gerät muss der DIP Schalter 10 auf 'ON' gestellt sein.
|
||||
uri: https://docs.evcc.io/docs/devices/chargers#wallbe-ecopro
|
||||
params:
|
||||
- name: host
|
||||
required: true
|
||||
example: 192.0.2.2
|
||||
- name: port
|
||||
default: 502
|
||||
render: |
|
||||
type: wallbe
|
||||
uri: {{ .host }}:{{ .port }}
|
||||
legacy: true # set only for older Wallbe devices (pre ~2019, old controller firmware)
|
||||
meter: # only if a charge meter is connected to the controller
|
||||
power: true
|
||||
energy: true
|
||||
currents: true
|
||||
21
templates/definition/charger/wallbe_with_meter.yaml
Normal file
21
templates/definition/charger/wallbe_with_meter.yaml
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
template: wallbe_meter
|
||||
description: Wallbe (Eco, Pro) with Meter
|
||||
requirements:
|
||||
description:
|
||||
en: The Wallbe must be connected using Ethernet and the DIP switch 10 must be set to 'ON'.
|
||||
de: Die Wallbox muss über ein Netzwerkkabel angebunden sein und im Gerät muss der DIP Schalter 10 auf 'ON' gestellt sein.
|
||||
uri: https://docs.evcc.io/docs/devices/chargers#wallbe-ecopro
|
||||
params:
|
||||
- name: host
|
||||
required: true
|
||||
example: 192.0.2.2
|
||||
- name: port
|
||||
default: 502
|
||||
render: |
|
||||
type: wallbe
|
||||
uri: {{ .host }}:{{ .port }}
|
||||
legacy: false # set only for older Wallbe devices (pre ~2019, old controller firmware)
|
||||
meter: # only if a charge meter is connected to the controller
|
||||
power: true
|
||||
energy: true
|
||||
currents: true
|
||||
22
templates/definition/charger/wallbe_with_sdm_meter.yaml
Normal file
22
templates/definition/charger/wallbe_with_sdm_meter.yaml
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
template: wallbe_sdm
|
||||
description: Wallbe (Eco, Pro) with SDM Meter
|
||||
requirements:
|
||||
description:
|
||||
en: The Wallbe must be connected using Ethernet and the DIP switch 10 must be set to 'ON'.
|
||||
de: Die Wallbox muss über ein Netzwerkkabel angebunden sein und im Gerät muss der DIP Schalter 10 auf 'ON' gestellt sein.
|
||||
uri: https://docs.evcc.io/docs/devices/chargers#wallbe-ecopro
|
||||
params:
|
||||
- name: host
|
||||
required: true
|
||||
example: 192.0.2.2
|
||||
- name: port
|
||||
default: 502
|
||||
render: |
|
||||
type: wallbe
|
||||
uri: {{ .host }}:{{ .port }}
|
||||
legacy: false # set only for older Wallbe devices (pre ~2019, old controller firmware)
|
||||
meter: # only if a charge meter is connected to the controller
|
||||
power: true
|
||||
energy: true
|
||||
currents: true
|
||||
encoding: sdm # add only when SDM meter is connected, see https://github.com/evcc-io/evcc/discussions/1398
|
||||
12
templates/definition/meter/cfos.yaml
Normal file
12
templates/definition/meter/cfos.yaml
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
template: cfos_meter
|
||||
description: cFos PowerBrain
|
||||
requirements:
|
||||
sponsorship: true
|
||||
params:
|
||||
- name: usage
|
||||
choice: [ "charger" ]
|
||||
- name: modbus
|
||||
choice: ["tcpip"]
|
||||
render: |
|
||||
type: cfos
|
||||
{{include "modbus" .}}
|
||||
21
templates/definition/meter/discovergy.yaml
Normal file
21
templates/definition/meter/discovergy.yaml
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
template: discovergy
|
||||
description: Discovergy (Cloud)
|
||||
params:
|
||||
- name: usage
|
||||
choice: ["grid", "pv"]
|
||||
- name: user
|
||||
required: true
|
||||
- name: password
|
||||
required: true
|
||||
mask: true
|
||||
- name: meter
|
||||
required: true
|
||||
example: 1ESY1161229886
|
||||
render: |
|
||||
type: discovergy
|
||||
user: {{ .user }}
|
||||
password: {{ .password }} # password
|
||||
meter: {{ .meter }}
|
||||
{{- if eq .usage "pv" }}
|
||||
scale: -1
|
||||
{{- end }}
|
||||
37
templates/definition/meter/e3dc.yaml
Normal file
37
templates/definition/meter/e3dc.yaml
Normal file
|
|
@ -0,0 +1,37 @@
|
|||
template: e3dc
|
||||
description: E3DC
|
||||
guidedsetup:
|
||||
enable: true
|
||||
params:
|
||||
- name: usage
|
||||
choice: [ "grid", "pv", "battery" ]
|
||||
- name: host
|
||||
example: 192.0.2.2
|
||||
required: true
|
||||
- name: port
|
||||
default: 502
|
||||
render: |
|
||||
type: custom
|
||||
power:
|
||||
source: modbus
|
||||
uri: {{ .host }}:{{ .port }}
|
||||
register: # manual register configuration for E3/DC "Simple-Mode"
|
||||
type: holding
|
||||
decode: int32s
|
||||
{{- if eq .usage "grid" }}
|
||||
address: 40073 # Hausverbrauchs-Leistung in Watt
|
||||
{{- end}}
|
||||
{{- if eq .usage "pv" }}
|
||||
address: 40067 # Photovoltaikleistung in Watt
|
||||
{{- end}}
|
||||
{{- if eq .usage "battery" }}
|
||||
address: 40069 # Batterie-Leistung in Watt
|
||||
scale: -1 # reverse direction
|
||||
soc:
|
||||
source: modbus
|
||||
uri: {{ .host }}:{{ .port }}
|
||||
register: # manual register configuration for E3/DC "Simple-Mode"
|
||||
address: 40082 # Batterie-SOC in Prozent
|
||||
type: holding
|
||||
decode: uint16
|
||||
{{- end}}
|
||||
14
templates/definition/meter/eastron.yaml
Normal file
14
templates/definition/meter/eastron.yaml
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
template: eastron
|
||||
description: Eastron SDM Modbus Meter
|
||||
params:
|
||||
- name: usage
|
||||
choice: ["grid", "pv", "battery", "charge"]
|
||||
- name: modbus
|
||||
choice: ["rs485"]
|
||||
render: |
|
||||
type: modbus
|
||||
model: sdm # specific non-sunspec meter
|
||||
{{- if eq .usage "charge" }}
|
||||
energy: Sum # only required for charge meter usage
|
||||
{{- end }}
|
||||
{{include "modbus" .}}
|
||||
45
templates/definition/meter/fronius-gen24.yaml
Normal file
45
templates/definition/meter/fronius-gen24.yaml
Normal file
|
|
@ -0,0 +1,45 @@
|
|||
template: fronius-gen24
|
||||
description: Fronius Symo GEN24 Plus
|
||||
guidedsetup:
|
||||
enable: true
|
||||
params:
|
||||
- name: usage
|
||||
choice: ["grid", "pv", "battery"]
|
||||
- name: host
|
||||
example: 192.0.2.2
|
||||
required: true
|
||||
- name: port
|
||||
default: 502
|
||||
render: |
|
||||
{{- if eq .usage "grid" }}
|
||||
type: modbus
|
||||
model: sunspec
|
||||
uri: {{ .host }}:{{ .port }}
|
||||
id: 200
|
||||
power: 213:W # sunspec model 203 meter
|
||||
{{- end }}
|
||||
{{- if or (eq .usage "pv") (eq .usage "battery") }}
|
||||
type: custom
|
||||
power:
|
||||
source: calc
|
||||
add:
|
||||
- source: modbus
|
||||
model: sunspec
|
||||
uri: {{ .host }}:{{ .port }}
|
||||
id: 1
|
||||
value: 160:3:DCW # mppt 3 charge
|
||||
scale: -1
|
||||
- source: modbus
|
||||
model: sunspec
|
||||
uri: {{ .host }}:{{ .port }}
|
||||
id: 1
|
||||
value: 160:4:DCW # mppt 4 discharge
|
||||
{{- end }}
|
||||
{{- if eq .usage "battery" }}
|
||||
soc:
|
||||
source: modbus
|
||||
model: sunspec
|
||||
uri: {{ .host }}:{{ .port }}
|
||||
id: 1
|
||||
value: ChargeState
|
||||
{{- end }}
|
||||
28
templates/definition/meter/fronius-solarapi-v1.yaml
Normal file
28
templates/definition/meter/fronius-solarapi-v1.yaml
Normal file
|
|
@ -0,0 +1,28 @@
|
|||
template: fronius-solarapi-v1
|
||||
description: Fronius Solar API V1
|
||||
guidedsetup:
|
||||
enable: true
|
||||
params:
|
||||
- name: usage
|
||||
choice: ["grid", "pv", "battery"]
|
||||
- name: host
|
||||
example: 192.0.2.2
|
||||
required: true
|
||||
render: |
|
||||
type: custom
|
||||
power:
|
||||
source: http
|
||||
uri: http://{{ .host }}/solar_api/v1/GetPowerFlowRealtimeData.fcgi
|
||||
{{- if eq .usage "grid" }}
|
||||
jq: if .Body.Data.Site.P_Grid == null then 0 else .Body.Data.Site.P_Grid end
|
||||
{{- end }}
|
||||
{{- if eq .usage "pv" }}
|
||||
jq: if .Body.Data.Site.P_PV == null then 0 else .Body.Data.Site.P_PV end
|
||||
{{- end }}
|
||||
{{- if eq .usage "battery" }}
|
||||
jq: if .Body.Data.Site.P_Akku == null then 0 else .Body.Data.Site.P_Akku end
|
||||
soc:
|
||||
source: http
|
||||
uri: http://{{ .host }}/solar_api/v1/GetPowerFlowRealtimeData.fcgi
|
||||
jq: .Body.Data.Inverters."1".SOC
|
||||
{{- end }}
|
||||
17
templates/definition/meter/huawei-sun2000-8ktl.yaml
Normal file
17
templates/definition/meter/huawei-sun2000-8ktl.yaml
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
template: huawei_sun2000_8ktl
|
||||
description: Huawei SUN2000-8KTL
|
||||
params:
|
||||
- name: usage
|
||||
choice: [ "pv" ]
|
||||
- name: modbus
|
||||
choice: ["rs485"]
|
||||
render: |
|
||||
type: custom
|
||||
power:
|
||||
source: modbus
|
||||
{{include "modbus" . | indent 2}}
|
||||
# register details
|
||||
register:
|
||||
address: 40525
|
||||
type: holding
|
||||
decode: int32
|
||||
20
templates/definition/meter/kostal-energy-meter-inverter.yaml
Normal file
20
templates/definition/meter/kostal-energy-meter-inverter.yaml
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
template: kostal_piko_energy_meter
|
||||
description: Kostal Piko (BA) Energy Meter
|
||||
params:
|
||||
- name: usage
|
||||
choice: [ "grid" ]
|
||||
- name: host
|
||||
example: 192.0.2.2
|
||||
required: true
|
||||
- name: port
|
||||
default: 1502
|
||||
render: |
|
||||
type: custom
|
||||
power:
|
||||
source: modbus # use ModBus plugin
|
||||
uri: {{ .host }}:{{ .port }} # inverter port
|
||||
id: 71
|
||||
register: # manual non-sunspec register configuration
|
||||
address: 252 # (see ba_kostal_interface_modbus-tcp_sunspec.pdf)
|
||||
type: holding
|
||||
decode: float32s # may be float32 on specific firmware/devices
|
||||
34
templates/definition/meter/kostal-piko.yaml
Normal file
34
templates/definition/meter/kostal-piko.yaml
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
template: kostal_piko
|
||||
description: Kostal Piko + Piko BA
|
||||
guidedsetup:
|
||||
enable: true
|
||||
params:
|
||||
- name: usage
|
||||
choice: [ "grid", "pv" ]
|
||||
- name: host
|
||||
example: 192.0.2.2
|
||||
required: true
|
||||
render: |
|
||||
type: custom
|
||||
power:
|
||||
{{- if eq .usage "grid" }}
|
||||
# Grid
|
||||
source: calc
|
||||
add:
|
||||
- source: http
|
||||
uri: http://{{ .host }}/api/dxs.json?dxsEntries=67109120 # PV AC Ausgang
|
||||
jq: .dxsEntries[0].value
|
||||
scale: -1.0
|
||||
- source: http
|
||||
uri: http://{{ .host }}/api/dxs.json?dxsEntries=83886848 # Netzbezug
|
||||
jq: .dxsEntries[0].value
|
||||
- source: http
|
||||
uri: http://{{ .host }}/api/dxs.json?dxsEntries=83886336 # PV Eigenverbrauch
|
||||
jq: .dxsEntries[0].value
|
||||
{{- end -}}
|
||||
{{- if eq .usage "pv" }}
|
||||
# PV
|
||||
source: http
|
||||
uri: http://{{ .host }}/api/dxs.json?dxsEntries=67109120 # PV AC Ausgang
|
||||
jq: .dxsEntries[0].value
|
||||
{{- end -}}
|
||||
24
templates/definition/meter/kostal-plenticore.yaml
Normal file
24
templates/definition/meter/kostal-plenticore.yaml
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
template: kostal_plenticore
|
||||
description: Kostal Plenticore Hybrid
|
||||
guidedsetup:
|
||||
enable: true
|
||||
linked:
|
||||
- template: kostal_smart_energy_meter
|
||||
usage: grid
|
||||
params:
|
||||
- name: usage
|
||||
choice: [ "pv", "battery" ]
|
||||
- name: host
|
||||
example: 192.0.2.2
|
||||
required: true
|
||||
- name: port
|
||||
default: 1502
|
||||
render: |
|
||||
type: modbus
|
||||
model: sunspec
|
||||
uri: {{ .host }}:{{ .port }}
|
||||
id: 71 # kostal default sunspec modbus id
|
||||
{{- if eq .usage "battery" }}
|
||||
power: 802:W # sunspec model 802 battery
|
||||
soc: 802:SoC # sunspec model 802 battery
|
||||
{{- end }}
|
||||
15
templates/definition/meter/kostal-smart-energy-meter.yaml
Normal file
15
templates/definition/meter/kostal-smart-energy-meter.yaml
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
template: kostal_smart_energy_meter
|
||||
description: Kostal Smart Energy Meter
|
||||
params:
|
||||
- name: usage
|
||||
choice: [ "grid" ]
|
||||
- name: host
|
||||
example: 192.0.2.2
|
||||
required: true
|
||||
- name: port
|
||||
default: 502
|
||||
render: |
|
||||
type: modbus
|
||||
model: sunspec
|
||||
uri: {{ .host }}:{{ .port }}
|
||||
id: 71 # kostal default sunspec modbus id
|
||||
22
templates/definition/meter/lg-ess-home-8_10.yaml
Normal file
22
templates/definition/meter/lg-ess-home-8_10.yaml
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
template: lg_ess_home_8_10
|
||||
description: LG ESS Home 8/10
|
||||
guidedsetup:
|
||||
enable: true
|
||||
params:
|
||||
- name: usage
|
||||
choice: [ "grid", "pv", "battery" ]
|
||||
- name: host
|
||||
required: true
|
||||
example: 192.0.2.2
|
||||
- name: registration
|
||||
required: true
|
||||
example: "DE200..."
|
||||
help:
|
||||
en: Registration number of the LG ESS HOME inverter.
|
||||
de: Registriernummer des LG ESS HOME Wechselrichters.
|
||||
render: |
|
||||
type: lgess
|
||||
usage: {{ .usage }}
|
||||
# uri and password are only required once if multiple lgess usages are defined
|
||||
uri: https://{{ .host }}
|
||||
password: {{ .registration }}
|
||||
43
templates/definition/meter/powerdog.yaml
Normal file
43
templates/definition/meter/powerdog.yaml
Normal file
|
|
@ -0,0 +1,43 @@
|
|||
template: powerdog
|
||||
description: Powerdog
|
||||
guidedsetup:
|
||||
enable: true
|
||||
params:
|
||||
- name: usage
|
||||
choice: [ "grid", "pv" ]
|
||||
- name: host
|
||||
required: true
|
||||
example: 192.0.2.2
|
||||
- name: port
|
||||
default: 502
|
||||
render: |
|
||||
type: custom
|
||||
power:
|
||||
{{- if eq .usage "grid" }}
|
||||
source: calc #calculate current overall consumption + (current pv effort * (-1) )
|
||||
add:
|
||||
- source: modbus
|
||||
uri: {{ .host }}:{{ .port }} #ip-adress and port (default-port: 502)
|
||||
id: 1
|
||||
register:
|
||||
address: 40026 #register for overall consumption
|
||||
type: holding
|
||||
decode: int32
|
||||
- source: modbus
|
||||
uri: {{ .host }}:{{ .port }} #ip-adress and port (default-port: 502)
|
||||
id: 1
|
||||
register:
|
||||
address: 40002 #register for pv effort
|
||||
type: holding
|
||||
decode: int32
|
||||
scale: -1 #scale with -1 to get a substraction
|
||||
{{- end }}
|
||||
{{- if eq .usage "pv" }}
|
||||
type: modbus
|
||||
uri: {{ .host }}:{{ .port }} #ip-adress and port (default-port: 502)
|
||||
id: 1
|
||||
register:
|
||||
address: 40002 #register for pv effort
|
||||
type: holding
|
||||
decode: int32
|
||||
{{- end }}
|
||||
19
templates/definition/meter/powerfox-poweropti.yaml
Normal file
19
templates/definition/meter/powerfox-poweropti.yaml
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
template: powerfox_poweropti
|
||||
description: Powerfox Poweropti (Cloud)
|
||||
params:
|
||||
- name: usage
|
||||
choice: [ "grid" ]
|
||||
- name: user
|
||||
required: true
|
||||
- name: password
|
||||
required: true
|
||||
render: |
|
||||
type: custom
|
||||
power:
|
||||
source: http
|
||||
uri: https://backend.powerfox.energy/api/2.0/my/main/current
|
||||
auth:
|
||||
type: basic
|
||||
user: {{ .user }}
|
||||
password: {{ .password }}
|
||||
jq: .Watt
|
||||
15
templates/definition/meter/rct_power.yaml
Normal file
15
templates/definition/meter/rct_power.yaml
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
template: rct_power
|
||||
description: RCT Power
|
||||
guidedsetup:
|
||||
enable: true
|
||||
params:
|
||||
- name: usage
|
||||
choice: [ "grid", "pv", "battery" ]
|
||||
- name: host
|
||||
required: true
|
||||
example: 192.0.2.2
|
||||
render: |
|
||||
type: rct
|
||||
uri: {{ .host }}
|
||||
usage: {{ .usage }}
|
||||
cache: 2s
|
||||
34
templates/definition/meter/senec-home.yaml
Normal file
34
templates/definition/meter/senec-home.yaml
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
template: senec_home_linux
|
||||
description: SENEC.Home (Linux)
|
||||
guidedsetup:
|
||||
enable: true
|
||||
params:
|
||||
- name: usage
|
||||
choice: [ "grid", "pv", "battery" ]
|
||||
- name: host
|
||||
required: true
|
||||
example: 192.0.2.2
|
||||
- name: port
|
||||
default: 8080
|
||||
render: |
|
||||
type: custom
|
||||
power:
|
||||
source: script
|
||||
timeout: 5s
|
||||
cmd: >
|
||||
{{- if eq .usage "grid" }}
|
||||
/bin/bash -c "set +H; curl --data '{\"ENERGY\":{\"GUI_GRID_POW\":\"\"}}' --header \"Content-Type: application/json\" --request POST http://{{ .host }}/lala.cgi | jq .ENERGY.GUI_GRID_POW | python3 -c 'import struct;print(struct.unpack(\"!f\",bytes.fromhex(input()[4:12]))[0])'"
|
||||
scale: -1
|
||||
{{- end }}
|
||||
{{- if eq .usage "pv" }}
|
||||
/bin/bash -c "set +H; curl --data '{\"ENERGY\":{\"GUI_INVERTER_POWER\":\"\"}}' --header \"Content-Type: application/json\" --request POST http://{{ .host }}/lala.cgi | jq .ENERGY.GUI_INVERTER_POWER | python3 -c 'import struct;print(struct.unpack(\"!f\",bytes.fromhex(input()[4:12]))[0])'"
|
||||
{{- end }}
|
||||
{{- if eq .usage "battery" }}
|
||||
/bin/bash -c "set +H; curl --data '{\"ENERGY\":{\"GUI_BAT_DATA_POWER\":\"\"}}' --header \"Content-Type: application/json\" --request POST http://{{ .host }}/lala.cgi | jq .ENERGY.GUI_BAT_DATA_POWER | python3 -c 'import struct;print(struct.unpack(\"!f\",bytes.fromhex(input()[4:12]))[0])'"
|
||||
scale: -1
|
||||
soc:
|
||||
source: script
|
||||
cmd: >
|
||||
/bin/bash -c "set +H; curl --data '{\"ENERGY\":{\"GUI_BAT_DATA_FUEL_CHARGE\":\"\"}}' --header \"Content-Type: application/json\" --request POST http://{{ .host }}/lala.cgi | jq .ENERGY.GUI_BAT_DATA_FUEL_CHARGE | python3 -c 'import struct;print(struct.unpack(\"!f\",bytes.fromhex(input()[4:12]))[0])'"
|
||||
timeout: 5s
|
||||
{{- end }}
|
||||
29
templates/definition/meter/shelly_3em.yaml
Normal file
29
templates/definition/meter/shelly_3em.yaml
Normal file
|
|
@ -0,0 +1,29 @@
|
|||
template: shelly_3em
|
||||
description: Shelly 3EM
|
||||
params:
|
||||
- name: usage
|
||||
choice: [ "grid" ]
|
||||
- name: host
|
||||
required: true
|
||||
example: 192.0.2.2
|
||||
render: |
|
||||
type: custom
|
||||
power:
|
||||
source: http
|
||||
uri: http://{{ .host }}/status
|
||||
jq: .emeters | map(.power) | add
|
||||
energy:
|
||||
source: http
|
||||
uri: http://{{ .host }}/status
|
||||
jq: .emeters | map(.total) | add
|
||||
scale: 0.001
|
||||
currents:
|
||||
- source: http
|
||||
uri: http://{{ .host }}/emeter/0
|
||||
jq: .current
|
||||
- source: http
|
||||
uri: http://{{ .host }}/emeter/1
|
||||
jq: .current
|
||||
- source: http
|
||||
uri: http://{{ .host }}/emeter/2
|
||||
jq: .current
|
||||
11
templates/definition/meter/sma-energymeter.yaml
Normal file
11
templates/definition/meter/sma-energymeter.yaml
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
template: sma-energy-meter
|
||||
description: SMA Energy Meter
|
||||
params:
|
||||
- name: usage
|
||||
choice: ["grid", "pv", "battery"]
|
||||
- name: host
|
||||
example: 192.0.2.2
|
||||
required: true
|
||||
render: |
|
||||
type: sma
|
||||
uri: {{ .host }}
|
||||
23
templates/definition/meter/sma-homemanager.yaml
Normal file
23
templates/definition/meter/sma-homemanager.yaml
Normal file
|
|
@ -0,0 +1,23 @@
|
|||
template: sma-home-manager
|
||||
description: SMA Sunny Home Manager 2.0
|
||||
requirements:
|
||||
hems: sma
|
||||
loglevel: sma
|
||||
guidedsetup:
|
||||
enable: true
|
||||
linked:
|
||||
- template: sma-energy-meter
|
||||
usage: pv
|
||||
- template: sma-inverter
|
||||
usage: pv
|
||||
- template: sma-inverter
|
||||
usage: battery
|
||||
params:
|
||||
- name: usage
|
||||
choice: ["grid"]
|
||||
- name: host
|
||||
example: 192.0.2.2
|
||||
required: true
|
||||
render: |
|
||||
type: sma
|
||||
uri: {{ .host }}
|
||||
19
templates/definition/meter/sma-inverter.yaml
Normal file
19
templates/definition/meter/sma-inverter.yaml
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
template: sma-inverter
|
||||
description: SMA Inverter/Wechselrichter
|
||||
params:
|
||||
- name: usage
|
||||
choice: ["pv", "battery"]
|
||||
- name: host
|
||||
example: 192.0.2.2
|
||||
required: true
|
||||
- name: password
|
||||
mask: true
|
||||
help:
|
||||
en: Only required if the default password was changed
|
||||
de: Wird nur benötigt, wenn das Standardpasswort geändert wurde
|
||||
render: |
|
||||
type: sma
|
||||
uri: {{ .host }} # IP address or hostname
|
||||
{{- if ne .password "" }}
|
||||
password: {{ .password }} # optional
|
||||
{{- end }}
|
||||
68
templates/definition/meter/solaredge-hybrid.yaml
Normal file
68
templates/definition/meter/solaredge-hybrid.yaml
Normal file
|
|
@ -0,0 +1,68 @@
|
|||
template: solaredge-hybrid
|
||||
description: Solaredge Hybrid
|
||||
guidedsetup:
|
||||
enable: true
|
||||
params:
|
||||
- name: usage
|
||||
choice: [ "grid", "pv", "battery" ]
|
||||
- name: host
|
||||
required: true
|
||||
example: 192.0.2.2
|
||||
- name: port
|
||||
default: 502
|
||||
help:
|
||||
en: Port 502 (SetApp) or 1502 (LCD)
|
||||
de: Port 502 (SetApp) oder 1502 (LCD)
|
||||
- name: timeout
|
||||
default: 3s
|
||||
render: |
|
||||
type: custom
|
||||
power:
|
||||
{{- if eq .usage "grid" }}
|
||||
source: modbus
|
||||
model: sunspec
|
||||
timeout: {{ .timeout }}
|
||||
uri: {{ .host }}:{{ .port }} # Port 502 (SetApp) or 1502 (LCD)
|
||||
id: 1
|
||||
subdevice: 1 # Metering device
|
||||
value: 203:W
|
||||
scale: -1
|
||||
{{- end }}
|
||||
{{- if eq .usage "pv" }}
|
||||
source: calc
|
||||
add:
|
||||
- source: modbus
|
||||
model: sunspec
|
||||
timeout: {{ .timeout }}
|
||||
uri: {{ .host }}:{{ .port }} # Port 502 (SetApp) or 1502 (LCD)
|
||||
id: 1
|
||||
value: 103:DCW
|
||||
- source: modbus
|
||||
timeout: {{ .timeout }}
|
||||
uri: {{ .host }}:{{ .port }} # Port 502 (SetApp) or 1502 (LCD)
|
||||
id: 1
|
||||
register:
|
||||
address: 62836 # Battery 1 Instantaneous Power
|
||||
type: holding
|
||||
decode: float32s
|
||||
{{- end }}
|
||||
{{- if eq .usage "battery" }}
|
||||
source: modbus
|
||||
timeout: {{ .timeout }}
|
||||
uri: {{ .host }}:{{ .port }} # Port 502 (SetApp) or 1502 (LCD)
|
||||
id: 1
|
||||
register:
|
||||
address: 62836 # Battery 1 Instantaneous Power
|
||||
type: holding
|
||||
decode: float32s
|
||||
scale: -1
|
||||
soc:
|
||||
source: modbus
|
||||
timeout: {{ .timeout }}
|
||||
uri: {{ .host }}:{{ .port }} # Port 502 (SetApp) or 1502 (LCD)
|
||||
id: 1
|
||||
register:
|
||||
address: 62852 # Battery 1 State of Energy (SOE)
|
||||
type: holding
|
||||
decode: float32s
|
||||
{{- end }}
|
||||
43
templates/definition/meter/solarlog.yaml
Normal file
43
templates/definition/meter/solarlog.yaml
Normal file
|
|
@ -0,0 +1,43 @@
|
|||
template: solarlog
|
||||
description: Solarlog
|
||||
guidedsetup:
|
||||
enable: true
|
||||
params:
|
||||
- name: usage
|
||||
choice: [ "grid", "pv" ]
|
||||
- name: host
|
||||
example: 192.0.2.2
|
||||
required: true
|
||||
- name: port
|
||||
default: 502
|
||||
render: |
|
||||
type: custom
|
||||
power:
|
||||
{{- if eq .usage "grid" }}
|
||||
source: calc
|
||||
add:
|
||||
- source: modbus
|
||||
uri: {{ .host }}:{{ .port }}
|
||||
id: 1
|
||||
register:
|
||||
address: 3502 # Pac
|
||||
type: input
|
||||
decode: uint32s
|
||||
scale: -1
|
||||
- source: modbus
|
||||
uri: {{ .host }}:{{ .port }}
|
||||
id: 1
|
||||
register:
|
||||
address: 3518 # Pac consumption
|
||||
type: input
|
||||
decode: uint32s
|
||||
{{- end }}
|
||||
{{- if eq .usage "pv" }}
|
||||
source: modbus
|
||||
uri: {{ .host }}:{{ .port }}
|
||||
id: 1
|
||||
register:
|
||||
address: 3502 # Pac
|
||||
type: input
|
||||
decode: uint32s
|
||||
{{- end}}
|
||||
28
templates/definition/meter/solarwatt_myreserve.yaml
Normal file
28
templates/definition/meter/solarwatt_myreserve.yaml
Normal file
|
|
@ -0,0 +1,28 @@
|
|||
template: solarwatt_myreserve
|
||||
description: Solarwatt MyReserve
|
||||
guidedsetup:
|
||||
enable: true
|
||||
params:
|
||||
- name: usage
|
||||
choice: [ "grid", "pv", "battery" ]
|
||||
- name: host
|
||||
required: true
|
||||
example: 192.0.2.2
|
||||
render: |
|
||||
type: custom
|
||||
power:
|
||||
source: http
|
||||
uri: http://{{ .host }}/rest/kiwigrid/wizard/devices # EnergyManager
|
||||
{{- if eq .usage "grid" }}
|
||||
jq: .result.items[] | select(.deviceModel[].deviceClass == "com.kiwigrid.devices.location.Location" ) | .tagValues.PowerConsumedFromGrid.value - .tagValues.PowerOut.value
|
||||
{{- end }}
|
||||
{{- if eq .usage "pv" }}
|
||||
jq: .result.items[] | select(.deviceModel[].deviceClass == "com.kiwigrid.devices.location.Location" ) | .tagValues.PowerProduced.value
|
||||
{{- end }}
|
||||
{{- if eq .usage "battery" }}
|
||||
jq: .result.items[] | select(.deviceModel[].deviceClass == "com.kiwigrid.devices.location.Location" ) | .tagValues.PowerConsumedFromStorage.value - .tagValues.PowerBuffered.value
|
||||
soc:
|
||||
source: http
|
||||
uri: http://{{ .host }}/rest/kiwigrid/wizard/devices # EnergyManager
|
||||
jq: .result.items[] | select(.deviceModel[].deviceClass == "com.kiwigrid.devices.solarwatt.MyReserve") | .tagValues.StateOfCharge.value
|
||||
{{- end }}
|
||||
31
templates/definition/meter/sonnenbatterie_eco10.yaml
Normal file
31
templates/definition/meter/sonnenbatterie_eco10.yaml
Normal file
|
|
@ -0,0 +1,31 @@
|
|||
template: sonnenbatterie_eco10
|
||||
description: Sonnenbatterie Eco/10
|
||||
guidedsetup:
|
||||
enable: true
|
||||
params:
|
||||
- name: usage
|
||||
choice: [ "grid", "pv", "battery" ]
|
||||
- name: host
|
||||
required: true
|
||||
example: 192.0.2.2
|
||||
- name: port
|
||||
default: 8080
|
||||
render: |
|
||||
type: custom
|
||||
power:
|
||||
source: http
|
||||
uri: http://{{ .host }}:{{ .port }}/api/v1/status
|
||||
{{- if eq .usage "grid" }}
|
||||
jq: .GridFeedIn_W
|
||||
scale: -1 # reverse direction
|
||||
{{- end }}
|
||||
{{- if eq .usage "pv" }}
|
||||
jq: .Production_W
|
||||
{{- end }}
|
||||
{{- if eq .usage "battery" }}
|
||||
jq: .Pac_total_W
|
||||
soc:
|
||||
source: http
|
||||
uri: http://{{ .host }}:{{ .port }}/api/v1/status
|
||||
jq: .USOC
|
||||
{{- end }}
|
||||
23
templates/definition/meter/sunspec.yaml
Normal file
23
templates/definition/meter/sunspec.yaml
Normal file
|
|
@ -0,0 +1,23 @@
|
|||
template: sunspec
|
||||
description: SunSpec compliant inverter
|
||||
generic: true
|
||||
params:
|
||||
- name: usage
|
||||
choice: [ "grid", "pv", "battery" ]
|
||||
- name: host
|
||||
example: 192.0.2.2
|
||||
required: true
|
||||
- name: id
|
||||
default: 1
|
||||
valuetype: number
|
||||
render: |
|
||||
type: modbus
|
||||
model: sunspec
|
||||
uri: {{ .host }}
|
||||
id: {{ .id }}
|
||||
{{- if eq .usage "grid" }}
|
||||
power: 203:W # sunspec 3-phase meter power reading
|
||||
{{- end -}}
|
||||
{{- if eq .usage "battery" }}
|
||||
soc: ChargeState
|
||||
{{- end -}}
|
||||
21
templates/definition/meter/tesla-powerwall.yaml
Normal file
21
templates/definition/meter/tesla-powerwall.yaml
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
template: tesla_powerwall
|
||||
description: Tesla Powerwall
|
||||
guidedsetup:
|
||||
enable: true
|
||||
params:
|
||||
- name: usage
|
||||
choice: [ "grid", "pv", "battery" ]
|
||||
- name: host
|
||||
required: true
|
||||
example: 192.0.2.2
|
||||
- name: password
|
||||
required: true
|
||||
mask: true
|
||||
help:
|
||||
en: Password of the user customer
|
||||
de: Passwort des Benutzers Kunde
|
||||
render: |
|
||||
type: tesla
|
||||
uri: https://{{ .host }}/
|
||||
usage: {{ .usage }}
|
||||
password: {{ .password }} # for user 'customer'
|
||||
48
templates/definition/meter/varta-energiespeicher.yaml
Normal file
48
templates/definition/meter/varta-energiespeicher.yaml
Normal file
|
|
@ -0,0 +1,48 @@
|
|||
template: varta_energiespeicher
|
||||
description: VARTA Energiespeicher
|
||||
guidedsetup:
|
||||
enable: true
|
||||
params:
|
||||
- name: usage
|
||||
choice: [ "grid", "pv", "battery" ]
|
||||
- name: host
|
||||
required: true
|
||||
example: 192.0.2.2
|
||||
- name: port
|
||||
default: 502
|
||||
render: |
|
||||
type: custom
|
||||
power:
|
||||
source: modbus
|
||||
uri: {{ .host }}:{{ .port }}
|
||||
{{- if eq .usage "grid" }}
|
||||
id: 255
|
||||
register:
|
||||
address: 1078 # grid power
|
||||
type: input
|
||||
decode: int16
|
||||
scale: -1
|
||||
{{- end }}
|
||||
{{- if eq .usage "pv" }}
|
||||
id: 255
|
||||
register:
|
||||
address: 1102 # PV-sensor power
|
||||
type: input
|
||||
decode: uint16
|
||||
{{- end }}
|
||||
{{- if eq .usage "battery" }}
|
||||
id: 1
|
||||
register:
|
||||
address: 1066 # active power
|
||||
type: input
|
||||
decode: int16
|
||||
scale: -1
|
||||
soc:
|
||||
source: modbus
|
||||
uri: {{ .host }}:{{ .port }}
|
||||
id: 1
|
||||
register:
|
||||
address: 1068 # SOC
|
||||
type: input
|
||||
decode: int16
|
||||
{{- end }}
|
||||
19
templates/definition/meter/vzlogger-http.yaml
Normal file
19
templates/definition/meter/vzlogger-http.yaml
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
template: vzlogger_http
|
||||
description: vzlogger (HTTP)
|
||||
generic: true
|
||||
params:
|
||||
- name: usage
|
||||
choice: [ "grid" ]
|
||||
- name: host
|
||||
example: 192.0.2.2
|
||||
required: true
|
||||
- name: port
|
||||
default: 80
|
||||
- name: uuid
|
||||
required: true
|
||||
render: |
|
||||
type: custom
|
||||
power: # power reading
|
||||
source: http # use http plugin
|
||||
uri: http://{{ .host }}:{{ .port }}/api/data/{{ .uuid }}.json?from=now
|
||||
jq: .data.tuples[0][1] # parse response json
|
||||
27
templates/definition/meter/vzlogger-importexport.yaml
Normal file
27
templates/definition/meter/vzlogger-importexport.yaml
Normal file
|
|
@ -0,0 +1,27 @@
|
|||
template: vzlogger_importexport
|
||||
description: vzlogger (Import & Export getrennt)
|
||||
generic: true
|
||||
params:
|
||||
- name: usage
|
||||
choice: [ "grid" ]
|
||||
- name: host
|
||||
example: 192.0.2.2
|
||||
required: true
|
||||
- name: port
|
||||
default: 80
|
||||
- name: importuuid
|
||||
required: true
|
||||
- name: exportuuid
|
||||
required: true
|
||||
render: |
|
||||
type: custom
|
||||
power:
|
||||
source: calc # use calc plugin
|
||||
add:
|
||||
- source: http # import channel
|
||||
uri: http://{{ .host }}:{{ .port }}/api/data/{{ .importuuid }}.json?from=now
|
||||
jq: .data.tuples[0][1] # parse response json
|
||||
- source: http # export channel
|
||||
uri: http://{{ .host }}:{{ .port }}/api/data/{{ .exportuuid }}.json?from=now
|
||||
jq: .data.tuples[0][1] # parse response json
|
||||
scale: -1 # export must result in negative values
|
||||
21
templates/definition/meter/vzlogger-ws.yaml
Normal file
21
templates/definition/meter/vzlogger-ws.yaml
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
template: vzlogger_ws
|
||||
description: vzlogger (Websocket)
|
||||
generic: true
|
||||
params:
|
||||
- name: usage
|
||||
choice: [ "grid" ]
|
||||
- name: host
|
||||
example: 192.0.2.2
|
||||
required: true
|
||||
- name: port
|
||||
default: 8082
|
||||
- name: uuid
|
||||
required: true
|
||||
render: |
|
||||
type: custom
|
||||
power: # power reading
|
||||
source: ws # use websocket plugin
|
||||
uri: ws://{{ .host }}:{{ .port }}/socket
|
||||
jq: .data | select(.uuid=="{{ .uuid }}") .tuples[0][1] # parse response json
|
||||
timeout: 30s
|
||||
scale: 1
|
||||
19
templates/definition/vehicle/audi.yaml
Normal file
19
templates/definition/vehicle/audi.yaml
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
template: audi
|
||||
description: Audi
|
||||
paramsbase: vehicle
|
||||
params:
|
||||
- name: vin
|
||||
example: WAUZZZ...
|
||||
- name: capacity
|
||||
default: 60
|
||||
render: |
|
||||
type: audi
|
||||
{{- if ne .title "" }}
|
||||
title: {{ .title }}
|
||||
{{- end }}
|
||||
user: {{ .user }}
|
||||
password: {{ .password }}
|
||||
capacity: {{ .capacity }}
|
||||
{{- if ne .vin "" }}
|
||||
vin: {{ .vin }}
|
||||
{{- end }}
|
||||
19
templates/definition/vehicle/bmw.yaml
Normal file
19
templates/definition/vehicle/bmw.yaml
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
template: bmw
|
||||
description: BMW
|
||||
paramsbase: vehicle
|
||||
params:
|
||||
- name: vin
|
||||
example: WBMW...
|
||||
- name: capacity
|
||||
default: 65
|
||||
render: |
|
||||
type: bmw
|
||||
{{- if ne .title "" }}
|
||||
title: {{ .title }}
|
||||
{{- end }}
|
||||
user: {{ .user }}
|
||||
password: {{ .password }}
|
||||
capacity: {{ .capacity }}
|
||||
{{- if ne .vin "" }}
|
||||
vin: {{ .vin }}
|
||||
{{- end }}
|
||||
17
templates/definition/vehicle/carwings.yaml
Normal file
17
templates/definition/vehicle/carwings.yaml
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
template: carwings
|
||||
description: Nissan Leaf (pre 2019)
|
||||
paramsbase: vehicle
|
||||
params:
|
||||
- name: capacity
|
||||
default: 50
|
||||
render: |
|
||||
type: carwings
|
||||
{{- if ne .title "" }}
|
||||
title: {{ .title }}
|
||||
{{- end }}
|
||||
user: {{ .user }}
|
||||
password: {{ .password }}
|
||||
capacity: {{ .capacity }}
|
||||
{{- if ne .vin "" }}
|
||||
vin: {{ .vin }}
|
||||
{{- end }}
|
||||
17
templates/definition/vehicle/citroen.yaml
Normal file
17
templates/definition/vehicle/citroen.yaml
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
template: citroen
|
||||
description: Citroen
|
||||
paramsbase: vehicle
|
||||
params:
|
||||
- name: capacity
|
||||
default: 50
|
||||
render: |
|
||||
type: citroen
|
||||
{{- if ne .title "" }}
|
||||
title: {{ .title }}
|
||||
{{- end }}
|
||||
user: {{ .user }}
|
||||
password: {{ .password }}
|
||||
capacity: {{ .capacity }}
|
||||
{{- if ne .vin "" }}
|
||||
vin: {{ .vin }}
|
||||
{{- end }}
|
||||
17
templates/definition/vehicle/ds.yaml
Normal file
17
templates/definition/vehicle/ds.yaml
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
template: ds
|
||||
description: DS
|
||||
paramsbase: vehicle
|
||||
params:
|
||||
- name: capacity
|
||||
default: 50
|
||||
render: |
|
||||
type: ds
|
||||
{{- if ne .title "" }}
|
||||
title: {{ .title }}
|
||||
{{- end }}
|
||||
user: {{ .user }}
|
||||
password: {{ .password }}
|
||||
capacity: {{ .capacity }}
|
||||
{{- if ne .vin "" }}
|
||||
vin: {{ .vin }}
|
||||
{{- end }}
|
||||
22
templates/definition/vehicle/evnotify.yaml
Normal file
22
templates/definition/vehicle/evnotify.yaml
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
template: evnotify
|
||||
description: evNotify
|
||||
params:
|
||||
- name: title
|
||||
- name: akey
|
||||
required: true
|
||||
- name: token
|
||||
required: true
|
||||
- name: capacity
|
||||
default: 64
|
||||
valuetype: float
|
||||
render: |
|
||||
type: custom
|
||||
{{- if ne .title "" }}
|
||||
title: {{ .title }}
|
||||
{{- end }}
|
||||
capacity: {{ .capacity }}
|
||||
charge:
|
||||
type: http
|
||||
uri: https://app.evnotify.de/soc?akey={{ .akey }}&token={{ .token }} # evNotify Server + AKEY
|
||||
method: GET
|
||||
jq: .soc_display
|
||||
23
templates/definition/vehicle/fiat.yaml
Normal file
23
templates/definition/vehicle/fiat.yaml
Normal file
|
|
@ -0,0 +1,23 @@
|
|||
template: fiat
|
||||
description: Fiat
|
||||
paramsbase: vehicle
|
||||
params:
|
||||
- name: pin
|
||||
- name: vin
|
||||
example: ZFAE...
|
||||
- name: capacity
|
||||
default: 42
|
||||
render: |
|
||||
type: fiat
|
||||
{{- if ne .title "" }}
|
||||
title: {{ .title }}
|
||||
{{- end }}
|
||||
user: {{ .user }}
|
||||
password: {{ .password }}
|
||||
capacity: {{ .capacity }}
|
||||
{{- if ne .vin "" }}
|
||||
vin: {{ .vin }}
|
||||
{{- end }}
|
||||
{{- if ne .pin "" }}
|
||||
pin: {{ .pin }} #mandatory to deep refresh SoC
|
||||
{{- end }}
|
||||
19
templates/definition/vehicle/ford.yaml
Normal file
19
templates/definition/vehicle/ford.yaml
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
template: ford
|
||||
description: Ford
|
||||
paramsbase: vehicle
|
||||
params:
|
||||
- name: vin
|
||||
example: WF0FXX...
|
||||
- name: capacity
|
||||
default: 10
|
||||
render: |
|
||||
type: ford
|
||||
{{- if ne .title "" }}
|
||||
title: {{ .title }}
|
||||
{{- end }}
|
||||
user: {{ .user }}
|
||||
password: {{ .password }}
|
||||
capacity: {{ .capacity }}
|
||||
{{- if ne .vin "" }}
|
||||
vin: {{ .vin }}
|
||||
{{- end }}
|
||||
14
templates/definition/vehicle/hyundai.yaml
Normal file
14
templates/definition/vehicle/hyundai.yaml
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
template: hyundai
|
||||
description: Hyundai
|
||||
paramsbase: vehicle
|
||||
params:
|
||||
- name: capacity
|
||||
default: 64
|
||||
render: |
|
||||
type: hyundai
|
||||
{{- if ne .title "" }}
|
||||
title: {{ .title }}
|
||||
{{- end }}
|
||||
user: {{ .user }}
|
||||
password: {{ .password }}
|
||||
capacity: {{ .capacity }}
|
||||
14
templates/definition/vehicle/kia.yaml
Normal file
14
templates/definition/vehicle/kia.yaml
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
template: kia
|
||||
description: Kia
|
||||
paramsbase: vehicle
|
||||
params:
|
||||
- name: capacity
|
||||
default: 64
|
||||
render: |
|
||||
type: kia
|
||||
{{- if ne .title "" }}
|
||||
title: {{ .title }}
|
||||
{{- end }}
|
||||
user: {{ .user }}
|
||||
password: {{ .password }}
|
||||
capacity: {{ .capacity }}
|
||||
19
templates/definition/vehicle/mini.yaml
Normal file
19
templates/definition/vehicle/mini.yaml
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
template: mini
|
||||
description: Mini
|
||||
paramsbase: vehicle
|
||||
params:
|
||||
- name: vin
|
||||
example: WBMW...
|
||||
- name: capacity
|
||||
default: 32
|
||||
render: |
|
||||
type: mini
|
||||
{{- if ne .title "" }}
|
||||
title: {{ .title }}
|
||||
{{- end }}
|
||||
user: {{ .user }}
|
||||
password: {{ .password }}
|
||||
capacity: {{ .capacity }}
|
||||
{{- if ne .vin "" }}
|
||||
vin: {{ .vin }}
|
||||
{{- end }}
|
||||
14
templates/definition/vehicle/nissan.yaml
Normal file
14
templates/definition/vehicle/nissan.yaml
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
template: nissan
|
||||
description: Nissan
|
||||
paramsbase: vehicle
|
||||
params:
|
||||
- name: capacity
|
||||
default: 60
|
||||
render: |
|
||||
type: nissan
|
||||
{{- if ne .title "" }}
|
||||
title: {{ .title }}
|
||||
{{- end }}
|
||||
user: {{ .user }}
|
||||
password: {{ .password }}
|
||||
capacity: {{ .capacity }}
|
||||
20
templates/definition/vehicle/niu_e-scooter.yaml
Normal file
20
templates/definition/vehicle/niu_e-scooter.yaml
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
template: niu
|
||||
description: NIU E-Scooter
|
||||
params:
|
||||
- name: title
|
||||
- name: user
|
||||
required: true
|
||||
- name: password
|
||||
required: true
|
||||
mask: true
|
||||
- name: serial
|
||||
required: true
|
||||
render: |
|
||||
type: niu
|
||||
{{- if ne .title "" }}
|
||||
title: {{ .title }}
|
||||
{{- end }}
|
||||
user: {{ .user }} # NIU app user
|
||||
password: {{ .password }} # NIU app password
|
||||
serial: {{ .serial }} # NIU E-Scooter serial number like shown in app
|
||||
capacity: 4
|
||||
19
templates/definition/vehicle/opel.yaml
Normal file
19
templates/definition/vehicle/opel.yaml
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
template: opel
|
||||
description: Opel
|
||||
paramsbase: vehicle
|
||||
params:
|
||||
- name: vin
|
||||
example: WP0...
|
||||
- name: capacity
|
||||
default: 50
|
||||
render: |
|
||||
type: opel
|
||||
{{- if ne .title "" }}
|
||||
title: {{ .title }}
|
||||
{{- end }}
|
||||
user: {{ .user }}
|
||||
password: {{ .password }}
|
||||
capacity: {{ .capacity }}
|
||||
{{- if ne .vin "" }}
|
||||
vin: {{ .vin }}
|
||||
{{- end }}
|
||||
24
templates/definition/vehicle/ovms.yaml
Normal file
24
templates/definition/vehicle/ovms.yaml
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
template: ovms
|
||||
description: Open Vehicle Monitoring System
|
||||
params:
|
||||
- name: title
|
||||
- name: user
|
||||
required: true
|
||||
- name: password
|
||||
required: true
|
||||
mask: true
|
||||
- name: vehicleid
|
||||
required: true
|
||||
- name: capacity
|
||||
default: 12
|
||||
render: |
|
||||
type: ovms
|
||||
{{- if ne .title "" }}
|
||||
title: {{ .title }}
|
||||
{{- end }}
|
||||
user: {{ .user }}
|
||||
password: {{ .password }}
|
||||
vehicleid: {{ .vehicleid }} # vehicle id
|
||||
capacity: {{ .capacity }}
|
||||
server: dexters-web.de # used ovms server [dexters-web.de or api.openvehicles.com]
|
||||
|
||||
17
templates/definition/vehicle/peugeot.yaml
Normal file
17
templates/definition/vehicle/peugeot.yaml
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
template: peugeot
|
||||
description: Peugeot
|
||||
paramsbase: vehicle
|
||||
params:
|
||||
- name: capacity
|
||||
default: 50
|
||||
render: |
|
||||
type: peugeot
|
||||
{{- if ne .title "" }}
|
||||
title: {{ .title }}
|
||||
{{- end }}
|
||||
user: {{ .user }}
|
||||
password: {{ .password }}
|
||||
capacity: {{ .capacity }}
|
||||
{{- if ne .vin "" }}
|
||||
vin: {{ .vin }}
|
||||
{{- end }}
|
||||
20
templates/definition/vehicle/porsche.yaml
Normal file
20
templates/definition/vehicle/porsche.yaml
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
template: porsche
|
||||
description: Porsche
|
||||
loglevel: porsche
|
||||
paramsbase: vehicle
|
||||
params:
|
||||
- name: capacity
|
||||
default: 83.4
|
||||
render: |
|
||||
type: porsche
|
||||
{{- if ne .title "" }}
|
||||
title: {{ .title }}
|
||||
{{- end }}
|
||||
user: {{ .user }}
|
||||
password: {{ .password }}
|
||||
{{- if .capacity }}
|
||||
capacity: {{ .capacity }}
|
||||
{{- end }}
|
||||
{{- if .vin }}
|
||||
vin: {{ .vin }}
|
||||
{{- end }}
|
||||
19
templates/definition/vehicle/renault.yaml
Normal file
19
templates/definition/vehicle/renault.yaml
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
template: renault
|
||||
description: Renault
|
||||
paramsbase: vehicle
|
||||
params:
|
||||
- name: vin
|
||||
example: WREN...
|
||||
- name: capacity
|
||||
default: 60
|
||||
render: |
|
||||
type: renault
|
||||
{{- if ne .title "" }}
|
||||
title: {{ .title }}
|
||||
{{- end }}
|
||||
user: {{ .user }}
|
||||
password: {{ .password }}
|
||||
capacity: {{ .capacity }}
|
||||
{{- if ne .vin "" }}
|
||||
vin: {{ .vin }}
|
||||
{{- end }}
|
||||
19
templates/definition/vehicle/seat.yaml
Normal file
19
templates/definition/vehicle/seat.yaml
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
template: seat
|
||||
description: Seat (Cupra, Mii)
|
||||
paramsbase: vehicle
|
||||
params:
|
||||
- name: capacity
|
||||
default: 10
|
||||
render: |
|
||||
type: seat
|
||||
{{- if ne .title "" }}
|
||||
title: {{ .title }}
|
||||
{{- end }}
|
||||
user: {{ .user }}
|
||||
password: {{ .password }}
|
||||
{{- if ne .capacity "" }}
|
||||
capacity: {{ .capacity }}
|
||||
{{- end }}
|
||||
{{- if ne .vin "" }}
|
||||
vin: {{ .vin }}
|
||||
{{- end }}
|
||||
19
templates/definition/vehicle/skoda.yaml
Normal file
19
templates/definition/vehicle/skoda.yaml
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
template: skoda
|
||||
description: Skoda (Citigo)
|
||||
paramsbase: vehicle
|
||||
params:
|
||||
- name: capacity
|
||||
default: 10
|
||||
render: |
|
||||
type: skoda
|
||||
{{- if ne .title "" }}
|
||||
title: {{ .title }}
|
||||
{{- end }}
|
||||
user: {{ .user }}
|
||||
password: {{ .password }}
|
||||
{{- if ne .capacity "" }}
|
||||
capacity: {{ .capacity }}
|
||||
{{- end }}
|
||||
{{- if ne .vin "" }}
|
||||
vin: {{ .vin }}
|
||||
{{- end }}
|
||||
19
templates/definition/vehicle/skodaenyaq.yaml
Normal file
19
templates/definition/vehicle/skodaenyaq.yaml
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
template: enyaq
|
||||
description: Skoda (Enyaq)
|
||||
paramsbase: vehicle
|
||||
params:
|
||||
- name: capacity
|
||||
default: 50
|
||||
render: |
|
||||
type: enyaq
|
||||
{{- if ne .title "" }}
|
||||
title: {{ .title }}
|
||||
{{- end }}
|
||||
user: {{ .user }}
|
||||
password: {{ .password }}
|
||||
{{- if ne .capacity "" }}
|
||||
capacity: {{ .capacity }}
|
||||
{{- end }}
|
||||
{{- if ne .vin "" }}
|
||||
vin: {{ .vin }}
|
||||
{{- end }}
|
||||
30
templates/definition/vehicle/tesla.yaml
Normal file
30
templates/definition/vehicle/tesla.yaml
Normal file
|
|
@ -0,0 +1,30 @@
|
|||
template: tesla
|
||||
description: Tesla
|
||||
params:
|
||||
- name: title
|
||||
- name: accessToken
|
||||
required: true
|
||||
help:
|
||||
en: "See https://docs.evcc.io/docs/devices/vehicles#tesla"
|
||||
de: "Siehe https://docs.evcc.io/docs/devices/vehicles#tesla"
|
||||
- name: refreshToken
|
||||
required: true
|
||||
help:
|
||||
en: "See https://docs.evcc.io/docs/devices/vehicles#tesla"
|
||||
de: "Siehe https://docs.evcc.io/docs/devices/vehicles#tesla"
|
||||
- name: vin
|
||||
example: W...
|
||||
- name: capacity
|
||||
default: 90
|
||||
render: |
|
||||
type: tesla
|
||||
{{- if ne .title "" }}
|
||||
title: {{ .title }}
|
||||
{{- end }}
|
||||
tokens:
|
||||
access: {{ .accessToken }}
|
||||
refresh: {{ .refreshToken }}
|
||||
capacity: {{ .capacity }}
|
||||
{{- if ne .vin "" }}
|
||||
vin: {{ .vin }}
|
||||
{{- end }}
|
||||
33
templates/definition/vehicle/tronity.yaml
Normal file
33
templates/definition/vehicle/tronity.yaml
Normal file
|
|
@ -0,0 +1,33 @@
|
|||
template: tronity
|
||||
description: Tronity
|
||||
requirements:
|
||||
sponsorship: true
|
||||
params:
|
||||
- name: title
|
||||
- name: userid
|
||||
required: true
|
||||
- name: secret
|
||||
required: true
|
||||
- name: accessToken
|
||||
required: true
|
||||
- name: refreshToken
|
||||
required: true
|
||||
- name: vin
|
||||
example: W...
|
||||
- name: capacity
|
||||
default: 10
|
||||
render: |
|
||||
type: tronity
|
||||
{{- if ne .title "" }}
|
||||
title: {{ .title }}
|
||||
{{- end }}
|
||||
credentials:
|
||||
id: {{ .userid }}
|
||||
secret: {{ .secret }}
|
||||
tokens:
|
||||
access: {{ .accessToken }}
|
||||
refresh: {{ .refreshToken }}
|
||||
capacity: {{ .capacity }}
|
||||
{{- if ne .vin "" }}
|
||||
vin: {{ .vin }}
|
||||
{{- end }}
|
||||
19
templates/definition/vehicle/volvo.yaml
Normal file
19
templates/definition/vehicle/volvo.yaml
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
template: volvo
|
||||
description: Volvo
|
||||
paramsbase: vehicle
|
||||
params:
|
||||
- name: capacity
|
||||
default: 50
|
||||
render: |
|
||||
type: volvo
|
||||
{{- if ne .title "" }}
|
||||
title: {{ .title }}
|
||||
{{- end }}
|
||||
user: {{ .user }}
|
||||
password: {{ .password }}
|
||||
{{- if ne .capacity "" }}
|
||||
capacity: {{ .capacity }}
|
||||
{{- end }}
|
||||
{{- if ne .vin "" }}
|
||||
vin: {{ .vin }}
|
||||
{{- end }}
|
||||
21
templates/definition/vehicle/vw.yaml
Normal file
21
templates/definition/vehicle/vw.yaml
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
template: vw
|
||||
description: Volkswagen (We Connect)
|
||||
paramsbase: vehicle
|
||||
params:
|
||||
- name: vin
|
||||
example: WVWZZZ...
|
||||
- name: capacity
|
||||
default: 10
|
||||
render: |
|
||||
type: vw
|
||||
{{- if ne .title "" }}
|
||||
title: {{ .title }}
|
||||
{{- end }}
|
||||
user: {{ .user }}
|
||||
password: {{ .password }}
|
||||
{{- if ne .capacity "" }}
|
||||
capacity: {{ .capacity }}
|
||||
{{- end }}
|
||||
{{- if ne .vin "" }}
|
||||
vin: {{ .vin }}
|
||||
{{- end }}
|
||||
22
templates/definition/vehicle/vwid.yaml
Normal file
22
templates/definition/vehicle/vwid.yaml
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
template: id
|
||||
description: Volkswagen (We Connect ID)
|
||||
loglevel: id
|
||||
paramsbase: vehicle
|
||||
params:
|
||||
- name: vin
|
||||
example: WVWZZZ...
|
||||
- name: capacity
|
||||
default: 50
|
||||
render: |
|
||||
type: id
|
||||
{{- if ne .title "" }}
|
||||
title: {{ .title }}
|
||||
{{- end }}
|
||||
user: {{ .user }}
|
||||
password: {{ .password }}
|
||||
{{- if ne .capacity "" }}
|
||||
capacity: {{ .capacity }}
|
||||
{{- end }}
|
||||
{{- if ne .vin "" }}
|
||||
vin: {{ .vin }}
|
||||
{{- end }}
|
||||
3
templates/docs/charger/abl.yaml
Normal file
3
templates/docs/charger/abl.yaml
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
type: template
|
||||
template: abl
|
||||
description: ABL eMH / SENEC.Wallbox pro
|
||||
3
templates/docs/charger/cfos_charger.yaml
Normal file
3
templates/docs/charger/cfos_charger.yaml
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
type: template
|
||||
template: cfos_charger
|
||||
description: cFos PowerBrain
|
||||
6
templates/docs/charger/easee.yaml
Normal file
6
templates/docs/charger/easee.yaml
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
type: template
|
||||
template: easee
|
||||
description: Easee Home (Cloud API)
|
||||
user:
|
||||
password:
|
||||
charger: EH______
|
||||
5
templates/docs/charger/eebus.yaml
Normal file
5
templates/docs/charger/eebus.yaml
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
type: template
|
||||
template: eebus
|
||||
description: EEBUS kompatible Wallbox
|
||||
ski: # Die SKI der Wallbox, ist üblicherweise im Web Interface der Wallbox zu finden
|
||||
enforcePVLimits: true # Verwende PV Laden über eine Ladebegrenzung (wie herkömmliche Wallboxen) bei Fahrzeugen mit Unterstützung von ISO15118
|
||||
3
templates/docs/charger/evse_din.yaml
Normal file
3
templates/docs/charger/evse_din.yaml
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
type: template
|
||||
template: evse_din
|
||||
description: EVSE DIN
|
||||
4
templates/docs/charger/evsewifi.yaml
Normal file
4
templates/docs/charger/evsewifi.yaml
Normal file
|
|
@ -0,0 +1,4 @@
|
|||
type: template
|
||||
template: evsewifi
|
||||
description: EVSE-Wifi
|
||||
host: 192.0.2.2
|
||||
8
templates/docs/charger/fritzdect.yaml
Normal file
8
templates/docs/charger/fritzdect.yaml
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
type: template
|
||||
template: fritzdect
|
||||
description: FritzDECT
|
||||
uri: https://fritz.box
|
||||
user:
|
||||
password:
|
||||
ain: 007788992233 # Die AIN ist auf dem Typenschild auf der Geräterückseite aufgedruckt.
|
||||
standbypower: 15
|
||||
4
templates/docs/charger/go-e.yaml
Normal file
4
templates/docs/charger/go-e.yaml
Normal file
|
|
@ -0,0 +1,4 @@
|
|||
type: template
|
||||
template: go-e
|
||||
description: go-eCharger Home/Pro/V3
|
||||
host: 192.0.2.2
|
||||
3
templates/docs/charger/heidelberg.yaml
Normal file
3
templates/docs/charger/heidelberg.yaml
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
type: template
|
||||
template: heidelberg
|
||||
description: Heidelberg Energy Control (Modbus RTU)
|
||||
3
templates/docs/charger/ichargecion.yaml
Normal file
3
templates/docs/charger/ichargecion.yaml
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
type: template
|
||||
template: ichargecion
|
||||
description: i-CHARGE CION (Modbus RTU-over-TCP)
|
||||
4
templates/docs/charger/keba.yaml
Normal file
4
templates/docs/charger/keba.yaml
Normal file
|
|
@ -0,0 +1,4 @@
|
|||
type: template
|
||||
template: keba
|
||||
description: KEBA Connect
|
||||
host: 192.0.2.2
|
||||
5
templates/docs/charger/nrgkick-bluetooth.yaml
Normal file
5
templates/docs/charger/nrgkick-bluetooth.yaml
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
type: template
|
||||
template: nrgkick-bluetooth
|
||||
description: NRGKick Bluetooth
|
||||
mac:
|
||||
pin:
|
||||
6
templates/docs/charger/nrgkick-connect.yaml
Normal file
6
templates/docs/charger/nrgkick-connect.yaml
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
type: template
|
||||
template: nrgkick-connect
|
||||
description: NRGKick Connect
|
||||
host: 192.0.2.2
|
||||
mac:
|
||||
password:
|
||||
5
templates/docs/charger/openwb.yaml
Normal file
5
templates/docs/charger/openwb.yaml
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
type: template
|
||||
template: openwb
|
||||
description: openWB (MQTT)
|
||||
host: 192.0.2.2
|
||||
loadpointid: 1
|
||||
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Add a link
Reference in a new issue