ODX
# ODX

ODX (Open Diagnostic Data Exchange, ODX-Standard (ASAM MCD-2D)) ist eine formale Beschreibungssprache für die Fahrzeug- oder Steuergerätediagnose, die im Wesentlichen entwickelt wurde, um einen standardisierten Datenaustausch zwischen Automobil-, Steuergeräte- und Toolhersteller zu ermöglichen. Da die heutzutage eingesetzten Diagnosesysteme meist datengetrieben sind, ist ODX sehr oft das grundlegende Format, um das System mit Daten zu befüllen.

## Standardisierung

ODX ist in der internationalen Norm ISO 22901-1 genormt. Diese besteht aus 3 Teilen:

* Part 1: Data model specification
* Part 2: Emissions-related diagnostic data
* Part 3: Fault symptom exchange description (FXD).

## Allgemeines

In nahezu allen modernen PKW und LKW werden heute elektronische Steuerungen verbaut, die mehrere Kilobyte oder gar Megabyte an Software enthalten. Über eine spezielle Datenschnittstelle, die sogenannte Diagnoseschnittstelle, kann ein fahrzeug-externer Werkstatttester an das Netzwerk dieser Steuergeräte angeschlossen werden. Der Tester tauscht mit den Steuergeräten Informationen aus und verwendet dazu botschaften-orientierte Protokolle. Diese Protokolle sind meist standardisiert (KWP2000 nach ISO 14230, UDS nach ISO 14229).

ODX beschreibt nun, wie die Daten, die vom Steuergerät z. B. über das UDS-Protokoll gesendet werden, in von Menschen lesbare Werte umgewandelt werden müssen. Hierbei muss dann das UDS-Protokoll ebenfalls im ODX-Format beschrieben sein.

ODX verwendet für die Beschreibung der Diagnosedaten XML, ein vom W3C standardisiertes Format für strukturierte Informationen.

Zentrale Merkmale des ODX-Standards sind:

* Aufteilung der Bus- und Diagnose-Protokolle in einzelne Dateien, sogenannte Container
* Vererbung der Container-Elemente an den nächstniedrigeren Container (dient u. a. der Vermeidung von Redundanzen)

ODX kann für verschiedenste Diagnoseprotokolle genutzt werden (z. B. KWP2000, UDS), was aber letztendlich von der Protokollimplementierung im Zusammenspiel des MVCI-Kernels und dem verwendeten VCI abhängt.

ODX beschreibt nicht nur die Diagnose-Kommunikation, sondern stellt auch ein Beschreibungsformat für Flashware (ECU-MEM) bereit und verbindet beide Aspekte miteinander (ECU-MEM-CONNECTOR).

ODX wurde von einer Arbeitsgruppe der Association for Standardization of Automation and Measuring Systems (ASAM) entwickelt und im Mai 2004 erstmals publiziert. Die Version 2.1 der ODX-Spezifikation wurde Ende 2006 publiziert; derzeit ist Version 2.2 (18. Mai 2008) freigegeben.

Obwohl ODX standardisiert ist, haben verschiedene Fahrzeughersteller eigene Autorenrichtlinien zur Bedatung von ODX-Containern herausgegeben und schreiben die Einhaltung dieser Richtlinien verbindlich für die Zulieferer vor. Dies liegt daran, dass der Standard weite Spielräume in der Ausgestaltung lässt, die darauf aufbauenden Diagnosesysteme aber eine feste Struktur erwarten. Die Autorenrichtlinien wurden im ASAM e.V. definiert und sind als ASAM MCD-2 D ODX Authoring Guidelines in der Version 1.0.0 verfügbar.

