feat: Brücke von evcc zum Energie-Cockpit
This commit is contained in:
@@ -0,0 +1,95 @@
|
||||
# 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>
|
||||
Reference in New Issue
Block a user