MySkoda integration using the API that the MySkoda App uses.
Status: This project is a new implementation of a relatively new API. Consider this code alpha.
Contributions are welcomed, both as issues, but more as pull requests :)
Please join our Discord and help development by providing feedback and details about the vehicles you are using.
You can help us translate your MySkoda integration into your language! Just join our Crowdin project If your desired language is not available, please open an issue and let us know about it!
Location of vehicles are exposed as device trackers.
To make sure updates end up in the car the way intended by the you, we throttle all equal changes to the car for 30s. Simply put: You can change a setting in the car once every 30s, but you can change multiple settings in sequence.
So:
The requests will silently be ignored by HomeAssistant, so make sure you wait at least 30s before sending another request
You can manually install this integration as an custom_component under Home Assistant or install it using HACS (Home Assistant Community Store).
myskoda
repository or folder.custom_components/myskoda
folder from the downloaded files.myskoda
folder into your Home Assistant's custom components directory:
<home_assistant_folder>/custom_components/myskoda
The myskoda
repository is also compatible with HACS (Home Assistant Community Store), making installation and updates easier.
myskoda
Repository to HACS:
https://github.com/skodaconnect/homeassistant-myskoda
.myskoda
from HACS:
myskoda
under the HACS integrations.Following these steps should successfully install the myskoda
integration for use with your Home Assistant setup.
For more guidance on HACS, you can refer to the HACS Getting Started Guide.
For comprehensive debug logging you can add this to your <config dir>/configuration.yaml
:
logger:
default: info
logs:
myskoda: debug
myskoda.mqtt: debug
myskoda.rest_api: debug
custom_components.myskoda: debug
custom_components.myskoda.climate: debug
custom_components.myskoda.lock: debug
custom_components.myskoda.device_tracker: debug
custom_components.myskoda.switch: debug
custom_components.myskoda.binary_sensor: debug
custom_components.myskoda.sensor: debug
custom_components.myskoda.number: debug
custom_components.myskoda.image: debug
Pick any of the subjects from the example. If you want to enable full debugging, you only need myskoda and custom_components.myskoda.
myskoda: Set the debug level for the MySkoda library. This handles all the communication with MySkoda.
myskoda.mqtt: Set the debug level for the MQTT class of the MySkoda library. This handles the push-messages sent from MySkoda to the integration, notifying of changes to/in the car.
myskoda.rest_api: Set the debug level for the REST API of the MySkoda library. This handles all the pull-messages the integration fetches from MySkoda.
custom_components.myskoda: Set debug level for the custom component. The communication between hass and library.
custom_components.myskoda.XYZ Sets debug level for individual entity types in the custom component.
This integration does not poll at a set interval, instead when the last update has been a while, we request new information from MySkoda. The reason for this is that cars emit a lot of events when they are operating, and we use these events to partially update the car information.
When the car is quiet for a period we call the POLLING INTERVAL, we will request a full update of the car.
By default, this POLLING INTERVAL is set to 30 minutes. You can tune this to anything between 1 and 1440 minutes (1 day) by filling in the desired value in Integrations > MySkoda > Hubs > Select your account > Configure
You can disable polling completely and use automations to update the data from MySkoda. In order to do this, disable polling in the integration, and call the following action:
action: homeassistant.update_entity
target:
entity_id: device_tracker.skoda_4ever
For some operations, such as locking and unlocking doors, it is required to fill in the S-PIN that you have set for privileged access to your car via the App. This integration does not support setting the S-PIN yet. Fill in the required S-PIN in Settings > Integrations > MySkoda > Configuration > S-PIN and after a few seconds you will have the options available in HomeAssistant.
The opposite to S-PIN is read-only mode. In this mode, all buttons, switches and other functionality that allows you to change settings remotely are disabled. In order not to accidentally delete data, we do not delete the entities
Also, if you disable read-only mode, the buttons, switches, etc will become available again.
This Homeassistant integration uses an unofficial API client for the Skoda API and is not affiliated with, endorsed by, or associated with Skoda Auto or any of its subsidiaries.
Use this project at your own risk. Skoda Auto may update or modify its API without notice, which could render this integration inoperative or non-compliant. The maintainers of this project are not responsible for any misuse, legal implications, or damages arising from its use.
Ensure compliance with Skoda Auto's terms of service and any applicable laws when using this software.