Magic Mirror Module to display data from MySkoda for your car(s).
The module displays the model name, license plate, mileage, fuel range, and car image renders. It also shows the time the MySkoda API last received data from the car.
If you own several Skoda cars, you can configure a module for each of them. The module configuration requires the vin number of the car to separate multiple module instances.
The module is based on MySkoda Python library myskoda which is used to query the MySkoda API.
A working python 3 distribution with pip is required before the installation. More specifically, Python <4.0, >=3.12.0. If you are not on the needed version of python (python --version), you need to install a higher version of Python. I did do it by following this article Python-RaspberryPi, with an exception, that I did dowload Python 3.13.0, but mentioned Python 3.12.3 could work too. Then, I've had issues with using the system Python for the npm install, so I had to create a Python Virtual Environment. I did do it by following those commands:
python3 -m pip install --upgrade pip
pip3 install virtualenv
pip3 install --upgrade setuptools
which python3
Then I went to the MagicMirror folder and followed by calling those commands by using the outcome of the "which python" in the following virtualenv command for the python3 filepath
virtualenv -p /usr/bin/python3 venv
source venv/bin/activate
Once done, I was able to successfully finish the installation.
Clone this repository in your modules folder, and install dependencies:
cd ~/MagicMirror/modules
git clone https://github.com/OPlevka/MMM-MySkoda
cd MMM-MySkoda
npm install
Should the installation fail on the missing Rust, follow the official Rust-Installation and don't forget to restart the console.
Go to the MagicMirror/config directory and edit the config.js file. Add the module to your modules array in your config.js.
You'll need your MySkoda email and password, and your car's VIN number.
Enter these details in the config.js for your MagicMirror installation:
{
module: "MMM-MySkoda",
position: "top_right",
config: {
email: "email@example.com",
password: "myComplexPassword",
vin: "XXXXXXXXXXXXXXXXX",
mapEnabled: true,
mapZoom: 14
}
},
If you run the MagicMirror manually, don't forget to run the Python venv activation command before you run the 'npm run start' command by running the following command in its respective folder (in my case the MagicMirror folder): source venv/bin/activate
If you run the MagicMirror through the PM2 auto start, locate the mm.sh and add the Python venv activation in the mm.sh like mentioned here. In my case the mm.sh looks like this cd ./MagicMirror source venv/bin/activate DISPLAY=:0 npm start
The module includes an optional map display showing your car's current GPS location. The map uses the CartoDB Dark Matter basemap and displays a marker in Škoda green (#0E3A2F) to match the brand identity.
mapEnabled(boolean, default:true): Enable or disable the map display. When set tofalse, the map section will not be rendered.mapZoom(number, default:14): Set the zoom level for the map. Higher values zoom in closer, lower values zoom out.
- Basemap: CartoDB Dark Matter - a dark-themed map that works well with MagicMirror displays
- Marker Color: Škoda green (#0E3A2F) - the official Škoda brand color
- Interactions: All user interactions are disabled (no zoom, dragging, or scrolling) to prevent accidental map manipulation
- Automatic Updates: The map automatically updates when new GPS coordinates are received from your car
The map will only display if GPS coordinates are available in the car data and mapEnabled is set to true.
2025-12-04 Redesign, alerts and map added 2024-12-03 Python venv guide 2024-12-01 First version
Thanks MM-MyBMW for inspiration
