Kfz-Hacking: Echte Autos per Open-Source-Software in Rennsimulatoren verwandelt
Mittels Python und einem Raspberry Pi machen Doktoranden der Hochschule Darmstadt jedes moderne Auto zu einem Controller für PC-Rennspiele.
![](https://heise.cloudimg.io/width/610/q85.png-lossy-85.webp-lossy-85.foil1/_www-heise-de_/imgs/18/4/6/5/0/4/1/0/car1-617975d18d9680e6.png)
Der vor die Windschutzscheibe geschobene Monitor zeigt das PC-Rennspiel, das der Fahrer per Lenkrad und Pedalerie des VW ID.3 steuert.
(Bild: Timm Lauser und Jannis Hamborg)
Zwei Informatik-Doktoranden von der Hochschule Darmstadt haben sich ein außergewöhnliches Car-Hacking-Unterfangen ausgedacht: Mit ihrem auf Python basierenden Vehicle-to-Game-Projekt (V2G) machen sie moderne Automobile zu Gamecontrollern, um PC-Rennspiele originalgetreu mit dem Lenkrad und Gaspedal eines Fahrzeugs zu steuern.
Voraussetzungen
Wie die Forscher während ihrer Präsentation auf der Hacker-Konferenz Def Con 32 ausführten, lässt sich V2G auf zwei verschiedene Arten nutzen: Entweder über einen per CAN-Bus-Adapter aufgerüsteten Raspberry Pi beziehungsweise ein per Kabel mit dem OBD-II-Diagnoseport verbundenes Laptop (UDS-Modus) oder durch eine direkte Verbindung mit dem CAN-Bus (interner CAN-Bus-Modus). Den Code ihres Projektes haben die Forscher auf Github veröffentlicht.
Bevor es losgehen kann, ist in jedem Fall Reverse Engineering nötig, um etwa die CAN-IDs und Signalzuordnungen zu ermitteln. Für den CAN-Bus-Modus kann dies durch Auslesen von CAN-Nachrichten auf dem Bus erfolgen, die beispielsweise das Bewegen des Lenkrads auslöst.
(Bild: Timm Lauser und Jannis Hamborg)
Der UDS-Modus setzt das Auslesen der nötigen Informationen per Diagnosegerät voraus: Die Hacker verbinden einen Tester wie den Hella Gutman Mega Macs VCI oder den OBDeleven per OBD-II-Splitter und schneiden so die Kommunikation mit. Auf diesem Weg konnten die Doktoranden eigenen Angaben zufolge die Daten aus einem Volkswagen ID.3 und einem Tesla Model 3 auslesen. Per se sollte dies aber mit jedem Auto möglich sein, das die entsprechenden Schnittstellen hat.
Um die Verbindung mit dem jeweiligen Auto leichter zu machen, haben die Forscher eine Erweiterung für den CAN-Bus-Adapter entwickelt, die den Raspi über den OBD-II-Anschluss mit Strom versorgt.
Wollen wir ein Spiel spielen?
Der Game-Controller beherrscht zwei Modi: Entweder ist der Computer, auf dem das Rennspiel läuft und der den Xbox-360-Controller emuliert, direkt mit dem CAN-Bus verbunden oder der mittels CAN-Aufsatz verbundene Raspberry Pi Zero WH emuliert einen Bluetooth-Controller, mit dem der Computer dann drahtlos Kontakt aufnimmt.
Für ihre Demonstration schoben die Forscher einen großen Monitor über die Motorhaube, sodass der Fahrer das Rennspiel direkt hinter der Windschutzscheibe sieht. Anschließend steuerte der Fahrer seine virtuellen Fahrzeuge per Lenkrad und Pedalerie des Autos. Per Blinkerhebel lassen sich – je nach Spiel – Objekte abwerfen. Der Schalter fürs Fernlicht aktiviert einen eventuell vorhandenen Nitro-Modus.
Wie Interessierte ihre eigenen Autos mit dem virtuellen Game-Controller verbinden können, reißen die Forscher ab Seite 28 in ihrer Präsentation an. Die Gesamtkosten für den Aufbau beziffern sie mit unter 50 Euro, zuzüglich des eventuell nötigen Diagnosegeräts.
(des)