Software Entwicklung

Was für VAG-COM gilt, gilt auch für BMW. Es gibt keine frei zugängliche Informationen. Im Netz gibt es ein paar “Aufhänger” an denen man sich orientieren kann aber kein fertiges Konzept.

Auch mir ist die Anschaffung eines GT1 zu teuer, da es mein Budget gewaltig sprengen würde. Deshalb ist man auf andere Systeme angewiesen die frei erhältlich sind. Leider ist der Funktionsumfang nicht gerade umwerfend, so das man noch auf andere Software-Tools zurückgreifen muß um diverse Steuergeräte zu erforschen. Hierzu sind Terminalprogramme erforderlich, die Benutzerdefinierte Telegramme an die Steuergeräte senden kann.

Terminal 1.9 von Bra@y++

Terminal02

Um die Entwicklungsarbeit testen zu können, könnte man sich tagelang (...oder länger) ins Auto setzen, oder man baut sich aus vielen Steuergeräten ein komplettes Fahrzeugnetzwerk auf.

Steuergeräte02

Eine gute Alternative wären sogenannte Software-Emulatoren, die die Funktion aller Steuergeräte simulieren. Diese sind allerdings recht teuer und fallen somit für mich auch flach.

Angriffe auf die Steuergeräte

Über eine Y-Verbindung und einem zusätzlichen PC, kann man mit dem Terminalprogramm die Daten die zwischen Steuergerät und Tester aufzeichnen und zur spätern Analyse speichern. Nachdem man sich mit dem Protokoll auseinander gesetzt hat und dies verstanden hat, kann man sich die einzelnen Befehle heraussuchen und versuchen diese an andere Steuergeräte zu übertragen. Meistens geht es gut, und das Steuergerät antwortet im schlimmsten Fall mit “B0” für “damit kann ich nicht’s anfangen”. Ich hatte allerdings auch den Fall, das die Steuergeräte ihre Dienste aufgaben!!! Dann muß ein Neues her..... :(

 

Die Problematiken

Wenn man viele verschiedene Steuergeräte analysiert hat, stellt man fest, das alle Informationen, die man aus dem Steuergerät ziehen kann variieren. Oft lassen sich Informationen wie die Fahrgestellnummer oder die Teilenummer im Klartext auslesen. Hier können die Daten im Diagnoseprojekt direkt angezeigt werden.

44 10 A0 86 90 56 67 03 81 81 07 04 02 06 08 DF         ---- Teilenummer 6905667

Anders sieht es allerdings bei der Wegfahrsperre EWS aus. Sobald ich die EWS nach der Fahrgestellnummer frage, erhalte ich folgende Antwort:

44 15 A0 01 20 2C A2 D7 04 10 05 01 37 C5 10 92 xx xx FF FF     ---- Hier steht die Fahrgestellnummer!!!

Nun muß man von diese Zahlenfolge nach einem Algorithmus ins leserliche übersetzen.

                   WBABN11050JV54xxx

Hier muß man schon, wenn es einem keiner verrät, schon lange grübeln um an die Lösung zu kommen.

 

FAZIT

Wie man merkt, man kann unmöglich “mal eben” ein Diagnosetool schreiben, da man immer wieder auf Probleme stösst, mit den man im Vorfeld nicht gerechnet hatte. Ebenso stecken viele Algorithmen versteckt im Steuergerät, die erst einmal entschlüsselt wollen. Ebenso muß die Hardware so gutmütig sein, das sie die ständigen Angriffe unbeschadet überlebt.

Auch muß man abschließend noch sagen, selbst wenn man viele Steuergeräte positiv getestet hat muß noch lange nicht alles auf ein anderes Fahrzeug übertragbar sein.

 

Es gibt viel zu tun.....