Home Assistant: evcc Basisinstallation und Konfiguration

Update vom 21.02.2025:
Wichtiger Hinweis vom 21.02.2025 : nach 11 Monaten ist es mal wieder Zeit, dass ein neues Video zum Thema Online geht. Heute um 16:00 Uhr wird es soweit sein. Diese Anleitung hat noch immer Gültigkeit und kann verwendet werden. Es gibt allerdings einen Unterschied. Der Speicherort der evcc.yaml hat sich verändert ( Änderung erfolgte am 16.02.2025 ) . D.h. in meiner neuen Anleitung gehe ich auf diese Änderung ein. Bitte berücksichtigen. Weitere Informationen dazu findet ihr auch auf der Dokumentationsseite von evcc. Der Link zum neuen Video ( Gültig am 21.02.2025 16:00 Uhr ) : https://youtu.be/KSUfEhRCW3Y

Willkommen zur Installation des Home Assistant EVCC Add-Ons – Ihrer Tür zu einem nahtlosen und intelligenten Energiemanagement für Ihr Zuhause! Mit EVCC integrieren Sie Ihre Ladestation spielend leicht in Ihr Smart Home, steuern Ladevorgänge optimal und senken Ihre Energiekosten. Folgen Sie einfach den Schritten in der Videopräsentation, passen Sie die Konfiguration an Ihre Bedürfnisse an und genießen Sie die Vorteile eines intelligenten Energiemanagements. Machen Sie sich bereit, Ihr Zuhause smarter und grüner zu gestalten – mit EVCC und Home Assistant an Ihrer Seite.

Ich möchte euch heute einen allgemeinen Amazon-Link teilen, über den ihr eine Vielzahl von Produkten entdecken könnt. Egal, ob ihr nach Smart Home-Geräten, Gadgets oder anderen nützlichen Artikeln sucht, Amazon hat für jeden etwas zu bieten.

Wenn ihr über diesen Link einkauft, unterstützt ihr meinen Kanal, ohne dass es für euch zusätzliche Kosten verursacht. Das hilft mir, weiterhin spannende Inhalte für euch zu erstellen!

Hier ist der Link zu Amazon: https://amzn.to/3KsGngK

Links aus dem Video:

EVCC Home Assistant Add-On: https://github.com/evcc-io/hassio-addon

Modbusproxy Home Assistant Add-On: https://github.com/Akulatraxas/ha-modbusproxy

Hinweis von @kmreuther: Im Netzwerkproxy muss der Listenport und der Netzwerkport immer auf 502 bleiben. Ansonsten gibt es eine Fehlermeldung (failed to connect) .

evcc.yaml Beispielkonfiguration:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
network:
# schema is the HTTP schema
# setting to `https` does not enable https, it only changes the way URLs are generated
schema: http
# host is the hostname or IP address
# if the host name contains a `.local` suffix, the name will be announced on MDNS
# docker: MDNS announcements don't work. host must be set to the docker host's name.
host: 192.168.101.3 # Home Assistant IP-Adresse
# port is the listening port for UI and api
# evcc will listen on all available interfaces
port: 7070
interval: 30s # control cycle interval. Interval <30s can lead to unexpected behavior, see https://docs.evcc.io/docs/reference/configuration/interval
# database configuration for persisting charge sessions and settings
# database:
# type: sqlite
# dsn: <path-to-db-file>
# sponsor token enables optional features (request at https://sponsor.evcc.io)
# sponsortoken:
# telemetry enables aggregated statistics
#
# Telemetry allows collecting usage data (grid and green energy, charge power).
# Data is aggregated, no individual charging sessions are tracked. The collected,
# anonymous data can be retrieved using https://api.evcc.io.
#
# See https://github.com/evcc-io/evcc/pull/4343 or details.
#
# For time being, this is only available to sponsors, hence data is associated with
# the sponsor token's identity.
#
# telemetry: true
# log settings
log: info
levels:
site: debug
lp-1: debug
lp-2: debug
cache: error
db: error
# modbus proxy for allowing external programs to reuse the evcc modbus connection
# each entry will start a proxy instance at the given port speaking Modbus TCP and
# relaying to the given modbus downstream device (either TCP or RTU, RS485 or TCP)
modbusproxy:
# - port: 5200
# uri: solar-edge:502
# # rtu: true
# # readonly: true # use `deny` to raise modbus errors
# meter definitions
# name can be freely chosen and is used as reference when assigning meters to site and loadpoints
# for documentation see https://docs.evcc.io/docs/devices/meters
meters:
- name: my_grid
type: template
template: solaredge-hybrid
usage: grid
# Modbus TCP
modbus: tcpip
id: 1
host: 192.168.101.3 # Hostname
port: 502 # Port
timeout: 10s # optional
- name: my_pv
type: template
template: solaredge-hybrid
usage: pv
# Modbus TCP
modbus: tcpip
id: 1
host: 192.168.101.3 # Hostname
port: 502 # Port
timeout: 10s # optional
- name: my_battery
type: template
template: solaredge-hybrid
usage: battery
# Modbus TCP
modbus: tcpip
id: 1
host: 192.168.101.3 # Hostname
port: 502 # Port
timeout: 10s # optional
# charger definitions
# name can be freely chosen and is used as reference when assigning charger to vehicle
# for documentation see https://docs.evcc.io/docs/devices/chargers
chargers:
- name: my_charger
type: template
template: openwb-pro
host: 192.168.101.82 # IP-Adresse oder Hostname
# vehicle definitions
# name can be freely chosen and is used as reference when assigning vehicle to loadpoint
# for documentation see https://docs.evcc.io/docs/devices/vehicles
vehicles:
- name: my_car
type: template
template: tesla
title: # Wird in der Benutzeroberfläche angezeigt (optional)
accessToken: [ dein Access Token ] # Tesla Access Token
refreshToken: [ dein Refresh Token] # Tesla Refresh Token
capacity: 60 # Akkukapazität in kWh (optional)
# site describes the EVU connection, PV and home battery
site:
title: Home # display name for UI
meters:
grid: my_grid # grid meter
pv:
- my_pv # list of pv inverters/ meters
battery:
- my_battery # list of battery meters
residualPower: 100 # additional household usage margin
maxGridSupplyWhileBatteryCharging: 0 # ignore battery charging if AC consumption is above this value
# loadpoint describes the charger, charge meter and connected vehicle
loadpoints:
- title: Carport # display name for UI
charger: my_charger # charger
#meter: charge # charge meter
mode: "off" # default charge mode to apply when vehicle is disconnected; use "off" to disable by default if charger is publicly available
# remaining settings are experts-only and best left at default values
priority: 0 # relative priority for concurrent charging in PV mode with multiple loadpoints (higher values have higher priority)
soc:
# polling defines usage of the vehicle APIs
# Modifying the default settings it NOT recommended. It MAY deplete your vehicle's battery
# or lead to vehicle manufacturer banning you from API use. USE AT YOUR OWN RISK.
poll:
# poll mode defines under which condition the vehicle API is called:
# charging: update vehicle ONLY when charging (this is the recommended default)
# connected: update vehicle when connected (not only charging), interval defines how often
# always: always update vehicle regardless of connection state, interval defines how often (only supported for single vehicle)
mode: charging
# poll interval defines how often the vehicle API may be polled if NOT charging
interval: 60m
estimate: true # set false to disable interpolating between api updates (not recommended)
enable: # pv mode enable behavior
delay: 1m # threshold must be exceeded for this long
threshold: 0 # grid power threshold (in Watts, negative=export). If zero, export must exceed minimum charge power to enable
disable: # pv mode disable behavior
delay: 3m # threshold must be exceeded for this long
threshold: 0 # maximum import power (W)
# tariffs are the fixed or variable tariffs
tariffs:
currency: EUR # three letter ISO-4217 currency code (default EUR)
grid:
# either static grid price (or price zones)
type: fixed
price: 0.35 # EUR/kWh
# or variable tariffs
# type: tibber
# token: "476c477d8a039529478ebd690d35ddd80e3308ffc49b59c65b142321aee963a4" # access token
# homeid: "cc83e83e-8cbf-4595-9bf7-c3cf192f7d9c" # optional if multiple homes associated to account
# type: awattar
# region: de # optional, choose at for Austria
# charges: # optional, additional charges per kWh
# tax: # optional, additional tax (0.1 for 10%)
# type: octopusenergy
# tariff: AGILE-FLEX-22-11-25 # Tariff code
# region: A # optional
# type: elering # Nordpool
# region: ee # or lt, lv, fi
# charges: # optional, additional charges per kWh
# tax: # optional, additional tax (0.1 for 10%)
# type: energinet # Energinet using the price in DKK
# region: dk1 # or dk2
# charges: # optional, additional charges per kWh
# tax: # optional, additional tax (0.1 for 10%)
# type: entsoe # Entso-E european market data
# domain: BZN|DE-LU # https://transparency.entsoe.eu/content/static_content/Static%20content/web%20api/Guide.html#_areas
# securitytoken: # api token
# charges: # optional, additional charges per kWh
# tax: # optional, additional tax (0.1 for 10%)
# type: pun # PUN - Prezzo unico nazionale - Hourly Italian wholesale prices
# charges: 0 # optional, additional charges per kWh
# tax: 0 # optional, additional tax (0.1 for 10%)
# type: amber
# token: # api token from https://app.amber.com.au/developers/
# siteid: # site ID returned by the API
# channel: general
# type: custom # price from a plugin source; see https://docs.evcc.io/docs/reference/plugins
# price:
# source: http
# uri: https://example.org/price.json
# jq: .price.current
feedin:
# rate for feeding excess (pv) energy to the grid
type: fixed
price: 0.08 # EUR/kWh
# type: octopusenergy
# tariff: AGILE-FLEX-22-11-25 # Tariff code
# region: A # optional
# type: amber
# token: # api token from https://app.amber.com.au/developers/
# siteid: # site ID returned by the API
# channel: feedIn
co2:
# co2 tariff provides co2 intensity forecast and is for co2-optimized target charging if no variable grid tariff is specified
# type: grünstromindex # GrünStromIndex (Germany only)
# zip: <zip>
# type: electricitymaps # https://app.electricitymaps.com/map
# uri: <uri>
# token: <token> # needs to be a token with forecast (not in the free tier)
# zone: DE
# type: ngeso # National Grid Electricity System Operator data (United Kingdom only) https://carbonintensity.org.uk/
# provides national data if both region and postcode are omitted - do not supply both at the same time!
# region: 1 # optional, coarser than using a postcode - see https://api.carbonintensity.org.uk/ for full list
# postcode: SW1A1AA # optional
# mqtt message broker
mqtt:
# broker: localhost:1883
# topic: evcc # root topic for publishing, set empty to disable
# user:
# password:
# influx database
influx:
# url: http://localhost:8086
# database: evcc
# user:
# password:
# eebus credentials
eebus:
# uri: # :4712
# interfaces: # limit eebus to specific network interfaces
# - en0
# certificate: # local signed certificate, required, can be generated via `evcc eebus-cert`
# public: # public key
# private: # private key
# push messages
messaging:
events:
start: # charge start event
title: Charge started
msg: Started charging in "${mode}" mode
stop: # charge stop event
title: Charge finished
msg: Finished charging ${chargedEnergy:%.1fk}kWh in ${chargeDuration}.
connect: # vehicle connect event
title: Car connected
msg: "Car connected at ${pvPower:%.1fk}kW PV"
disconnect: # vehicle connected event
title: Car disconnected
msg: Car disconnected after ${connectedDuration}
soc: # vehicle soc update event
title: Soc updated
msg: Battery charged to ${vehicleSoc:%.0f}%
guest: # vehicle could not be identified
title: Unknown vehicle
msg: Unknown vehicle, guest connected?
services:
# - type: pushover
# app: # app id
# recipients:
# - # list of recipient ids
# - type: telegram
# token: # bot id
# chats:
# - # list of chat ids
# - type: email
# uri: smtp://<user>:<password>@<host>:<port>/?fromAddress=<from>&toAddresses=<to>
# - type: ntfy
# uri: https://<host>/<topics>
# priority: <priority>
# tags: <tags>
network: # schema is the HTTP schema # setting to `https` does not enable https, it only changes the way URLs are generated schema: http # host is the hostname or IP address # if the host name contains a `.local` suffix, the name will be announced on MDNS # docker: MDNS announcements don't work. host must be set to the docker host's name. host: 192.168.101.3 # Home Assistant IP-Adresse # port is the listening port for UI and api # evcc will listen on all available interfaces port: 7070 interval: 30s # control cycle interval. Interval <30s can lead to unexpected behavior, see https://docs.evcc.io/docs/reference/configuration/interval # database configuration for persisting charge sessions and settings # database: # type: sqlite # dsn: <path-to-db-file> # sponsor token enables optional features (request at https://sponsor.evcc.io) # sponsortoken: # telemetry enables aggregated statistics # # Telemetry allows collecting usage data (grid and green energy, charge power). # Data is aggregated, no individual charging sessions are tracked. The collected, # anonymous data can be retrieved using https://api.evcc.io. # # See https://github.com/evcc-io/evcc/pull/4343 or details. # # For time being, this is only available to sponsors, hence data is associated with # the sponsor token's identity. # # telemetry: true # log settings log: info levels: site: debug lp-1: debug lp-2: debug cache: error db: error # modbus proxy for allowing external programs to reuse the evcc modbus connection # each entry will start a proxy instance at the given port speaking Modbus TCP and # relaying to the given modbus downstream device (either TCP or RTU, RS485 or TCP) modbusproxy: # - port: 5200 # uri: solar-edge:502 # # rtu: true # # readonly: true # use `deny` to raise modbus errors # meter definitions # name can be freely chosen and is used as reference when assigning meters to site and loadpoints # for documentation see https://docs.evcc.io/docs/devices/meters meters: - name: my_grid type: template template: solaredge-hybrid usage: grid # Modbus TCP modbus: tcpip id: 1 host: 192.168.101.3 # Hostname port: 502 # Port timeout: 10s # optional - name: my_pv type: template template: solaredge-hybrid usage: pv # Modbus TCP modbus: tcpip id: 1 host: 192.168.101.3 # Hostname port: 502 # Port timeout: 10s # optional - name: my_battery type: template template: solaredge-hybrid usage: battery # Modbus TCP modbus: tcpip id: 1 host: 192.168.101.3 # Hostname port: 502 # Port timeout: 10s # optional # charger definitions # name can be freely chosen and is used as reference when assigning charger to vehicle # for documentation see https://docs.evcc.io/docs/devices/chargers chargers: - name: my_charger type: template template: openwb-pro host: 192.168.101.82 # IP-Adresse oder Hostname # vehicle definitions # name can be freely chosen and is used as reference when assigning vehicle to loadpoint # for documentation see https://docs.evcc.io/docs/devices/vehicles vehicles: - name: my_car type: template template: tesla title: # Wird in der Benutzeroberfläche angezeigt (optional) accessToken: [ dein Access Token ] # Tesla Access Token refreshToken: [ dein Refresh Token] # Tesla Refresh Token capacity: 60 # Akkukapazität in kWh (optional) # site describes the EVU connection, PV and home battery site: title: Home # display name for UI meters: grid: my_grid # grid meter pv: - my_pv # list of pv inverters/ meters battery: - my_battery # list of battery meters residualPower: 100 # additional household usage margin maxGridSupplyWhileBatteryCharging: 0 # ignore battery charging if AC consumption is above this value # loadpoint describes the charger, charge meter and connected vehicle loadpoints: - title: Carport # display name for UI charger: my_charger # charger #meter: charge # charge meter mode: "off" # default charge mode to apply when vehicle is disconnected; use "off" to disable by default if charger is publicly available # remaining settings are experts-only and best left at default values priority: 0 # relative priority for concurrent charging in PV mode with multiple loadpoints (higher values have higher priority) soc: # polling defines usage of the vehicle APIs # Modifying the default settings it NOT recommended. It MAY deplete your vehicle's battery # or lead to vehicle manufacturer banning you from API use. USE AT YOUR OWN RISK. poll: # poll mode defines under which condition the vehicle API is called: # charging: update vehicle ONLY when charging (this is the recommended default) # connected: update vehicle when connected (not only charging), interval defines how often # always: always update vehicle regardless of connection state, interval defines how often (only supported for single vehicle) mode: charging # poll interval defines how often the vehicle API may be polled if NOT charging interval: 60m estimate: true # set false to disable interpolating between api updates (not recommended) enable: # pv mode enable behavior delay: 1m # threshold must be exceeded for this long threshold: 0 # grid power threshold (in Watts, negative=export). If zero, export must exceed minimum charge power to enable disable: # pv mode disable behavior delay: 3m # threshold must be exceeded for this long threshold: 0 # maximum import power (W) # tariffs are the fixed or variable tariffs tariffs: currency: EUR # three letter ISO-4217 currency code (default EUR) grid: # either static grid price (or price zones) type: fixed price: 0.35 # EUR/kWh # or variable tariffs # type: tibber # token: "476c477d8a039529478ebd690d35ddd80e3308ffc49b59c65b142321aee963a4" # access token # homeid: "cc83e83e-8cbf-4595-9bf7-c3cf192f7d9c" # optional if multiple homes associated to account # type: awattar # region: de # optional, choose at for Austria # charges: # optional, additional charges per kWh # tax: # optional, additional tax (0.1 for 10%) # type: octopusenergy # tariff: AGILE-FLEX-22-11-25 # Tariff code # region: A # optional # type: elering # Nordpool # region: ee # or lt, lv, fi # charges: # optional, additional charges per kWh # tax: # optional, additional tax (0.1 for 10%) # type: energinet # Energinet using the price in DKK # region: dk1 # or dk2 # charges: # optional, additional charges per kWh # tax: # optional, additional tax (0.1 for 10%) # type: entsoe # Entso-E european market data # domain: BZN|DE-LU # https://transparency.entsoe.eu/content/static_content/Static%20content/web%20api/Guide.html#_areas # securitytoken: # api token # charges: # optional, additional charges per kWh # tax: # optional, additional tax (0.1 for 10%) # type: pun # PUN - Prezzo unico nazionale - Hourly Italian wholesale prices # charges: 0 # optional, additional charges per kWh # tax: 0 # optional, additional tax (0.1 for 10%) # type: amber # token: # api token from https://app.amber.com.au/developers/ # siteid: # site ID returned by the API # channel: general # type: custom # price from a plugin source; see https://docs.evcc.io/docs/reference/plugins # price: # source: http # uri: https://example.org/price.json # jq: .price.current feedin: # rate for feeding excess (pv) energy to the grid type: fixed price: 0.08 # EUR/kWh # type: octopusenergy # tariff: AGILE-FLEX-22-11-25 # Tariff code # region: A # optional # type: amber # token: # api token from https://app.amber.com.au/developers/ # siteid: # site ID returned by the API # channel: feedIn co2: # co2 tariff provides co2 intensity forecast and is for co2-optimized target charging if no variable grid tariff is specified # type: grünstromindex # GrünStromIndex (Germany only) # zip: <zip> # type: electricitymaps # https://app.electricitymaps.com/map # uri: <uri> # token: <token> # needs to be a token with forecast (not in the free tier) # zone: DE # type: ngeso # National Grid Electricity System Operator data (United Kingdom only) https://carbonintensity.org.uk/ # provides national data if both region and postcode are omitted - do not supply both at the same time! # region: 1 # optional, coarser than using a postcode - see https://api.carbonintensity.org.uk/ for full list # postcode: SW1A1AA # optional # mqtt message broker mqtt: # broker: localhost:1883 # topic: evcc # root topic for publishing, set empty to disable # user: # password: # influx database influx: # url: http://localhost:8086 # database: evcc # user: # password: # eebus credentials eebus: # uri: # :4712 # interfaces: # limit eebus to specific network interfaces # - en0 # certificate: # local signed certificate, required, can be generated via `evcc eebus-cert` # public: # public key # private: # private key # push messages messaging: events: start: # charge start event title: Charge started msg: Started charging in "${mode}" mode stop: # charge stop event title: Charge finished msg: Finished charging ${chargedEnergy:%.1fk}kWh in ${chargeDuration}. connect: # vehicle connect event title: Car connected msg: "Car connected at ${pvPower:%.1fk}kW PV" disconnect: # vehicle connected event title: Car disconnected msg: Car disconnected after ${connectedDuration} soc: # vehicle soc update event title: Soc updated msg: Battery charged to ${vehicleSoc:%.0f}% guest: # vehicle could not be identified title: Unknown vehicle msg: Unknown vehicle, guest connected? services: # - type: pushover # app: # app id # recipients: # - # list of recipient ids # - type: telegram # token: # bot id # chats: # - # list of chat ids # - type: email # uri: smtp://<user>:<password>@<host>:<port>/?fromAddress=<from>&toAddresses=<to> # - type: ntfy # uri: https://<host>/<topics> # priority: <priority> # tags: <tags>
network:
  # schema is the HTTP schema
  # setting to `https` does not enable https, it only changes the way URLs are generated
  schema: http
  # host is the hostname or IP address
  # if the host name contains a `.local` suffix, the name will be announced on MDNS
  # docker: MDNS announcements don't work. host must be set to the docker host's name.
  host: 192.168.101.3 # Home Assistant IP-Adresse
  # port is the listening port for UI and api
  # evcc will listen on all available interfaces
  port: 7070

interval: 30s # control cycle interval. Interval <30s can lead to unexpected behavior, see https://docs.evcc.io/docs/reference/configuration/interval

# database configuration for persisting charge sessions and settings
# database:
#   type: sqlite
#   dsn: <path-to-db-file>

# sponsor token enables optional features (request at https://sponsor.evcc.io)
# sponsortoken:

# telemetry enables aggregated statistics
#
# Telemetry allows collecting usage data (grid and green energy, charge power).
# Data is aggregated, no individual charging sessions are tracked. The collected,
# anonymous data can be retrieved using https://api.evcc.io.
#
# See https://github.com/evcc-io/evcc/pull/4343 or details.
#
# For time being, this is only available to sponsors, hence data is associated with
# the sponsor token's identity.
#
# telemetry: true

# log settings
log: info
levels:
  site: debug
  lp-1: debug
  lp-2: debug
  cache: error
  db: error

# modbus proxy for allowing external programs to reuse the evcc modbus connection
# each entry will start a proxy instance at the given port speaking Modbus TCP and
# relaying to the given modbus downstream device (either TCP or RTU, RS485 or TCP)
modbusproxy:
  #  - port: 5200
  #    uri: solar-edge:502
  #    # rtu: true
  #    # readonly: true # use `deny` to raise modbus errors

# meter definitions
# name can be freely chosen and is used as reference when assigning meters to site and loadpoints
# for documentation see https://docs.evcc.io/docs/devices/meters
meters:
  - name: my_grid
    type: template
    template: solaredge-hybrid
    usage: grid
    
    # Modbus TCP
    modbus: tcpip
    id: 1
    host: 192.168.101.3 # Hostname
    port: 502 # Port
    timeout: 10s # optional 
    
  - name: my_pv
    type: template
    template: solaredge-hybrid
    usage: pv
    
    # Modbus TCP
    modbus: tcpip
    id: 1
    host: 192.168.101.3 # Hostname
    port: 502 # Port
    timeout: 10s # optional   
    
  - name: my_battery
    type: template
    template: solaredge-hybrid
    usage: battery

    # Modbus TCP
    modbus: tcpip
    id: 1
    host: 192.168.101.3 # Hostname
    port: 502 # Port
    timeout: 10s # optional     

# charger definitions
# name can be freely chosen and is used as reference when assigning charger to vehicle
# for documentation see https://docs.evcc.io/docs/devices/chargers
chargers:
  - name: my_charger
    type: template
    template: openwb-pro
    host: 192.168.101.82 # IP-Adresse oder Hostname 

# vehicle definitions
# name can be freely chosen and is used as reference when assigning vehicle to loadpoint
# for documentation see https://docs.evcc.io/docs/devices/vehicles
vehicles:
  - name: my_car
    type: template
    template: tesla
    title: # Wird in der Benutzeroberfläche angezeigt (optional)
    accessToken: [ dein Access Token ] # Tesla Access Token
    refreshToken: [ dein Refresh Token] # Tesla Refresh Token
    capacity: 60 # Akkukapazität in kWh (optional) 

# site describes the EVU connection, PV and home battery
site:
  title: Home # display name for UI
  meters:
    grid: my_grid # grid meter
    pv:
      - my_pv # list of pv inverters/ meters
    battery:
      - my_battery # list of battery meters

  residualPower: 100 # additional household usage margin
  maxGridSupplyWhileBatteryCharging: 0 # ignore battery charging if AC consumption is above this value

# loadpoint describes the charger, charge meter and connected vehicle
loadpoints:
  - title: Carport # display name for UI
    charger: my_charger # charger
    #meter: charge # charge meter
    mode: "off" # default charge mode to apply when vehicle is disconnected; use "off" to disable by default if charger is publicly available

    # remaining settings are experts-only and best left at default values
    priority: 0 # relative priority for concurrent charging in PV mode with multiple loadpoints (higher values have higher priority)
    soc:
      # polling defines usage of the vehicle APIs
      # Modifying the default settings it NOT recommended. It MAY deplete your vehicle's battery
      # or lead to vehicle manufacturer banning you from API use. USE AT YOUR OWN RISK.
      poll:
        # poll mode defines under which condition the vehicle API is called:
        #   charging: update vehicle ONLY when charging (this is the recommended default)
        #   connected: update vehicle when connected (not only charging), interval defines how often
        #   always: always update vehicle regardless of connection state, interval defines how often (only supported for single vehicle)
        mode: charging
        # poll interval defines how often the vehicle API may be polled if NOT charging
        interval: 60m
      estimate: true # set false to disable interpolating between api updates (not recommended)
    enable: # pv mode enable behavior
      delay: 1m # threshold must be exceeded for this long
      threshold: 0 # grid power threshold (in Watts, negative=export). If zero, export must exceed minimum charge power to enable
    disable: # pv mode disable behavior
      delay: 3m # threshold must be exceeded for this long
      threshold: 0 # maximum import power (W)

# tariffs are the fixed or variable tariffs
tariffs:
  currency: EUR # three letter ISO-4217 currency code (default EUR)
  grid:
    # either static grid price (or price zones)
    type: fixed
    price: 0.35 # EUR/kWh


    # or variable tariffs
    # type: tibber
    # token: "476c477d8a039529478ebd690d35ddd80e3308ffc49b59c65b142321aee963a4" # access token
    # homeid: "cc83e83e-8cbf-4595-9bf7-c3cf192f7d9c" # optional if multiple homes associated to account

    # type: awattar
    # region: de # optional, choose at for Austria
    # charges: # optional, additional charges per kWh
    # tax: # optional, additional tax (0.1 for 10%)

    # type: octopusenergy
    # tariff: AGILE-FLEX-22-11-25 # Tariff code
    # region: A # optional

    # type: elering # Nordpool
    # region: ee # or lt, lv, fi
    # charges: # optional, additional charges per kWh
    # tax: # optional, additional tax (0.1 for 10%)

    # type: energinet # Energinet using the price in DKK
    # region: dk1 # or dk2
    # charges: # optional, additional charges per kWh
    # tax: # optional, additional tax (0.1 for 10%)

    # type: entsoe # Entso-E european market data
    # domain: BZN|DE-LU # https://transparency.entsoe.eu/content/static_content/Static%20content/web%20api/Guide.html#_areas
    # securitytoken: # api token
    # charges: # optional, additional charges per kWh
    # tax: # optional, additional tax (0.1 for 10%)

    # type: pun # PUN - Prezzo unico nazionale - Hourly Italian wholesale prices
    # charges: 0 # optional, additional charges per kWh
    # tax: 0 # optional, additional tax (0.1 for 10%)

    # type: amber
    # token: # api token from https://app.amber.com.au/developers/
    # siteid: # site ID returned by the API
    # channel: general

    # type: custom # price from a plugin source; see https://docs.evcc.io/docs/reference/plugins
    # price:
    #   source: http
    #   uri: https://example.org/price.json
    #   jq: .price.current

  feedin:
    # rate for feeding excess (pv) energy to the grid
    type: fixed
    price: 0.08 # EUR/kWh

    # type: octopusenergy
    # tariff: AGILE-FLEX-22-11-25 # Tariff code
    # region: A # optional

    # type: amber
    # token: # api token from https://app.amber.com.au/developers/
    # siteid: # site ID returned by the API
    # channel: feedIn
  co2:
    # co2 tariff provides co2 intensity forecast and is for co2-optimized target charging if no variable grid tariff is specified
    # type: grünstromindex # GrünStromIndex (Germany only)
    # zip: <zip>

    # type: electricitymaps # https://app.electricitymaps.com/map
    # uri: <uri>
    # token: <token> # needs to be a token with forecast (not in the free tier)
    # zone: DE

    # type: ngeso # National Grid Electricity System Operator data (United Kingdom only) https://carbonintensity.org.uk/
    # provides national data if both region and postcode are omitted - do not supply both at the same time!
    # region: 1 # optional, coarser than using a postcode - see https://api.carbonintensity.org.uk/ for full list
    # postcode: SW1A1AA # optional

# mqtt message broker
mqtt:
  # broker: localhost:1883
  # topic: evcc # root topic for publishing, set empty to disable
  # user:
  # password:

# influx database
influx:
  # url: http://localhost:8086
  # database: evcc
  # user:
  # password:

# eebus credentials
eebus:
  # uri: # :4712
  # interfaces: # limit eebus to specific network interfaces
  # - en0
  # certificate: # local signed certificate, required, can be generated via `evcc eebus-cert`
  #   public: # public key
  #   private: # private key

# push messages
messaging:
  events:
    start: # charge start event
      title: Charge started
      msg: Started charging in "${mode}" mode
    stop: # charge stop event
      title: Charge finished
      msg: Finished charging ${chargedEnergy:%.1fk}kWh in ${chargeDuration}.
    connect: # vehicle connect event
      title: Car connected
      msg: "Car connected at ${pvPower:%.1fk}kW PV"
    disconnect: # vehicle connected event
      title: Car disconnected
      msg: Car disconnected after ${connectedDuration}
    soc: # vehicle soc update event
      title: Soc updated
      msg: Battery charged to ${vehicleSoc:%.0f}%
    guest: # vehicle could not be identified
      title: Unknown vehicle
      msg: Unknown vehicle, guest connected?
  services:
  # - type: pushover
  #   app: # app id
  #   recipients:
  #   - # list of recipient ids
  # - type: telegram
  #   token: # bot id
  #   chats:
  #   - # list of chat ids
  # - type: email
  #   uri: smtp://<user>:<password>@<host>:<port>/?fromAddress=<from>&toAddresses=<to>
  # - type: ntfy
  #   uri: https://<host>/<topics>
  #   priority: <priority>
  #   tags: <tags>