Skip to content
EN | DE

Linux

This guide describes installation for apt-based Linux distributions like Debian and Ubuntu.

  1. Open a terminal and install the required dependencies:

    Terminal window
    sudo apt install -y debian-keyring debian-archive-keyring apt-transport-https curl

    Add the evcc APT repository:

    Current stable release

    Terminal window
    curl -1sLf 'https://dl.evcc.io/public/evcc/stable/setup.deb.sh' | sudo -E bash

    Update the package list and install evcc:

    Terminal window
    sudo apt update
    sudo apt install -y evcc
  2. Terminal window
    sudo systemctl start evcc
  3. Open the evcc web interface in your browser: http://localhost:7070. Set an administrator password and configure your devices directly via the web interface.

Hosted By: Cloudsmith

Thanks to Cloudsmith for hosting the repository!

evcc can be configured via the web interface or a configuration file.

After first start, you can configure evcc directly in the browser at http://localhost:7070. The settings are automatically saved in the database.

Alternatively, you can use an evcc.yaml configuration file. See Configuration for details on creating the configuration file.

  • Create the configuration file according to the guide and save it at /etc/evcc.yaml

  • Restart the evcc server:

    Terminal window
    sudo systemctl restart evcc
  • Access the evcc interface at http://localhost:7070

To update to the latest version of evcc, follow this guide:

  • Check the releases for breaking changes (BC) for your installation

  • Open a terminal

  • Update the package list:

    Terminal window
    sudo apt update
  • Upgrade evcc:

    Terminal window
    sudo apt --only-upgrade install -y evcc

If you need to go backwards for any reason, you can do so with this command:

Terminal window
sudo apt install evcc=x.xxx.x # Version Number

evcc runs as a background system service. Here’s some useful commands to control it:

Terminal window
sudo systemctl status evcc # shows status
sudo systemctl start evcc # start the service, if it isn't already running
sudo systemctl stop evcc # stops the service
sudo systemctl restart evcc # restart the service
sudo systemctl enable evcc # sets the service to run at boot
sudo systemctl disable evcc # stops the service running at boot

Check the installation

  • Show the running evcc service:

    Terminal window
    sudo systemctl status evcc
  • Check the latest log entries of the evcc service:

    Terminal window
    sudo journalctl -u evcc --since "yesterday"
  • Validate the meter configuration:

    Terminal window
    sudo evcc -l debug meter
  • Validate the charger configuration:

    Terminal window
    sudo evcc -l debug charger
  • Validate the vehicle configuration:

    Terminal window
    sudo evcc -l debug vehicle

Open a browser and enter the following URL: http://127.0.0.1:7070.

The easiest method is to backup via the web interface. See Configuration → Backup & Restore for details.

To restore the “original state” after a reinstallation, it is sufficient to back up the configuration file evcc.yaml (if used) and the database file evcc.db. The storage location is specified in the log file at program start. Typically, the configuration is located under /etc/evcc.yaml and the database under /var/lib/evcc/evcc.db.

Both files can be copied using the Linux command cp.

Example (copying from the usual storage location to the home directory):

Copy yaml: sudo cp /etc/evcc.yaml /home/pi/evcc.yaml.bak

Copy db: sudo cp /var/lib/evcc/evcc.db /home/pi/evcc.db.bak

When installed via APT, evcc runs as a systemd service. You can customize the behavior using an override file:

Terminal window
sudo systemctl edit evcc
/etc/systemd/system/evcc.service.d/override.conf
[Service]
Environment="EVCC_LOG=debug,tariff:trace"
Environment="EVCC_DATABASE_DSN=/usb/evcc/evcc.db"
Environment="EVCC_NETWORK_HOST=my-evcc.local"
Environment="EVCC_NETWORK_PORT=80"
ExecStart=
ExecStart=/usr/bin/evcc --custom-css /path/to/my.css

In addition to the Debian/Ubuntu APT package, we also provide other binaries for Linux.

  • Download the appropriate file for your system:

  • Extract the downloaded file (e.g., by double-clicking).

  • The extracted folder contains an evcc program.

  • Open a terminal and navigate to the new folder.

  • Check if evcc works with this command:

    ./evcc -v
  • You should see the current version of evcc (e.g., evcc version 0.xxx.y).

You can configure evcc via the web interface or a configuration file. See Configuration for details.

Start evcc with:

Terminal window
./evcc

Then open your browser at http://localhost:7070 and follow the instructions.

Follow the steps above and replace the evcc program file with the new or previous version. The configuration does not need to be redone.

For production use, you’ll want to set up evcc as a system service. This ensures evcc starts when the computer boots and automatically restarts in case of errors.

  • Run the following command to create and open an editor with a new file for the service:

    Terminal window
    sudo nano /etc/systemd/system/evcc.service
  • Copy the following content into the file:

    [Unit]
    Description=evcc
    Requires=network-online.target
    After=syslog.target network.target network-online.target
    Wants=network-online.target
    StartLimitIntervalSec=10
    StartLimitBurst=10
    [Service]
    ExecStart=/usr/local/bin/evcc
    Restart=always
    RestartSec=5
    [Install]
    WantedBy=multi-user.target

    Adjust the path of the evcc file in ExecStart if the file is located in a different directory. This also assumes that the configuration file evcc.yaml can be found at /etc/evcc.yaml. If this is not the case, add the text -c /yourpath/evcc.yaml at the end of ExecStart. Replace yourpath with the appropriate directory.

  • Test the service:

    Terminal window
    sudo systemctl daemon-reload
    sudo systemctl start evcc
    sudo systemctl status evcc

    On success, the output should contain: Active: active (running).

  • Configure the service to start automatically at system boot:

    Terminal window
    sudo systemctl enable evcc.service

For more information, see the System Service section above.