BMW OBD: DS2, ENET & E-Sys – Herstellerprotokolle erklärt
On-Board-Diagnose bei BMW: Standard und herstellerspezifische Erweiterungen
Der internationale OBD2-Standard (ISO 15031 / SAE J1979) verpflichtet Fahrzeughersteller seit 2001 (EU-Benziner) bzw. 2004 (EU-Diesel), emissionsrelevante Fehlercodes über eine einheitliche 16-polige Diagnosebuchse (SAE J1962) zugänglich zu machen. Bei BMW – wie bei nahezu allen Fahrzeugherstellern – deckt dieser Standard jedoch nur einen kleinen Teil der tatsächlichen Fahrzeugelektronik ab. Die BMW-Herstellerprotokolle DS2, EDDP und DoIP gehen weit darüber hinaus und ermöglichen den vollständigen Zugriff auf alle Steuergeräte des Fahrzeugs.
Herstellerspezifische Protokolle bei BMW
BMW setzt je nach Fahrzeuggeneration unterschiedliche Kommunikationsprotokolle ein:
DS2 (Diagnostic System 2) — E-Serie bis ca. 2007
Das proprietäre BMW-Protokoll DS2 basiert auf der ISO 9141-Norm und wurde für die E-Serie (z.B. E36, E46, E39, E60, E90) verwendet. Es erlaubt die Kommunikation mit nahezu allen Steuergeräten des Fahrzeugs — weit über den OBD2-Umfang hinaus. Für DS2 wird ein spezielles K+DCAN-Kabel (auch KDCAN-Kabel) benötigt, das den USB-Anschluss des Computers mit dem OBD-Port des Fahrzeugs verbindet.
Typische DS2-fähige Steuergeräte:
- DME (Digitale Motor-Elektronik)
- EGS (Elektronische Getriebesteuerung)
- FRM (Footraummodul / Footwell Module)
- CAS (Car Access System / Wegfahrsperre)
- Kombiinstrument / IKE
EDDP (Enhanced Diagnostic Data Protocol) — F-Serie ab ca. 2010
Ab der BMW F-Serie wurde das Fahrzeugnetzwerk auf ENET (Ethernet) umgestellt. Die Kommunikation erfolgt über das proprietäre EDDP-Protokoll, das auf UDS (Unified Diagnostic Services, ISO 14229) basiert, aber herstellerspezifische Erweiterungen enthält.
Für ENET-Kommunikation wird ein ENET-Kabel benötigt: ein Ethernet-Adapter, der den OBD2-Port des Fahrzeugs mit dem LAN-Anschluss eines Computers verbindet. Die Übertragungsrate ist deutlich höher als bei DS2, was schnellere Software-Updates (sogenannte Flash-Programmierung) ermöglicht.
UDS / DoIP — G-Serie ab ca. 2016
Die G-Serie (z.B. G20, G30, G01) nutzt DoIP (Diagnostics over Internet Protocol) gemäß ISO 13400. Die physikalische Verbindung erfolgt weiterhin über das ENET-Kabel. DoIP ermöglicht prinzipiell auch drahtlose Diagnose über das fahrzeugeigene Mobilfunkmodul (ConnectedDrive), wird bei der privaten Codierung jedoch üblicherweise kabelgebunden eingesetzt.
Herstellerspezifische Diagnosesoftware
E-Sys
E-Sys (Engineering System) ist die von BMW intern entwickelte Programmier- und Codiersoftware für F- und G-Serie Fahrzeuge. Sie wird von BMW-Entwicklern und autorisierten Betrieben eingesetzt und ist technisch auf das ENET-Protokoll ausgelegt.
Funktionsumfang von E-Sys:
- Codierung: Änderung von Steuergeräteparametern (sog. „Coding Jobs”), z.B. Aktivierung werkseitig deaktivierter Komfortfunktionen
- Programmierung: Aufspielen von Software-Updates auf einzelne Steuergeräte (Flash-Programmierung)
- Diagnose: Auslesen und Löschen von Fehlerspeichern aller Steuergeräte
- Identifikation: Auslesen von Fahrzeugausstattung, Softwareständen und VIN
Die Parameterstruktur in E-Sys ist in sogenannten CAFD-Dateien (Coding Application Function Data) hinterlegt. Diese enthalten für jedes Steuergerät die verfügbaren Codieroptionen als Name-Wert-Paare (z.B. carplay_activation: aktiv/nicht_aktiv).
ISTA (Integrated Service Technical Application)
ISTA ist das offizielle BMW-Werkstattsystem und umfasst zwei Teilbereiche:
- ISTA-D (früher Rheingold): Geführte Fehlerdiagnose, Messwerteauswertung, Reparaturanleitungen
- ISTA-P (früher Progman): Software-Programmierung und Updates für ältere Fahrzeuggenerationen (E-Serie)
ISTA kommuniziert über den standardisierten ICOM-Adapter (Interface Communication Module) oder über VCI (Vehicle Communication Interface). Es greift auf eine lokale Datenbank mit Fahrzeugdaten, Fehlercodes und Reparaturschritten zu.
BimmerCode / Carly
Neben professionellen Tools existieren für Endverbraucher App-basierte Lösungen wie BimmerCode oder Carly. Diese nutzen ebenfalls die ENET- oder OBD2-Schnittstelle, bieten jedoch nur einen eingeschränkten Zugriff auf vorab definierte Codieroptionen. Tiefgreifende Eingriffe wie Steuergeräte-Programmierung sind damit nicht möglich.
Fahrzeugcodierung als OBD-Anwendung
Fahrzeugcodierung bezeichnet die gezielte Änderung von Steuergeräteparametern ohne physischen Hardwareeingriff. Bei BMW ist dies über die OBD2-Buchse in Verbindung mit den herstellerspezifischen Protokollen möglich.
Technischer Ablauf einer BMW-Codierung:
- Verbindung zwischen Laptop und Fahrzeug via ENET-Kabel (F/G-Serie) oder K+DCAN-Kabel (E-Serie)
- Fahrzeugidentifikation über VIN und Abrufen des aktuellen Codierdatenstands
- Änderung der gewünschten Parameter in der CAFD-Datei
- Übertragung des geänderten Codierblocks auf das Zielsteuergerät
Vor jeder Codierung sollte ein Backup des aktuellen Codierstands (sog. NBT-Backup oder CAFD-Backup) erstellt werden, um den Originalzustand wiederherstellen zu können.
Häufig codierte Funktionen bei BMW (Auswahl):
- Aktivierung von Apple CarPlay / Android Auto (bei Fahrzeugen mit entsprechender Hardware)
- Deaktivierung der automatischen Start-Stopp-Funktion
- Anpassung der Ambientebeleuchtung
- Aktivierung des digitalen Tachometers im Head-Up-Display
- Automatisches Einklappen der Außenspiegel beim Verriegeln
Footraummodul (FRM)
Das Footraummodul (FRM, engl. Footwell Module) ist ein zentrales Steuergerät der BMW E- und frühen F-Serie. Es steuert unter anderem:
- Innen- und Außenbeleuchtung (Scheinwerfer, Blinker, Positionslichter)
- Fensterheber
- Zentralverriegelung
- Außenspiegel
Das FRM kommuniziert über den K-Bus bzw. LIN-Bus mit anderen Steuergeräten und ist über DS2 (E-Serie) oder UDS (F-Serie) diagnose- und programmierfähig.
Ein bekanntes Problem älterer FRM-Einheiten ist der Datenverlust durch Spannungsabfall (z.B. bei leerem Akku). Dabei kann die Firmware des Moduls beschädigt werden, was zum Ausfall der angesteuerten Funktionen führt. Die Wiederherstellung erfolgt durch Neuprogrammierung (Flash) des FRM über die Diagnoseschnittstelle.
Remote-Diagnose und Remote-Codierung
Remote-Diagnose bezeichnet die Fernwartung eines Fahrzeugs über das Internet. Der technische Ablauf:
- Der Fahrzeugbesitzer verbindet seinen Laptop via ENET-Kabel mit dem OBD2-Port des Fahrzeugs
- Eine Fernzugriffsoftware (z.B. TeamViewer, AnyDesk) gibt einem Spezialisten Zugriff auf den Laptop
- Der Spezialist führt Diagnose oder Codierung durch, als wäre er direkt vor Ort
Remote-Diagnose setzt voraus, dass das Fahrzeug währenddessen an einer Spannungsversorgung (laufender Motor oder Ladegerät) hängt, um Spannungsabfälle während der Kommunikation zu vermeiden. Ein Spannungsabfall während eines Flash-Vorgangs kann zu einem nicht mehr startfähigen Steuergerät führen.
Die Remote-Methode ist technisch äquivalent zur lokalen Diagnose — die einzige Differenz liegt in der räumlichen Trennung zwischen Fahrzeug und Spezialist.
Abgrenzung: OBD2-Standard vs. BMW Herstellerprotokolle
| Merkmal | OBD2-Standard | BMW herstellerspezifisch |
|---|---|---|
| Protokoll | ISO 15031, SAE J1979 | DS2, EDDP, UDS/DoIP |
| Kabel | Universeller ELM327-Adapter | K+DCAN-Kabel (E-Serie), ENET-Kabel (F/G-Serie) |
| Steuergeräte | Motornahe, emissionsrelevant | Alle Steuergeräte (FRM, CAS, Kombi, etc.) |
| Fehlercodes | Standardisierte DTCs (P0xxx) | Herstellerspezifische DTCs + erweiterte Daten |
| Codierung | Nicht vorgesehen | Vollständiger Zugriff auf Codierparameter |
| Software | Jede OBD2-App | E-Sys, ISTA, BimmerCode (eingeschränkt) |
Quellen und weiterführende Informationen
- ISO 15031: Road vehicles — Communication between vehicle and external test equipment for emissions-related diagnostics
- SAE J1979: E/E Diagnostic Test Modes
- ISO 14229: Unified Diagnostic Services (UDS)
- ISO 13400: Diagnostic Communication over Internet Protocol (DoIP)
- BMW AG: ISTA Dokumentation (intern, nicht öffentlich)