# BMW CarData SoC-Modul – Einrichtung in openWB
## Voraussetzungen
- openWB 2.2.0 oder neuer
- BMW Fahrzeug mit CarData-Zugang
- BMW CarData Client ID (siehe unten)
---
## Schritt 1 – BMW CarData Zugang beantragen
1. Gehe auf
https://www.bmw.de→ **Mein BMW** → **Fahrzeugdaten** → **BMW CarData**
2. Klicke auf **"Zugang zur CarData API beantragen"**
3. Nach der Freischaltung erhältst du eine **Client ID** (sieht so aus: `a9480223-e99a-4c23-beec-234b3db9b9a0`)
---
## Schritt 2 – BMW CarData Stream aktivieren
1. Gehe auf
https://www.bmw.de→ **Mein BMW** → **Fahrzeugdaten** → **BMW CarData**
2. Klicke auf **"Datenauswahl ändern"**
3. Aktiviere mindestens diese Datenpunkte:
- `vehicle.drivetrain.electricEngine.charging.level`
- `vehicle.drivetrain.batteryManagement.header`
- `vehicle.drivetrain.electricEngine.remainingElectricRange`
- `vehicle.drivetrain.electricEngine.charging.status`
- `vehicle.vehicle.travelledDistance`
4. Klicke auf **"Speichern"**

Nach der Aktivierung kann es einige Minuten dauern bis der Container verfügbar ist.
---
## Schritt 3 – Fahrzeug in openWB anlegen
1. Öffne die openWB Oberfläche
2. Gehe zu **Einstellungen → Fahrzeuge**
3. Klicke auf **"Fahrzeug hinzufügen"**
4. Wähle als SoC-Modul **"BMW CarData"**
5. Trage ein:
- **Client ID**: deine BMW CarData Client ID
- **VIN**: deine Fahrzeug-Identifikationsnummer (17 Zeichen, steht im Fahrzeugschein unter Feld E)
6. Klicke auf **"Speichern"**
---
## Schritt 4 – BMW koppeln
1. Klicke auf **"BMW koppeln"**
2. Es erscheint ein Link und ein Code
3. Öffne den Link im Browser und melde dich mit deinem BMW-Konto an
4. Bestätige die Kopplung mit dem angezeigten Code
5. Nach erfolgreicher Kopplung erscheint **"BMW verbunden"**
6. Klicke nochmals auf **"Speichern"** um die Tokens dauerhaft zu sichern
---
## Schritt 5 – Abfrageintervall einstellen
Die BMW CarData API erlaubt maximal **50 Abfragen pro Tag**.
Empfohlene Einstellungen unter **Einstellungen → Fahrzeuge → Abfrageintervall**:
- **Während Ladung**: 1800 Sekunden (30 Minuten)
- **Ohne Ladung**: 43200 Sekunden (720 Minuten)
---
## Mehrere BMW Fahrzeuge (erst mit dem nächsten Bugfix möglich)
Bei zwei Fahrzeugen auf demselben BMW-Account (gleiche Client ID):
- **Fahrzeug 1**: normal einrichten und koppeln (Schritte 3-4)
- **Fahrzeug 2**: Client ID und VIN eintragen – **nicht** koppeln!
Fahrzeug 2 erhält die Tokens automatisch beim nächsten Token-Refresh von Fahrzeug 1 (ca. 1 Stunde nach der Kopplung).
---
## Häufige Probleme
**"Keine Tokens gefunden"**
→ Kopplung noch nicht durchgeführt oder Token abgelaufen. Schritt 4 wiederholen.
**"Tageslimit erreicht (CU-429)"**
→ 50 API-Calls pro Tag verbraucht. Morgen wird das Limit automatisch zurückgesetzt.
**SoC aktualisiert sich nicht**
→ Prüfe ob der BMW CarData Stream aktiviert ist (Schritt 2). Container müssen neu erstellt werden wenn Datenpunkte nachträglich hinzugefügt wurden.
**Kilometerstand fehlt**
→ Das Modul legt automatisch einen neuen Container an. Falls der Kilometerstand immer noch fehlt: Im BMW CarData Portal alle Container löschen und openWB neu starten.