Menü
Make

Macchina M2: Hardware zum Car-Hacking auf Kickstarter

Mit dem OBD-Dongle M2 soll eine Hardwareplattform für die Fahrzeugdiagnose und das Hacking von Diagnose- und Fahrzeugparametern enstehen. Die Initiatoren suchen über ein Crowdfunding nach Unterstützung.

vorlesen Drucken Kommentare lesen 91 Beiträge
Car-Hacking Hardware Macchina M2 bei Kickstarter

(Bild: Macchina)

Daten vom eigenen Auto auslesen und zurück senden - mit der Hardware-Plattform vom Macchina M2 soll das insbesondere für Arduino-Fans möglich werden. Wer die richtigen Befehle kennt, kann dadurch erfahren, welche Fehler von der Bordelektronik (Motorsteuergerät/ECU, engine control unit) oder anderen Komponenten erkannt wurden. Ebenso ist das gezielte Umprogrammieren von Funktionen möglich und teilweise können neue Features wie Abbiegelicht, Coming-Home-Licht, Auto-Close aktiviert werden.

Für die Realisierung suchen die Initiatoren bei Kickstarter nach Unterstützern, die das Projekt mit 25.000 US-Dollar bis zum 23. März 2017 finanzieren. Kurz nach dem Start der Kampagne sind bereits über 15.000 Dollar zusammengekommen.

79 US-Dollar sollte man mindestens investieren, wenn man eine sinnvolle Hardware wünscht.

(Bild: Macchina )

Die nicht für LKW geeignete Hardwarebasis bildet eine Interfaceplatine, die es in zwei Versionen gibt: einmal mit einem OBD-2-Stecker nach SAE J1850 Typ A (12 V PKW). Dieser wird dann in die Diagnosebuchse gesteckt, die sich im Fahrgastraum befindet. Aufgrund der Größe des Adapters sollte hier vorab geprüft werden, ob er nicht bei der Fahrt behindert. Die andere Variante besteht aus einem Board, das über einen Kabelblock mit den passenden Leitungen im Fahrzeug verbunden und so an jeder beliebigen Stelle platziert werden kann.

Basisplatine für die OBD-Buchse und mit Stecker für Kabel.

(Bild: Macchina)

Auf der Basisplatine befindet sich die Elektronik, die notwendig ist, um mit den verschiedenen Busprotokollen im Fahrzeug zu kommunizieren. Dazu gehört VPW/PWM nach SAE J1850 (primär ältere US-Fahrzeuge Opel/Ford), LIN/K-Line (ISO 9141/ISO 14230) und CAN (ISO 15765; moderne Fahrzeuge). Für die Kommunikation mit dem Mikrocontroller und Zusatzhardware sind alle gängigen Schnittstellen wie UART, SPI und I²C ebenfalls vorhanden.

Interface-Platine

(Bild: Macchina)

Auf diese Basisplatine wird der Mikrocontroller aufgesteckt, dessen Basis ein Atmel ATSAM3X8E Cortex bildet, wie er auch auf dem Arduino Due zu finden ist. Das Board bietet unter Anderem zwei Taster, LEDs, USB und SD-Speicherkartenslot. Da die Protokolle im Fahrzeug eher langsam arbeiten und nur kurze Sequenzen zu senden und zu empfangen sind, ist die Leistung des Prozessors mehr als ausreichend. Lediglich für CAN-Snifferanwendungen wird ein hoher Datendurchsatz benötigt.

Prozessor-Platine mit I/O

(Bild: Macchina)

Über einen Socket nach DIGI XBee Form-Faktor bietet das Controller-Board Anschlüsse für weitere Adapter, um mit der Umwelt zum Beispiel über Bluetooth oder WLAN zu kommunizieren oder GPS-Daten zu empfangen.

Erweiterungsboards für den Pinheader nach DIGI XBee Form-Faktor.

(Bild: Macchina)

Mit einem optionalen Break-Out-Board könnten anstatt des Atmel-Boards auch andere Controller auf die Basisplatine gesteckt werden, wenn mehr Rechenleistung oder ein anderes Entwicklungssystem gewünscht wird.

Alternative Bestückung mit anderen Controllern.

(Bild: Macchina)

Bisher gibt es nur eine rudimentäre Library für die Arduino IDE, mit der Zugriff auf die Speicherkarte möglich sein soll und per LIN/K-Line nach ISO 9141 kommuniziert werden kann. Die Macchina-Gründer sehen ihre Hardware als Basis für eigene Softwareentwicklungen. Die Bibliothek bietet nur Routinen, um Daten per K-Line zu senden und zu empfangen und für das sogenannte Slow-Init.

Wie die Daten zu interpretieren sind und wie eine Diagnoseverbindung aufgebaut wird, muss der Programmierer wissen. Für OBD II sind die Protokolle genormt und zugänglich (Standardliteratur: Bussysteme in der Fahrzeugtechnik). Für herstellerpezifische Zugriffe gibt es keine Informationen durch die jeweiligen Automobilbauer sondern es ist aufwändiges Reverse Engineering erforderlich. Hierzu gibt es nur sehr wenig Fachliteratur wie zum Beispiel Fahrzeugdiagnose mit OBD.Über die diversen CAN-Busse werden zwar viele Daten permanent ausgetauscht aber auch hierzu gibt es nur sporadische Informationen in einschlägigen Foren, da viele Entwickler selber mit diesen Informationen Geld verdienen wollen. Mit einem Snifferwerkzeug können die Bussignale abgehorcht werden, wie auch die M2-Entwickler in einem Video zeigen:

Einfaches Beispiel zur Datenanalyse und Arbeit mit dem M2.

Das Snifferwerkzeug ist kein Bestandteil des M2, obwohl damit einer aufzubauen wäre. Zudem wird für die gefahrlose Arbeit ein (teurer) Simulator (bspw. von Diamex) oder eine Auswahl an Steuergeräten benötigt. Für sämtliche andere Anwendungen muss die passende Software erst noch geschrieben werden.

Wie bei vielen Kickstarter-Projekten ist nicht erkennbar, wie weit sich die Gründer an Regelungen zu WEEE und Konformitätserklärungen halten werden. Ohne diese ist ein Vertrieb in der EU verboten. Geräte, die permanent im Fahrzeug eingebaut werden (und das wäre der Fall, wenn die Modellvariante mit Kabelstecker benutzt wird), bedürfen eines ECE-Prüfzeichens, welches aufgrund der Modularität des M2 nicht erteilt werden kann. Damit ist dessen Nutzung im öffentlichen Straßenverkehr illegal.

Zudem ist bei allen Eingriffen in die Kommunikation zu beachten, dass dadurch erhebliche Risiken entstehen können. Das Auslesen von Daten ist ungefährlich aber wenn Sie einen falschen Steuerbefehl senden und dadurch den Airbag oder die Bremsen (bei Fahrt) aktivieren, wird es ungemütlich. Lediglich die Kommunikation nach einem der OBD-2-Protokolle über die OBD-Buchse (und das entsprechende Gateway) ist in beide Richtungen bedenkenlos durchführbar. (fls)