Skip to content

Commit 6a91d48

Browse files
authored
Merge branch 'main' into docs/ui_configuration
2 parents 975c19c + dbfc9f3 commit 6a91d48

File tree

105 files changed

+1580
-5
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

105 files changed

+1580
-5
lines changed
Lines changed: 128 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,128 @@
1+
---
2+
title: "Dein Auto, deine Daten? Unterstützt die Petition für den EU Data Act!"
3+
authors: [naltatis]
4+
tags: [politics]
5+
hide_table_of_contents: false
6+
---
7+
8+
Dein Auto sammelt ständig Daten – aber du hast keinen Zugriff darauf.
9+
Der EU Data Act, seit dem 12. September 2025 in Kraft, soll das ändern.
10+
Die Realität sieht anders aus: Die meisten Autohersteller bieten keinen oder nur sehr eingeschränkten Zugang.
11+
12+
[![Dein Auto, deine Daten?](./eu-data-act-petition.webp)](/blog/2025/12/18/eu-data-act-petition)
13+
14+
{/* truncate */}
15+
16+
## Warum evcc Fahrzeugdaten braucht
17+
18+
evcc optimiert das Laden deines Elektroautos mit PV-Überschuss.
19+
Dafür brauchen wir Echtzeitdaten aus deinem Fahrzeug: Ladestand, Reichweite, Ladezustand.
20+
Aktuell sind wir oft auf reverse-engineerte APIs angewiesen.
21+
Das funktioniert, ist aber keine nachhaltige Lösung.
22+
23+
Offizielle APIs würden ermöglichen:
24+
25+
- **Zuverlässiges Überschussladen** mit aktuellen Batterie- und Ladedaten
26+
- **Besseres Batteriemanagement** durch präzise Steuerung
27+
- **Energiekostenoptimierung** mit dynamischen Tarifen
28+
- **Netzstabilität** durch intelligente Lastverteilung
29+
30+
## Warum das auch dich betrifft
31+
32+
„Bei mir läuft doch alles" – das hören wir oft.
33+
Die Realität dahinter: Die meisten Fahrzeuganbindungen in evcc basieren auf inoffiziellen, undokumentierten APIs.
34+
Entwickler analysieren in ihrer Freizeit, wie die Hersteller-Apps intern kommunizieren, und bauen darauf ihre Integrationen.
35+
36+
Das funktioniert – aber nur so lange, bis der Hersteller etwas an seinen Systemen ändert.
37+
Dann bricht die Integration ohne Vorwarnung zusammen.
38+
Das ist in der Vergangenheit immer wieder passiert und wird auch weiterhin passieren.
39+
40+
Das Problem betrifft nicht nur evcc.
41+
Alle Open-Source-Lösungen wie Home Assistant stehen vor der gleichen Herausforderung.
42+
Solange Hersteller keinen offiziellen Zugang bereitstellen, bleibt es ein ständiges Katz-und-Maus-Spiel mit ungewissem Ausgang.
43+
44+
Mit offiziellen Schnittstellen wäre das anders: dokumentiert, stabil, zuverlässig.
45+
Du könntest dich darauf verlassen, dass deine Integration nicht plötzlich aufhört zu funktionieren.
46+
47+
## Elektromobilität und Energiewende
48+
49+
Offener Datenzugriff ist wichtig für die Energiewende.
50+
Vehicle-to-Grid (V2G) braucht bidirektionalen Datenaustausch.
51+
Smart-Home-Integration funktioniert nur mit Echtzeitdaten.
52+
Optimiertes Laden senkt CO₂-Emissionen und Stromkosten.
53+
54+
## Die Realität: Eingeschränkter Zugang
55+
56+
Der EU Data Act ist Gesetz.
57+
Die Umsetzung durch die Hersteller ist aber noch sehr unterschiedlich.
58+
59+
**BMW** und **Tesla** bieten API-Zugang an.
60+
61+
**Bei vielen anderen sieht es anders aus:**
62+
Einige Hersteller stellen Daten auf Anfrage per E-Mail bereit.
63+
Andere haben Webformulare, bei denen man 15 Minuten alte Daten als ZIP-Datei bekommt.
64+
Das sind keine praktikablen Lösungen für Echtzeitanwendungen wie Smart Charging.
65+
66+
**Daten-APIs existieren bereits:**
67+
Fahrzeugdaten sind bereits in guter Qualität und per API verfügbar.
68+
Allerdings nur für Drittanbieter-Unternehmen, die für den Zugang bezahlen.
69+
Datenzugang ist für Hersteller ein Geschäftsmodell im B2B-Bereich.
70+
Für Fahrzeugbesitzer gibt es diesen direkten Zugriff oft nicht.
71+
72+
In unserer [GitHub-Diskussion](https://github.com/evcc-io/evcc/discussions/23684) sammeln wir den aktuellen Stand pro Hersteller.
73+
74+
## Was sagt die EU?
75+
76+
Die [EU-Kommission hat im September 2025 klare Richtlinien](https://digital-strategy.ec.europa.eu/en/library/guidance-vehicle-data-accompanying-data-act) veröffentlicht:
77+
78+
**Nutzer haben das Recht auf:**
79+
80+
- Roh- und vorverarbeitete Fahrzeugdaten
81+
- Einfachen, kostenlosen Zugriff auf eigene Daten
82+
- Daten in derselben Qualität, wie sie der Hersteller selbst nutzt
83+
- Weitergabe an Dritte ihrer Wahl
84+
85+
**Hersteller müssen:**
86+
87+
- Daten einfach und direkt zugänglich machen
88+
- Ohne zusätzliche Kosten für persönliche Nutzung
89+
- In maschinenlesbarem Format
90+
- Inklusive der Metadaten zur Interpretation
91+
92+
Die rechtliche Grundlage ist vorhanden.
93+
An der praktischen Umsetzung hapert es noch.
94+
95+
## Die Petition
96+
97+
Maximilian Hauser aus der evcc Community hat eine [Petition gestartet](https://www.change.org/p/eu-data-act-durchsetzen-autohersteller-müssen-uns-zugang-zu-unseren-fahrzeugdaten-geben), um die Umsetzung des Data Act voranzutreiben.
98+
99+
**Gefordert wird:**
100+
101+
- Bundesnetzagentur soll den Data Act durchsetzen
102+
- Klare technische Standards für APIs
103+
- REST-API mit OAuth 2.0
104+
- Mindestens 12 Anfragen pro Stunde pro Fahrzeug
105+
- Öffentliche API-Dokumentation
106+
- 99 % monatliche Verfügbarkeit
107+
108+
## Was du jetzt tun kannst
109+
110+
### 1. Petition unterschreiben
111+
112+
👉 **[Hier unterschreiben](https://www.change.org/p/eu-data-act-durchsetzen-autohersteller-müssen-uns-zugang-zu-unseren-fahrzeugdaten-geben)** 👈
113+
114+
### 2. Hersteller kontaktieren
115+
116+
Frag bei deinem Autohersteller nach API-Zugang gemäß EU Data Act.
117+
Verweise auf die EU-Richtlinien.
118+
Je mehr Anfragen eingehen, desto eher bewegt sich etwas.
119+
120+
### 3. Thema weiter tragen
121+
122+
Teile die Petition in deinem Umfeld: Foren, Discord-Server, Facebook-Gruppen, Freundeskreis und Familie.
123+
Gib deinen Lieblings-YouTube-Kanälen, die sich mit E-Mobilität, Smart Home und erneuerbaren Energien beschäftigen, einen Hinweis.
124+
125+
---
126+
127+
Der Data Act ist da.
128+
Die Umsetzung braucht Druck von Nutzerseite.
111 KB
Loading

docs/_sponsortoken.mdx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
```yaml
2-
# trial token, valid until 2025-12-17
3-
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJldmNjLmlvIiwic3ViIjoidHJpYWwiLCJleHAiOjE3NjYwMDUyMDAsImlhdCI6MTc2NTQwMDQwMCwic3BlIjp0cnVlLCJzcmMiOiJtYSJ9.yJgXi8MF9brca18VNitJBm1sJWMs1eGUc_F1sxW9O24
2+
# trial token, valid until 2025-12-24
3+
eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJldmNjLmlvIiwic3ViIjoidHJpYWwiLCJleHAiOjE3NjY1OTkyMDAsImlhdCI6MTc2NTk5NDQwMCwic3BlIjp0cnVlLCJzcmMiOiJtYSJ9.Ls6XxNahmQnolsSCLQuKVzY9uuK_PI9v559oxz5yT-k
44
```

docs/devices/plugins.mdx

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@ Zusätzlich können Plugins auch für die in [Messaging](/docs/reference/configu
3030
- [JavaScript Plugin](#javascript) - Plugin, das Werte in über ein JavaScript Skript bereitstellt oder entgegennimmt.
3131
- [Shell Plugin](#shell) - Plugin, das ein Shell Skript ausführen kann, um Daten zu extrahieren oder schreibend entgegennimmt.
3232
- [Prometheus Plugin](#prometheus) - Plugin zum Lesen von Metriken aus Prometheus über PromQL.
33+
- [GPIO Plugin](#gpio) - Plugin zum direkten Zugriff auf GPIO-Pins (nur Linux).
3334

3435
### Helpers
3536

@@ -736,6 +737,46 @@ energy:
736737
Die Abfrage muss einen einzelnen numerischen Wert zurückgeben.
737738
Bei Vektor-Ergebnissen muss genau eine Metrik enthalten sein.
738739

740+
### GPIO <Tag label="lesen" category="read" /> <Tag label="schreiben" category="write" /> {#gpio}
741+
742+
Das `gpio` Plugin ermöglicht den direkten Zugriff auf GPIO-Pins (General Purpose Input/Output) unter Linux.
743+
Es ist besonders für Raspberry Pi und ähnliche Einplatinencomputer geeignet.
744+
745+
**Parameter**:
746+
747+
| Parameter | Typ | Erfordert | Beschreibung |
748+
| --------- | ------ | --------- | ---------------------------------------------- |
749+
| function | string | ja | Modus: `read` (Eingang) oder `write` (Ausgang) |
750+
| pin | int | ja | Pin-Nummer (BCM-Nummerierung, z. B. GPIO 17) |
751+
752+
**Funktionsweise**:
753+
754+
- **Lesen** (`function: read`): Liest den Zustand eines GPIO-Pins als Boolean-Wert (`true` = HIGH, `false` = LOW)
755+
- **Schreiben** (`function: write`): Setzt einen GPIO-Pin auf HIGH (`true`) oder LOW (`false`)
756+
757+
Die Pin-Nummerierung folgt dem BCM-Schema (Broadcom-Nummern, nicht die physische Pin-Position).
758+
Für ein Raspberry Pi Pinout siehe z. B. [pinout.xyz](https://pinout.xyz/).
759+
760+
**Beispiel Lesen**:
761+
762+
```yaml
763+
source: gpio
764+
function: read
765+
pin: 17 # BCM pin number
766+
```
767+
768+
**Beispiel Schreiben**:
769+
770+
```yaml
771+
source: gpio
772+
function: write
773+
pin: 27 # BCM pin number
774+
```
775+
776+
:::note
777+
Dieses Plugin funktioniert nur auf Linux-Systemen mit Zugriff auf `/dev/gpiomem`.
778+
:::
779+
739780
## Helpers
740781

741782
### Const <Tag label="lesen" category="read" /> {#const}

docs/reference/configuration/influx.md

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,24 @@ influx:
3838
org: home
3939
```
4040
41+
---
42+
43+
## HTTPS mit selbst-signiertem Zertifikat
44+
45+
Bei Verwendung von HTTPS (`https://`) wird standardmäßig das TLS-Zertifikat überprüft.
46+
Falls ein selbst-signiertes Zertifikat verwendet wird, kann die Zertifikatsüberprüfung deaktiviert werden:
47+
48+
**Beispiel**:
49+
50+
```yaml
51+
influx:
52+
url: https://influxdb.example.com:8086
53+
database: evcc
54+
token: 1234567890abcdef
55+
org: home
56+
insecure: true
57+
```
58+
4159
## VictoriaMetrics
4260

4361
[VictoriaMetrix](https://github.com/VictoriaMetrics/VictoriaMetrics) ist eine Time Series Datenbank mit InfluxDB kompatibler REST API.

docs/reference/configuration/mqtt.md

Lines changed: 67 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ mqtt:
2828

2929
## MQTT mit TLS-Verschlüsselung
3030

31-
Beispiel:
31+
**Beispiel**:
3232

3333
```yaml
3434
# mqtt message broker
@@ -40,6 +40,12 @@ mqtt:
4040
# password:
4141
```
4242

43+
Bei Verwendung von TLS-Verschlüsselung (`tls://`) wird standardmäßig das TLS-Zertifikat des Brokers überprüft.
44+
Falls ein selbst-signiertes Zertifikat verwendet wird, gibt es zwei Möglichkeiten:
45+
46+
1. Das Zertifikat systemweit installieren (z. B. unter Linux in `/etc/ssl/certs`), damit evcc es automatisch verwendet
47+
2. Die Zertifikatsüberprüfung mit `insecure: true` deaktivieren (siehe unten)
48+
4349
---
4450

4551
## Erforderliche Parameter
@@ -67,4 +73,63 @@ Das Anmeldepasswort am MQTT-Broker.
6773

6874
### `clientid`
6975

70-
Erlaubt eine feste MQTT-Client ID vorzugegeben. Andernfalls wird diese dynamisch vergeben.
76+
Erlaubt eine feste MQTT-Client ID vorzugegeben.
77+
Andernfalls wird diese dynamisch vergeben.
78+
79+
### `insecure`
80+
81+
Deaktiviert die TLS-Zertifikatsüberprüfung bei Verwendung von `tls://`.
82+
83+
**Beispiel**:
84+
85+
```yaml
86+
mqtt:
87+
broker: tls://broker.example.com:8883
88+
topic: evcc
89+
insecure: true
90+
```
91+
92+
### `caCert`
93+
94+
CA-Zertifikat für die Überprüfung des Broker-Zertifikats (Zertifikatsinhalt).
95+
96+
**Beispiel**:
97+
98+
```yaml
99+
mqtt:
100+
broker: tls://broker.example.com:8883
101+
topic: evcc
102+
caCert: |
103+
-----BEGIN CERTIFICATE-----
104+
MIIDXTCCAkWgAwIBAgIJAKZm...
105+
...
106+
-----END CERTIFICATE-----
107+
```
108+
109+
### `clientCert`
110+
111+
Client-Zertifikat für gegenseitige TLS-Authentifizierung (Zertifikatsinhalt).
112+
Muss zusammen mit `clientKey` verwendet werden.
113+
114+
**Beispiel**:
115+
116+
```yaml
117+
mqtt:
118+
broker: tls://broker.example.com:8883
119+
topic: evcc
120+
clientCert: |
121+
-----BEGIN CERTIFICATE-----
122+
MIIDXTCCAkWgAwIBAgIJAKZm...
123+
...
124+
-----END CERTIFICATE-----
125+
clientKey: |
126+
-----BEGIN PRIVATE KEY-----
127+
MIIEvQIBADANBgkqhkiG9w0B...
128+
...
129+
-----END PRIVATE KEY-----
130+
```
131+
132+
### `clientKey`
133+
134+
Privater Schlüssel des Client-Zertifikats (Schlüsselinhalt).
135+
Muss zusammen mit `clientCert` verwendet werden.

0 commit comments

Comments
 (0)