Vehicles
To limit vehicle charging to a given State of Charge (SoC), which most Chargers do not have the capability to read, evcc can directly communicate with the Vehicle, usually via its manufacturer.
The configuration is formatted as follows:
vehicles:
- name: ev
type: ...
All of the Vehicles listed on this page are supported by evcc.
Once you have adapted the code samples to suit your Vehicle(s) in evcc.yaml
, you can test the connection using the evcc vehicle
command, which returns the current status of all connected vehicles.
If you just want to test one meter at a time, use evcc vehicle --name my_swanky_ev
.
$ ./evcc vehicle
SoC: 57%
Charge status: B
Charged: 4.7kWh
Capacity: 77kWh
Range: 280km
Odometer: 4131km
The availability and general quality of Vehicle data can vary greatly by manufacturer. If you have persistent issues updating your Vehicle data, please open a GitHub discussion.
Aiways
vehicles:
- name: my_car
type: template
template: aiways
user: # Username, e.g. email address, user id, etc.
password: # Password, Use single quotes in case of leading zeros
vin: W... # Vehicle Identification Number, If you own multiple vehicles from the same manufacturer
title: # Title, Will be displayed in the user interface (optional)
capacity: 50 # Battery capacity (kWh), optional
Audi
vehicles:
- name: my_car
type: template
template: audi
user: # Username, e.g. email address, user id, etc.
password: # Password, Use single quotes in case of leading zeros
vin: WAUZZZ... # Vehicle Identification Number, If you own multiple vehicles from the same manufacturer (optional)
title: # Title, Will be displayed in the user interface (optional)
capacity: 50 # Battery capacity (kWh), optional
BMW
Requires hcaptcha
token. This must be generated once at bimmer-connected.readthedocs.io. The token is only valid for a short time. Please copy it into the configuration and start evcc as soon as possible after generation.
vehicles:
- name: my_car
type: template
template: bmw
user: # Username, e.g. email address, user id, etc.
password: # Password, Use single quotes in case of leading zeros
vin: WBMW... # Vehicle Identification Number, If you own multiple vehicles from the same manufacturer (optional)
title: # Title, Will be displayed in the user interface (optional)
capacity: 50 # Battery capacity (kWh), optional
hcaptcha: # Captcha Token
Citroën
Requires access
and refresh
tokens. These can be generated with command evcc token [name]
.
vehicles:
- name: my_car
type: template
template: citroen
title: # Title, Will be displayed in the user interface (optional)
capacity: 50 # Battery capacity (kWh), optional
user: # Username, e.g. email address, user id, etc.
accessToken: # Access token
refreshToken: # Refresh token
vin: V... # Vehicle Identification Number, If you own multiple vehicles from the same manufacturer (optional)
Dacia
vehicles:
- name: my_car
type: template
template: dacia
user: # Username, e.g. email address, user id, etc.
password: # Password, Use single quotes in case of leading zeros
vin: W... # Vehicle Identification Number, If you own multiple vehicles from the same manufacturer (optional)
title: # Title, Will be displayed in the user interface (optional)
capacity: 50 # Battery capacity (kWh), optional
DS
Requires access
and refresh
tokens. These can be generated with command evcc token [name]
.
vehicles:
- name: my_car
type: template
template: ds
title: # Title, Will be displayed in the user interface (optional)
capacity: 50 # Battery capacity (kWh), optional
user: # Username, e.g. email address, user id, etc.
accessToken: # Access token
refreshToken: # Refresh token
vin: V... # Vehicle Identification Number, If you own multiple vehicles from the same manufacturer (optional)
Fiat
vehicles:
- name: my_car
type: template
template: fiat
user: # Username, e.g. email address, user id, etc.
password: # Password, Use single quotes in case of leading zeros
vin: ZFAE... # Vehicle Identification Number, If you own multiple vehicles from the same manufacturer (optional)
title: # Title, Will be displayed in the user interface (optional)
capacity: 50 # Battery capacity (kWh), optional
pin: # PIN, Required for evcc to wake up the vehicle for charging and to refresh the SoC while charging. When connected to TWC3, used to start/stop charging. (optional)
Ford
vehicles:
- name: my_car
type: template
template: ford-connect
title: # Title, Will be displayed in the user interface (optional)
capacity: 50 # Battery capacity (kWh), optional
clientid: # FordConnect API Client ID, Setup at https://developer.ford.com
clientsecret: # FordConnect API Client Secret, Setup at https://developer.ford.com
accessToken: # Access token
refreshToken: # Refresh token
vin: WF0FXX... # Vehicle Identification Number, If you own multiple vehicles from the same manufacturer (optional)
Hyundai Bluelink
Some models (e.g. Kona) switch internally to 2 phases at low charging currents (< 8A). In cases where the wallbox also measures the phase currents, this leads to undesirable fluctuations in the charging power. The remedy here is to set the minimum charging current to 8A.
vehicles:
- name: my_car
type: template
template: hyundai
user: # Username, e.g. email address, user id, etc.
password: # Password, Use single quotes in case of leading zeros
vin: W... # Vehicle Identification Number, If you own multiple vehicles from the same manufacturer (optional)
title: # Title, Will be displayed in the user interface (optional)
capacity: 50 # Battery capacity (kWh), optional
language: en # Language, [en, de] (optional)
Jeep
vehicles:
- name: my_car
type: template
template: fiat
user: # Username, e.g. email address, user id, etc.
password: # Password, Use single quotes in case of leading zeros
vin: ZFAE... # Vehicle Identification Number, If you own multiple vehicles from the same manufacturer (optional)
title: # Title, Will be displayed in the user interface (optional)
capacity: 50 # Battery capacity (kWh), optional
pin: # PIN, Required for evcc to wake up the vehicle for charging and to refresh the SoC while charging. When connected to TWC3, used to start/stop charging. (optional)
Kia Bluelink
Some models (e.g. Niro EV) switch internally to 2 phases at low charging currents (< 8A). In cases where the wallbox also measures the phase currents, this leads to undesirable fluctuations in the charging power. The remedy here is to set the minimum charging current to 8A.
vehicles:
- name: my_car
type: template
template: kia
user: # Username, e.g. email address, user id, etc.
password: # Password, Use single quotes in case of leading zeros
vin: W... # Vehicle Identification Number, If you own multiple vehicles from the same manufacturer (optional)
title: # Title, Will be displayed in the user interface (optional)
capacity: 50 # Battery capacity (kWh), optional
language: en # Language, [en, de] (optional)
Mercedes-Benz
Requires access
and refresh
tokens. Documentation here: https://tinyurl.com/mbapi2020helptoken.
vehicles:
- name: my_car
type: template
template: mercedes
title: # Title, Will be displayed in the user interface (optional)
capacity: 50 # Battery capacity (kWh), optional
user: # Username, e.g. email address, user id, etc.
region: EMEA # Region, [EMEA, APAC, NORAM]
accessToken: # Access token
refreshToken: # Refresh token
vin: V... # Vehicle Identification Number, If you own multiple vehicles from the same manufacturer (optional)
MG
vehicles:
- name: my_car
type: template
template: mg
user: # Username, e.g. email address, user id, etc.
password: # Password, Use single quotes in case of leading zeros
vin: W... # Vehicle Identification Number, If you own multiple vehicles from the same manufacturer
title: # Title, Will be displayed in the user interface (optional)
capacity: 50 # Battery capacity (kWh), optional
Mini
Requires hcaptcha
token. This must be generated once at bimmer-connected.readthedocs.io. The token is only valid for a short time. Please copy it into the configuration and start evcc as soon as possible after generation.
vehicles:
- name: my_car
type: template
template: mini
user: # Username, e.g. email address, user id, etc.
password: # Password, Use single quotes in case of leading zeros
vin: WBMW... # Vehicle Identification Number, If you own multiple vehicles from the same manufacturer (optional)
title: # Title, Will be displayed in the user interface (optional)
capacity: 50 # Battery capacity (kWh), optional
hcaptcha: # Captcha Token
Nissan
Ariya
vehicles:
- name: my_car
type: template
template: nissan-ariya
user: # Username, e.g. email address, user id, etc.
password: # Password, Use single quotes in case of leading zeros
vin: W... # Vehicle Identification Number, If you own multiple vehicles from the same manufacturer (optional)
title: # Title, Will be displayed in the user interface (optional)
capacity: 50 # Battery capacity (kWh), optional
Leaf
vehicles:
- name: my_car
type: template
template: nissan
user: # Username, e.g. email address, user id, etc.
password: # Password, Use single quotes in case of leading zeros
vin: W... # Vehicle Identification Number, If you own multiple vehicles from the same manufacturer (optional)
title: # Title, Will be displayed in the user interface (optional)
capacity: 50 # Battery capacity (kWh), optional
Leaf (pre 2019)
vehicles:
- name: my_car
type: template
template: carwings
user: # Username, e.g. email address, user id, etc.
password: # Password, Use single quotes in case of leading zeros
vin: W... # Vehicle Identification Number, If you own multiple vehicles from the same manufacturer (optional)
title: # Title, Will be displayed in the user interface (optional)
capacity: 50 # Battery capacity (kWh), optional
Opel
Requires access
and refresh
tokens. These can be generated with command evcc token [name]
.
vehicles:
- name: my_car
type: template
template: opel
title: # Title, Will be displayed in the user interface (optional)
capacity: 50 # Battery capacity (kWh), optional
user: # Username, e.g. email address, user id, etc.
accessToken: # Access token
refreshToken: # Refresh token
vin: V... # Vehicle Identification Number, If you own multiple vehicles from the same manufacturer (optional)
Peugeot
Requires access
and refresh
tokens. These can be generated with command evcc token [name]
.
vehicles:
- name: my_car
type: template
template: peugeot
title: # Title, Will be displayed in the user interface (optional)
capacity: 50 # Battery capacity (kWh), optional
user: # Username, e.g. email address, user id, etc.
accessToken: # Access token
refreshToken: # Refresh token
vin: V... # Vehicle Identification Number, If you own multiple vehicles from the same manufacturer (optional)
Polestar
vehicles:
- name: my_car
type: template
template: polestar
user: # Username, e.g. email address, user id, etc.
password: # Password, Use single quotes in case of leading zeros
vin: LPSVS... # Vehicle Identification Number, If you own multiple vehicles from the same manufacturer (optional)
title: # Title, Will be displayed in the user interface (optional)
capacity: 50 # Battery capacity (kWh), optional
Renault
vehicles:
- name: my_car
type: template
template: renault
user: # Username, e.g. email address, user id, etc.
password: # Password, Use single quotes in case of leading zeros
vin: WREN... # Vehicle Identification Number, If you own multiple vehicles from the same manufacturer (optional)
title: # Title, Will be displayed in the user interface (optional)
capacity: 50 # Battery capacity (kWh), optional
Seat
CupraConnect Gen3 (Ateca, Leon, Formentor, Tarraco)
vehicles:
- name: my_car
type: template
template: seat
user: # Username, e.g. email address, user id, etc.
password: # Password, Use single quotes in case of leading zeros
vin: W... # Vehicle Identification Number, If you own multiple vehicles from the same manufacturer (optional)
title: # Title, Will be displayed in the user interface (optional)
capacity: 50 # Battery capacity (kWh), optional
CupraConnect Gen4 (Born, Formentor, Tavascan)
vehicles:
- name: my_car
type: template
template: cupra
user: # Username, e.g. email address, user id, etc.
password: # Password, Use single quotes in case of leading zeros
vin: W... # Vehicle Identification Number, If you own multiple vehicles from the same manufacturer (optional)
title: # Title, Will be displayed in the user interface (optional)
capacity: 50 # Battery capacity (kWh), optional
Skoda Enyaq
vehicles:
- name: my_car
type: template
template: enyaq
user: # Username, e.g. email address, user id, etc.
password: # Password, Use single quotes in case of leading zeros
vin: W... # Vehicle Identification Number, If you own multiple vehicles from the same manufacturer (optional)
title: # Title, Will be displayed in the user interface (optional)
capacity: 50 # Battery capacity (kWh), optional
timeout: 10s # Timeout, optional
Smart
vehicles:
- name: my_car
type: template
template: smart-hello
user: # Username, e.g. email address, user id, etc.
password: # Password, Use single quotes in case of leading zeros
vin: W... # Vehicle Identification Number, If you own multiple vehicles from the same manufacturer (optional)
title: # Title, Will be displayed in the user interface (optional)
capacity: 50 # Battery capacity (kWh), optional
EQ
Requires access
and refresh
tokens. These can be generated with command evcc token [name]
.
vehicles:
- name: my_car
type: template
template: smart
title: # Title, Will be displayed in the user interface (optional)
capacity: 50 # Battery capacity (kWh), optional
user: # Username, e.g. email address, user id, etc.
region: EMEA # Region, [EMEA, APAC, NORAM]
accessToken: # Access token
refreshToken: # Refresh token
vin: V... # Vehicle Identification Number, If you own multiple vehicles from the same manufacturer (optional)
Tesla
Tesla offers an official, but paid vehicle API. For private use, you can create a Tesla Developer Account and receive a monthly API credit of 0. This is usually sufficient for the common evcc use cases.
The myteslamate.com guide explains the process and generates a free Access and Refresh Token. With this token pair and your Client ID created in the Tesla Developer Account, evcc can directly communicate with the Tesla API. You can see your used credit in the Tesla Developer Dashboard.
To use a Tesla Wall Connector, you need a public Command Proxy Server. myteslamate.com provides such a service with per-use pricing. Configure the Command permissions at myteslamate.com and enter the Proxy Token here. Start, stopp and current commands are sent to Tesla via this proxy.
More information and alternatives can be found in our blog post.
vehicles:
- name: my_car
type: template
template: tesla
title: # Title, Will be displayed in the user interface (optional)
capacity: 50 # Battery capacity (kWh), optional
clientId: # Client ID, from [Tesla Developer App](https://developer.tesla.com/dashboard).
accessToken: # Access token, from [myteslamate.com](https://app.myteslamate.com/).
refreshToken: # Refresh token, from [myteslamate.com](https://app.myteslamate.com/).
vin: W... # Vehicle Identification Number, If you own multiple vehicles from the same manufacturer (optional)
Toyota
Requires Toyota Connected Services Account.
vehicles:
- name: my_car
type: template
template: toyota
title: # Title, Will be displayed in the user interface (optional)
capacity: 50 # Battery capacity (kWh), optional
user: # Username, e.g. email address, user id, etc.
password: # Password, Use single quotes in case of leading zeros
vin: JT... # Vehicle Identification Number, If you own multiple vehicles from the same manufacturer (optional)
Volkswagen We Connect ID
e-Golf, e-Up, ID family
vehicles:
- name: my_car
type: template
template: vw
user: # Username, e.g. email address, user id, etc.
password: # Password, Use single quotes in case of leading zeros
vin: WVWZZZ... # Vehicle Identification Number, If you own multiple vehicles from the same manufacturer (optional)
title: # Title, Will be displayed in the user interface (optional)
capacity: 50 # Battery capacity (kWh), optional
timeout: 10s # Timeout, optional
Volvo
To use with EVCC, you need a Volvo account and a Volvo Connected Car API Key. To do this, create a new application on the Account page and save the primary VCC API key. Now publish your application and select the permissions "Connected Vehicle API -> conve:vehicle-relation" and "Energy API -> (everything)" under "Scopes". You must enter the URL of your EVCC instance as the redirect URL, e.g. "http://evcc.local:7070/oauth/callback". Once the application is created, it will be displayed as "Publication under Review". This is not a problem, it still works. When adding the vehicle via the UI, an error message is displayed. Check the log for the message "registering oauth provider at /oauth/login?..." and open the link "http://evcc.local:7070/oauth/login?..." in a new tab. Log in with your Volvo account and allow access to the data. If the authorization is successful, the vehicle can be added.
vehicles:
- name: my_car
type: template
template: volvo-connected
title: # Title, Will be displayed in the user interface (optional)
capacity: 50 # Battery capacity (kWh), optional
vccapikey: # VCC API Key, from [Volvo Developer App](https://developer.volvocars.com/).
clientId: # Client ID, from [Volvo Developer App](https://developer.volvocars.com/).
clientSecret: # Client Secret, from [Volvo Developer App](https://developer.volvocars.com/).
redirectUri: # Redirect URI, Redirect URI of your evcc instance, format: `http://evcc.local:7070/oauth/callback`. Must match the redirect URI set in your Volvo Developer App.
vin: WF0FXX... # Vehicle Identification Number, If you own multiple vehicles from the same manufacturer (optional)
Zero Motorcycles
vehicles:
- name: my_car
type: template
template: zero
user: # Username, e.g. email address, user id, etc.
password: # Password, Use single quotes in case of leading zeros
vin: W... # Vehicle Identification Number, If you own multiple vehicles from the same manufacturer (optional)
title: # Title, Will be displayed in the user interface (optional)
capacity: 50 # Battery capacity (kWh), optional
Generic support
Custom
vehicles:
- name: my_car
type: custom
title: My Car # display name for UI
capacity: 50 # battery capacity (kWh)
soc: # battery soc (%)
source: # plugin type
# ...
status: # optional charge status (A..F)
source: # plugin type
# ...
range: # optional electric range (km)
source: # plugin type
# ...
odometer: # optional odometer (km)
source: # plugin type
# ...
climater: # optional climate status (true/false)
source: # plugin type
# ...
wakeup: # optional vehicle wake up command
source: # plugin type
# ...
maxcurrent: # set charger max current (A)
source: # plugin type
# ...
limitsoc: # optional in-vehicle limit soc, read-only (%)
source: # plugin type
# ...
evNotify
vehicles:
- name: my_car
type: template
template: evnotify
akey: # API Key
token: # Token
title: # Title, Will be displayed in the user interface (optional)
capacity: 50 # Battery capacity (kWh), optional
Generic vehicle (without API)
vehicles:
- name: my_car
type: template
template: offline
title: # Title, Will be displayed in the user interface (optional)
capacity: 50 # Battery capacity (kWh), optional
ioBroker.bmw
ioBroker BMW Adapter. Requires ioBroker.bmw and ioBroker.simple-api
vehicles:
- name: my_car
type: template
template: ioBroker.bmw
title: # Title, Will be displayed in the user interface (optional)
capacity: 50 # Battery capacity (kWh), optional
vin: WBA8E9G50GM091234 # Vehicle Identification Number, BMW VehicleIdentificationNumber
uri: # ioBroker URL, including ioBroker.simple-api Port
ISO15118
Only supported if the vehicle can provide the state of charge (Soc) to the connected charger. Using ISO15118 with some VW group vehicles, e.g. Porsche Taycan, requires additional configuration in the vehicle. This requires an active location-based charging profile with the lowest minimum charge (25%) and direct charging disabled. Otherwise the vehicle cannot be put into sleep mode.
vehicles:
- name: my_car
type: template
template: iso15118
title: # Title, Will be displayed in the user interface (optional)
capacity: 50 # Battery capacity (kWh), optional
mg2mqtt
Required MQTT broker configuration and a SAIC/MQTT Gateway (https://github.com/SAIC-iSmart-API/saic-python-mqtt-gateway or https://github.com/SAIC-iSmart-API/saic-java-client)
vehicles:
- name: my_car
type: template
template: mg2mqtt
user: # Username, e.g. email address, user id, etc.
vin: W... # Vehicle Identification Number, If you own multiple vehicles from the same manufacturer
title: # Title, Will be displayed in the user interface (optional)
capacity: 50 # Battery capacity (kWh), optional
timeout: 1h # Timeout, optional
mz2mqtt
myMazda to MQTT. Required MQTT broker configuration and a mz2mqtt installation https://github.com/C64Axel/mz2mqtt.
vehicles:
- name: my_car
type: template
template: mz2mqtt
title: # Title, Will be displayed in the user interface (optional)
capacity: 50 # Battery capacity (kWh), optional
vin: W... # Vehicle Identification Number, If you own multiple vehicles from the same manufacturer
Open Vehicle Monitoring System
Support for all vehicles via ODB2 adapter in the vehicle. More info at Open Vehicle Monitoring System.
vehicles:
- name: my_car
type: template
template: ovms
title: # Title, Will be displayed in the user interface (optional)
capacity: 50 # Battery capacity (kWh), optional
user: # Username, e.g. email address, user id, etc.
password: # Password, Use single quotes in case of leading zeros
vehicleid: # Vehicle ID
PSA Car Controller
Remote Control of PSA car https://github.com/flobz/psa_car_controller
vehicles:
- name: my_car
type: template
template: flobz
url: http://192.0.2.2 # URL
vin: W... # Vehicle Identification Number, If you own multiple vehicles from the same manufacturer
title: # Title, Will be displayed in the user interface (optional)
capacity: 50 # Battery capacity (kWh), optional
Tesla BLE
Open Source Tesla BLE HTTP Proxy https://github.com/wimaha/TeslaBleHttpProxy
vehicles:
- name: my_car
type: template
template: tesla-ble
title: # Title, Will be displayed in the user interface (optional)
capacity: 50 # Battery capacity (kWh), optional
vin: W... # Vehicle Identification Number, Required for BLE connection
url: http://192.168.178.27 # URL, URL of the Tesla BLE HTTP Proxy
port: 8080 # Port, Port of the Tesla BLE HTTP Proxy (optional)
TeslaLogger
Open source Tesla data logger https://github.com/bassmaster187/TeslaLogger
vehicles:
- name: my_car
type: template
template: teslalogger
title: # Title, Will be displayed in the user interface (optional)
capacity: 50 # Battery capacity (kWh), optional
id: 1 # TeslaLogger CarID, optional
url: http://192.0.2.2 # URL
port: 5000 # Port, optional
TeslaMate
Open source Tesla data logger https://github.com/adriankumpf/teslamate. MQTT broker required.
vehicles:
- name: my_car
type: template
template: teslamate
title: # Title, Will be displayed in the user interface (optional)
capacity: 50 # Battery capacity (kWh), optional
id: 1 # Vehicle ID, optional
Tessie
Connect your Tesla using the Tessie API. This will never wake up the car, polling can be set to "always" and interval "1M". If the vehicle is awake, the data is usually less than 15 seconds old. If the vehicle is asleep, the data is from the time the vehicle went to sleep. Get your token at https://dash.tessie.com/settings/api
vehicles:
- name: my_car
type: template
template: tessie
title: # Title, Will be displayed in the user interface (optional)
capacity: 50 # Battery capacity (kWh), optional
vin: W... # Vehicle VIN, If you own multiple vehicles from the same manufacturer
token: # Tessie API Token
Tronity
vehicles:
- name: my_car
type: template
template: tronity
title: # Title, Will be displayed in the user interface (optional)
capacity: 50 # Battery capacity (kWh), optional
clientid: # Tronity API Client ID, Setup at https://app.tronity.tech
clientsecret: # Tronity API Client Secret, Setup at https://app.tronity.tech
vin: W... # Vehicle Identification Number, If you own multiple vehicles from the same manufacturer (optional)
Weitere Informationen zum 💚 evcc Sponsorship gibt es hier.
volvo2mqtt
Requires MQTT broker configuration and a volvo2mqtt installation https://github.com/Dielee/volvo2mqtt
vehicles:
- name: my_car
type: template
template: volvo2mqtt
title: # Title, Will be displayed in the user interface (optional)
capacity: 50 # Battery capacity (kWh), optional
vin: W... # Vehicle Identification Number, If you own multiple vehicles from the same manufacturer
timeout: 720h # Timeout, optional
Scooter
NIU E-Scooter
vehicles:
- name: my_car
type: template
template: niu-e-scooter
title: # Title, Will be displayed in the user interface (optional)
icon: scooter # Icon, Will be displayed in the user interface [car, bike, bus, moped, motorcycle, rocket, scooter, taxi, tractor, rickshaw, shuttle, van, airpurifier, battery, bulb, climate, coffeemaker, compute, cooking, cooler, desktop, device, dishwasher, dryer, floorlamp, generic, heater, heatexchange, heatpump, kettle, laundry, laundry2, machine, meter, microwave, pump, smartconsumer, tool, waterheater] (optional)
user: # Username, e.g. email address, user id, etc.
password: # Password, Use single quotes in case of leading zeros
serial: # Scooter serial number like shown in NIU app
capacity: 4 # Battery capacity (kWh), optional