Configuration examples for the EVCC EV Charge Controller.
- Discovergy (Grid or PV meter/ HTTP)
- E3DC (Battery)
- E3DC (PV Meter)
- Generisch (MQTT)
- Generisch (Script)
- Kostal Inverter (Grid Meter)
- Kostal Inverter (PV Meter)
- Kostal Smart Energy Meter (Grid Meter)
- Modbus (Ethernet)
- Modbus (RTU)
- Multiple Grid Inverters combined (PV Meter)
- SMA Sunny Boy Storage (Battery)
- SMA Sunny Home Manager 2.0 / SMA Energy Meter 30
- SMA Sunny Island (Battery)
- SMA SunnyBoy / TriPower / other SunSpec PV-inverters (PV Meter)
- Solarlog (Grid Meter)
- Solarlog (PV Meter)
- Sonnenbatterie Eco (Battery/ HTTP)
- Sonnenbatterie Eco (Grid meter/ HTTP)
- Sonnenbatterie Eco (PV meter/ HTTP)
- Tesla Powerwall (Battery)
- Tesla Powerwall (Grid meter)
- Tesla Powerwall (PV meter)
- vzlogger (HTTP)
- vzlogger (Push Server/ Websocket)
- vzlogger (split import/export channels)
- EVSE Wifi
- Generisch
- Generisch (MQTT)
- go-eCharger (Cloud)
- go-eCharger (Lokal)
- KEBA Connect
- Mobile Charger Connect
- NRGKick Bluetooth
- NRGKick Connect
- OpenWB (remote-controlled using MQTT)
- Phoenix EM-CP Controller (Ethernet/Modbus TCP)
- Phoenix EV-CC Controller (Modbus)
- Simple EVSE (Ethernet/Modbus TCP)
- Simple EVSE (USB)
- Wallbe (Eco, Pro)
- Wallbe (pre 2019 EV-CC-AC1 controller)
- Audi (eTron etc)
- BMW (i3)
- Ford (Kuga, Mustang, etc)
- Generisch
- Generisch (Script)
- Hyundai (Kona, Ioniq)
- Kia (e-Niro, e-Soul, etc)
- Nissan (Leaf)
- Porsche
- Renault (Zoe)
- Tesla
- VW (eUp, ID.3, ID.4, etc)
- type: default
power: # power reading
type: http # use http plugin
auth:
type: basic
user: demo@discovergy.com # Discovergy user name
password: demo # password
uri: https://api.discovergy.com/public/v1/last_reading?meterId=659a3da00324400da66cef81e1cbe3c5 # append meter id
jq: .values.power
scale: 0.001
- type: default
power:
type: modbus
uri: e3dc.fritz.box:502
id: 1 # ModBus slave id
register: # manual register configuration
address: 40070
type: holding
decode: int32
scale: -1 # reverse direction
soc:
type: modbus
uri: e3dc.fritz.box:502
id: 1 # ModBus slave id
register: # manual register configuration
address: 40082
type: holding
decode: uint16
- type: default
power:
type: modbus
uri: e3dc.fritz.box:502
id: 1 # ModBus slave id
register: # manual register configuration
address: 40067 # (40068 - 1) "Photovoltaikleistung in Watt"
type: holding
decode: int32s
scale: -1 # reverse sign
- type: default
power: # power reading
type: mqtt # use mqtt plugin
topic: mbmd/sdm1-1/Power # mqtt topic
timeout: 10s # don't use older values
- type: default
power:
type: script # use script plugin
cmd: /bin/sh -c "echo 0" # actual command
timeout: 3s # kill script after 3 seconds
- type: default
power:
type: modbus # use ModBus plugin
model: kostal
uri: 192.168.178.52:1502
id: 71 # Configured Modbus Device ID
register: # manual register configuration
address: 252 # (see https://www.kostal-solar-electric.com/de-de/download/-/media/document-library-folder---kse/2018/08/30/08/53/ba_kostal_interface_modbus-tcp_sunspec.pdf)
type: holding
decode: float32s #swapped float encoding
- type: modbus
model: kostal
uri: 192.168.0.1:1502
id: 71
power: Power
- type: modbus
model: kostal
uri: 192.168.0.1:502
id: 71
power: Power
energy: Energy
- type: modbus
model: sdm
uri: rs485.fritz.box:23
rtu: true # rs485 device connected using ethernet adapter
id: 2
power: Power # default values, optionally override
energy: Sum # default values, optionally override
- type: modbus
model: sdm
uri: rs485.fritz.box:23
rtu: true # rs485 device connected using ethernet adapter
id: 2
power: Power # default value, optionally override
energy: Sum # energy value (Zählerstand)
- type: default
power:
type: calc # use the calc plugin
add: # The add function sums up both string values
- type: modbus
model: sunspec
value: 160:1:DCW # string 1
uri: 192.168.178.52:1502
id: 71 # Configured Modbus Device ID
- type: modbus
value: 160:2:DCW # string 2
uri: 192.168.178.52:1502
id: 71 # Configured Modbus Device ID
- type: modbus
uri: 192.168.178.91:502 #
id: 126 # ModBus slave id
model: sma-sunspec
power: Power # default value, optionally override
soc: ChargeState # battery soc (Ladezustand)
- type: sma
serial: 1234567890 # Serial number of the device
- type: modbus
model: sunny-island
uri: 192.168.1.4:502
id: 126
power: Power # default values, optionally override
soc: ChargeState # battery soc (Ladezustand)
- type: modbus
uri: 192.168.178.91:502 #
id: 126 # ModBus slave id
model: sma-sunspec
power: Power # default value, optionally override
energy: Sum # energy value (Zählerstand)
- type: default
power:
type: modbus
uri: 192.168.0.32:502 # IP address of the SolarLog device and ModBus port address
id: 1
register:
address: 3518
type: input
decode: uint32s
- type: default
power:
type: modbus
uri: 192.168.0.32:502 # IP address of the SolarLog device and ModBus port address
id: 1
register:
address: 3502
type: input
decode: uint32s
- type: default
power: # power reading
type: http # use http plugin
uri: http://192.168.1.75:8080/api/v1/status
jq: .Pac_total_W
scale: -1 # reverse direction
- type: default
power: # power reading
type: http # use http plugin
uri: http://192.168.1.75:8080/api/v1/status
jq: .GridFeedIn_W
scale: -1 # reverse direction
- type: default
power: # power reading
type: http # use http plugin
uri: http://192.168.1.75:8080/api/v1/status
jq: .Production_W
- type: tesla
uri: http://192.168.1.4/api/meters/aggregates
usage: battery # grid meter: `site`, pv: `solar`, battery: `battery`
- type: tesla
uri: http://192.168.1.4/api/meters/aggregates
usage: site # grid meter: `site`, pv: `solar`, battery: `battery`
- type: tesla
uri: http://192.168.1.4/api/meters/aggregates
usage: solar # grid meter: `site`, pv: `solar`, battery: `battery`
- type: default
power: # power reading
type: http # use http plugin
uri: http://demo.volkszaehler.org/api/data/<uuid>.json?from=now
jq: .data.tuples[0][1] # parse response json
- type: default
power:
type: ws # use websocket plugin
uri: ws://volkszaehler:8082/socket
jq: .data | select(.uuid=="<uuid>") .tuples[0][1] # parse response json
timeout: 30s
scale: 1
- type: default
power:
type: calc # use calc plugin
add:
- type: http # import channel
uri: http://volkszaehler/api/data/<import-uuid>.json?from=now
jq: .data.tuples[0][1] # parse response json
- type: http # export channel
uri: http://volkszaehler/api/data/<export-uuid>.json?from=now
jq: .data.tuples[0][1] # parse response json
scale: -1 # export must result in negative values
- type: evsewifi
uri: http://192.168.1.4 # SimpleEVSE-Wifi address
- type: default
status: # charger status A..F
type: ...
# ...
enabled: # charger enabled state (true/false or 0/1)
type: ...
# ...
enable: # set charger enabled state
type: ...
# ...
maxcurrent: # set charger max current
type: ...
# ...
- type: default
status: # charger status A..F
type: mqtt
topic: some/topic1
enabled: # charger enabled state (true/false or 0/1)
type: mqtt
topic: some/topic2
enable: # set charger enabled state
type: script
cmd: /bin/sh -c "echo ${enable}"
maxcurrent: # set charger max current
type: script
cmd: /bin/sh -c "echo ${maxcurrent}"
- type: go-e
token: 4711c # or go-e cloud API token
cache: 10s # go-e cloud API cache duration
- type: go-e
uri: http://192.168.1.4 # either go-e local address
- type: keba
uri: 192.168.1.4:7090 # KEBA address
rfid:
tag: 765765348 # RFID tag, see `evcc charger` to show tag
- type: mcc
uri: https://192.168.1.4 # Mobile Charger Connect address
password: # home user password
- type: nrgkick-bluetooth
macaddress: 00:99:22 # MAC address
pin: # pin
- type: nrgkick-connect
uri: http://192.168.1.4
mac: 00:99:22 # MAC address
password: # password
- type: default
status:
# with openWB, charging status (A..F) this is split between "plugged" and "charging"
# the openwb plugin combines both into status (charging=C, plugged=B, otherwise=A)
type: openwb # use openwb plugin
plugged:
type: mqtt
topic: openWB/lp/1/boolPlugStat
charging:
type: mqtt
topic: openWB/lp/1/boolChargeStat
enabled:
type: mqtt
topic: openWB/lp/1/ChargePointEnabled
timeout: 30s
enable:
type: mqtt
topic: openWB/set/lp1/ChargePointEnabled
payload: ${enable:%d} # write payload definition
maxcurrent:
type: mqtt
topic: openWB/set/lp1/DirectChargeAmps
payload: ${maxCurrent:%d} # write payload definition
- type: phoenix-emcp
uri: 192.168.0.8:502 # TCP ModBus address
id: 1
- type: phoenix-evcc
device: /dev/ttyUSB0
baudrate: 9600
comset: 8N1
id: 1 # slave id
- type: simpleevse
uri: 192.168.0.8:502 # TCP ModBus address
- type: simpleevse
device: /dev/usb1 # RS485 ModBus device
- type: wallbe
uri: 192.168.0.8:502 # TCP ModBus address
- type: wallbe
uri: 192.168.0.8:502 # TCP ModBus address
legacy: true # enable for older Wallbes with Phoenix EV-CC-AC1-M3-CBC-RCM controller
- type: audi
title: eTron # display name for UI
capacity: 14 # kWh
user: # user
password: # password
vin: WAUZZZ... # optional
cache: 5m # cache API response
- type: bmw
title: i3 # display name for UI
capacity: 65 # kWh
user: # user
password: # password
vin: WBMW... # optional
cache: 5m # cache API response
- type: ford
title: Kuga # display name for UI
capacity: 10 # kWh
user: # user
password: # password
vin: WF0FXX... # optional
cache: 5m # cache API response
- type: default
title: Mein Auto # display name for UI
capacity: 50 # kWh
charge:
type: ...
# ...
cache: 5m # cache duration
- type: default
title: Auto # display name for UI
capacity: 50 # kWh
charge:
type: script # use script plugin
cmd: /bin/sh -c "echo 50" # actual command
timeout: 3s # kill script after 3 seconds
cache: 5m # cache duration
- type: hyundai
title: Kona # display name for UI
capacity: 64 # kWh
user: # user
password: # password
cache: 5m # cache API response
- type: kia
title: e-Niro # display name for UI
capacity: 64 # kWh
user: # user
password: # password
cache: 5m # cache API response
- type: nissan
title: Leaf # display name for UI
capacity: 60 # kWh
user: # user
password: # password
region: NE # carwings region, leave empty for Europe
cache: 5m # cache API response
- type: porsche
title: Taycan # display name for UI
capacity: 83 # kWh
user: # user
password: # password
vin: WP...
cache: 5m # cache API response
- type: renault
title: Zoe # display name for UI
capacity: 60 # kWh
user: # user
password: # password
vin: WREN... # optional
cache: 5m # cache API response
- type: tesla
title: Model S # display name for UI
capacity: 90 # kWh
user: # email
password: # password
vin: WTSLA...
cache: 5m # cache API response
- type: vw
title: ID.3 # display name for UI
capacity: 10 # kWh
user: # user
password: # password
vin: WVWZZZ... # optional
cache: 5m # cache API response