Files
evcc-bruecke/README.md
T

96 lines
3.1 KiB
Markdown

# evcc-Brücke zum Energie-Cockpit
Meldet die Ladevorgänge einer mit [evcc](https://evcc.io) gesteuerten Wallbox an
das Energie-Cockpit. Dort erscheinen sie danach mit ihrem Sonnenanteil, genauso
wie die Ladungen einer Fronius-Wallbox über deren Cloud-Freigabe.
Gedacht für alle Wallboxen, die evcc steuern kann, also auch für die
Webasto Unite. Die Brücke selbst spricht nie mit der Wallbox, sondern nur mit
evcc.
## Wie es funktioniert
Die Brücke läuft als kleiner Container neben evcc. In festem Takt liest sie die
abgeschlossenen Ladungen aus der Schnittstelle von evcc und schickt sie an das
Cockpit.
Die Verbindung wird immer von innen nach außen aufgebaut. Am Router muss nichts
geöffnet werden, und die evcc-Oberfläche bleibt im Heimnetz.
## Voraussetzungen
- eine laufende evcc-Installation, erreichbar im eigenen Netz
- Docker mit dem Compose-Zusatz
- ein Konto im Energie-Cockpit mit Zugriff auf das Modul "Schnittstelle"
Den Zugangsschlüssel legt man sich dort selbst an, unter
<https://energie.schnee.co.at/module/api>. Er wird nur einmal im Klartext
angezeigt und lässt sich jederzeit widerrufen.
## Einrichten
```bash
git clone https://git.schnee.co.at/SchneeMart/evcc-bruecke.git
cd evcc-bruecke
cp .env.example .env
```
Danach die Datei `.env` öffnen und ausfüllen. Pflicht ist der `TOKEN`, also der
eben angelegte Schlüssel. Bei `EVCC_URL` steht, wo evcc erreichbar ist. Die
`ZIEL_URL` ist bereits eingetragen.
Starten:
```bash
docker compose up -d --build
```
Nachsehen, ob es läuft:
```bash
docker compose logs -f
```
Die erste Meldung nennt die verwendeten Adressen, danach folgt nach jedem
Durchlauf die Zahl der gesendeten Ladungen.
## Einstellungen
| Name | Bedeutung | Vorgabe |
|---|---|---|
| `EVCC_URL` | Adresse der evcc-Installation | `http://evcc:7070` |
| `ZIEL_URL` | Empfangsadresse im Cockpit | Pflichtfeld |
| `TOKEN` | persönlicher Zugangsschlüssel | Pflichtfeld |
| `TAKT_MINUTEN` | Abstand zwischen zwei Läufen | `60` |
| `RUECKBLICK_TAGE` | wie weit zurück jedes Mal gemeldet wird | `30` |
| `LADEPUNKT` | nur dieser Ladepunkt, leer heißt alle | leer |
Der Rückblick wird bei jedem Lauf vollständig gesendet. Das Cockpit erkennt
bekannte Ladungen an ihrer Kennung und legt sie nicht doppelt an. Dadurch
braucht die Brücke keinen eigenen Speicher, und ein Ausfall von ein paar Tagen
holt sich von selbst wieder ein.
## Wenn evcc nicht gefunden wird
Läuft evcc in einem eigenen Compose-Verbund, gehören beide ins selbe Netz.
Dazu in der `docker-compose.yml` den Abschnitt `networks` einkommentieren und
den Netznamen eintragen (`docker network ls` zeigt ihn an).
Läuft evcc ohne Docker direkt auf dem Rechner, ist die feste IP dieses Rechners
in `EVCC_URL` der einfachste Weg.
## Was übertragen wird
Ausschließlich die Ladevorgänge, so wie evcc sie führt: Beginn, Ende,
Ladepunkt, Fahrzeugname, geladene Energie, Zählerstände und der Sonnenanteil.
Keine Zugangsdaten, keine Standortdaten, keine Daten anderer Geräte im Haus.
Gesendet wird an die Adresse, die in der eigenen `.env` steht, und an keine
andere.
## Lizenz und Urheber
MIT, siehe [LICENSE](LICENSE).
Martin Schneeweiss, <https://schnee.co.at>