# Home Assistant

> Install evcc as a Home Assistant app without any command line work and learn where its configuration lives, how updates work and a few advanced tips.

> **Note**
>
> The evcc Home Assistant app is a community integration and is not officially supported by the evcc maintainers.
>
> The reason for this is that important data cannot simply be made available in the event of an error (missing `evcc cli`).

> **Datamigration**
>
> Please note that since February 16, 2025, with version 0.200.1, we have changed the paths in the app to be consistent with the [guidelines](https://developers.home-assistant.io/blog/2023/11/06/public-addon-config/) of Home Assistant.
>
> From now on, the following paths are mapped in the app:
>
> * `/homeassistant/` -> points to `/homeassistant/` or `/config/` in Home Assistant.
> * `/config/` -> points to `/addon_configs/49686a9f_evcc/` in Home Assistant.
>
> If you are updating from an older version, your configuration file will be automatically copied to the new directory. We will only copy the database if it was also located in `/config/`. If you had it in `/data/`, it will remain there. We will append `.migrated` to the old files. These can then be manually deleted by you.

This guide describes the installation of evcc as a Home Assistant app. Unlike the [Linux installation](/en/installation/linux) or [Docker installation](/en/installation/docker), you don’t need command line knowledge here.

## Prerequisites

You need a Home Assistant installation with the app store enabled. Depending on your installation type, this feature might not be available. See [Home Assistant Documentation](https://www.home-assistant.io/installation/#advanced-installation-methods) for more information.

## Installation

* Release

  The current stable version.

  1. Automatically add repository: Click on the following button and then on **Open link**, then on **Add**. [![Open your Home Assistant instance and show the add add-on repository dialog with a specific repository URL pre-filled.](https://my.home-assistant.io/badges/supervisor_add_addon_repository.svg)](https://my.home-assistant.io/redirect/supervisor_add_addon_repository/?repository_url=https%3A%2F%2Fgithub.com%2Fevcc-io%2Fhassio-addon)

  2. Manually add repository:

     1. Click on **Settings** → **Apps** → **Install app**

     2. Click on the **three dots** → **Repositories**

     3. Add the repository URL and click **Add**

        ```plaintext
        https://github.com/evcc-io/hassio-addon
        ```

  3. Reload the webpage

  4. Find the **evcc** app and click on it

  5. Click on the **INSTALL** button

* Nightly

  The current developer version. Updated daily. May be unstable. Although it can be installed alongside the release version, only one version can run at a time. If you use the nightly version, the paths and Docker container names mentioned in this guide will change, i.e., instead of `evcc`, you must use `evcc-nightly`.

  1. Automatically add repository: Click on the following button and then on **Open link**, then on **Add**. [![Open your Home Assistant instance and show the add add-on repository dialog with a specific repository URL pre-filled.](https://my.home-assistant.io/badges/supervisor_add_addon_repository.svg)](https://my.home-assistant.io/redirect/supervisor_add_addon_repository/?repository_url=https%3A%2F%2Fgithub.com%2Fevcc-io%2Fhassio-addon)

  2. Manually add repository:

     1. Click on **Settings** → **Apps** → **Install app**

     2. Click on the **three dots** → **Repositories**

     3. Add the repository URL and click **Add**

        ```plaintext
        https://github.com/evcc-io/hassio-addon
        ```

  3. Reload the webpage

  4. Find the **evcc (nightly)** app and click on it

  5. Click on the **INSTALL** button

## Configuration

evcc can be configured in two ways:

### Web Interface (recommended)

Go to the **Information** tab in the **evcc** app and activate **Show in sidebar** (evcc UI <http://your-ha-instance-ip-address:7070>)

Go to the **Configuration** tab and select your working directory (example):

![Home Assistant app configuration UI](/_astro/ha_configuration_ui.jinlrQpe.webp)

```sh
- sqlite_file: /data/evcc.db
```

Leave the Network section unchanged.

Start the app. Then open the evcc interface via the sidebar:

* You’ll be prompted to set an administrator password
* You can then configure your devices directly via the web interface
* Settings are automatically saved in the database

### Configuration File (traditional)

Alternatively, you can use an `evcc.yaml` configuration file.

Go to the **Configuration** tab and add the configuration file to your working directory:

```sh
- config_file: /config/evcc.yaml
- sqlite_file: /data/evcc.db
```

Create an evcc configuration file `evcc.yaml` in your app root configuration folder (`/addon_configs/49686a9f_evcc`). If this folder does not exist, create it manually.

To create or edit the configuration file, you have several options:

* [Visual Studio Code](https://github.com/hassio-addons/addon-vscode): Select the hamburger menu in the top left and choose “File”, “Open Folder…”, select `/addon_configs/49686a9f_evcc`
* [File Editor](https://github.com/home-assistant/addons/tree/master/configurator): Make sure you have disabled the “Enforce Basepath” option in the app configuration, restart the app and navigate to `/addon_configs/49686a9f_evcc`
* [Advanced SSH & Web Terminal](https://github.com/hassio-addons/addon-ssh): Navigate to `/addon_configs/49686a9f_evcc` and use e.g. nano

See [Configuration](/en/installation/configuration) for details on creating the configuration file.

If you want to see the system running in demo mode, just start evcc with the parameter `--demo`. See [CLI Reference](/en/reference/cli/evcc) for more information.

## Updates

The update to the latest version of evcc is integrated into the Home Assistant update process.

## Advanced Tips

To perform the following functions, you need SSH access to Home Assistant. You can get this, for example, with the above-mentioned SSH app.

* Install [Advanced SSH & Web Terminal](https://github.com/hassio-addons/addon-ssh)
* Disable the “secure mode” in the app configuration
* Restart the app
* Open the app user interface

### How do I access the evcc database?

Show the files in `/data`:

```sh
docker exec addon_49686a9f_evcc ls -la /data
```

Copy the `evcc.db` to `/addon_configs/49686a9f_evcc`:

```sh
docker cp addon_49686a9f_evcc:/data/evcc.db /addon_configs/49686a9f_evcc/
```

### How can I use the evcc CLI?

Open a shell to the evcc Docker container:

```sh
docker exec -it addon_49686a9f_evcc /bin/sh
```

Run evcc CLI commands (here as an example `checkconfig`):

```sh
evcc -c /config/evcc.yaml checkconfig
```

Close the shell in the evcc Docker container if you are done:

```sh
exit
```

### How can I use my external adapter / HAT in the Home Assistant evcc app (Home Assistant OS, Raspberry Pi)?

If your Home Assistant device is close to your meter (solar, battery, grid, …) you can also retrieve the data directly via Modbus (e.g. USB).

To do this, you need to enable external devices for Home Assistant, which also includes the evcc app. To do this, uncomment the line `uart = 1` in the `config.txt` file on the Home Assistant OS boot partition.

**/config.txt**

```ini
uart = 1
```

After a restart, your device should be available to the evcc app (probably as `/dev/ttyS0` or `/dev/ttyUSB`)

## Next Step: Integration

Once your system is running, you can set up the integration between evcc and Home Assistant. Under [Integrations → Home Assistant](/en/smarthome/home-assistant) you’ll find more information. You can visualize evcc data in Home Assistant or create automations based on evcc.