# Reverse Engineering von CAN Kommunikation und Bau von ECUs
> [! hinweis]-
> Der Inhalt dieser Seite ist durch Audio/Video-Transkribtion und Text-Transformation aus dem Inhalt und Links dieser Quelle generiert.
Quelle: [https://fosdem.org/2025/schedule/event/fosdem-2025-4973-reverse-engineering-can-communication-and-building-ecus-using-elixir-and-the-beam/](https://fosdem.org/2025/schedule/event/fosdem-2025-4973-reverse-engineering-can-communication-and-building-ecus-using-elixir-and-the-beam/)
<video src="https://video.fosdem.org/2025/h1302/fosdem-2025-4973-reverse-engineering-can-communication-and-building-ecus-using-elixir-and-the-beam.av1.webm" controls></video>
## Zusammenfassung & Highlights:
Diese Session behandelt das Reverse Engineering von CAN-Kommunikation für den Bau von ECUs mit Elixir und der BEAM. Thibault Poncelet zeigt, wie verschiedene Fahrzeugkomponenten miteinander kommunizieren können und wie Elixir als Plattform für die schnelle Prototypenentwicklung von ECUs genutzt werden kann.
**Einführung in CAN-Bus und Reverse Engineering**
Thibault Poncelet erklärt die Grundlagen der CAN-Kommunikation, die in Fahrzeugen weit verbreitet ist. Er beschreibt, dass der CAN-Bus ein Standardprotokoll ist, das in vielen Fahrzeugen, Flugzeugen und industriellen Maschinen verwendet wird. Die Herausforderung besteht darin, dass die Dateninhalte von den Herstellern nicht dokumentiert werden, was das Reverse Engineering notwendig macht.
**Praktische Anwendung und Tools**
Poncelet erläutert, wie er mit einfachen USB-Geräten und Open-Source-Tools wie Savican und Socket Candy CAN-Daten analysiert und wieder abspielt. Er beschreibt, wie er ein Nissan LEAF-Motor in einen VW Polo integriert hat, um diesen in ein Elektrofahrzeug umzuwandeln.
**Elixir und die BEAM als Plattform**
Elixir und die BEAM werden als ideale Plattformen für die Entwicklung von ECUs beschrieben. Die Funktionalität und Echtzeitfähigkeit der BEAM, ursprünglich für Telefonsysteme entwickelt, wird für die Verarbeitung von CAN-Daten genutzt. Poncelet erklärt die Vorteile der funktionalen Programmierung und der Prozessverwaltung in Elixir.
**Herausforderungen und zukünftige Entwicklungen**
Die Session endet mit einem Ausblick auf zukünftige Entwicklungen, wie die Integration von Batteriestatusanzeigen und die Verbesserung der Fahrzeugkommunikation. Poncelet weist darauf hin, dass die Sicherheit von Fahrzeugen, die mit dem Internet verbunden sind, ein wichtiges Thema ist.
## Bedeutung für eine öko-soziale Transformation
Diese Session hat bedeutende Implikationen für die ökosoziale Transformation, insbesondere im Bereich der offenen Hardware und der nachhaltigen Mobilität. Durch die Verwendung von Open-Source-Tools und -Plattformen wie Elixir und der BEAM wird die Barriere für den Zugang zu Technologien gesenkt, was die Entwicklung von umweltfreundlichen Fahrzeuglösungen fördert. Eco-Social Designer können diese Ansätze nutzen, um bestehende Fahrzeuge auf Elektroantrieb umzurüsten und so zur Reduzierung von CO2-Emissionen beizutragen. Herausforderungen bestehen in der Komplexität der Reverse Engineering Prozesse und den rechtlichen Aspekten der Fahrzeugmodifikation. Zudem sind Fragen der Datensicherheit und der Interoperabilität zwischen verschiedenen Fahrzeugkomponenten von Bedeutung.
## Slides:
| | |
| --- | --- |
| ![[FOSDEM 2025/assets/Reverse-engineering-CAN-communication-and-building/preview_001.jpg\|300]] | Die erste Folie bietet eine Einführung in das Thema Reverse Engineering von CAN-Kommunikation und die Entwicklung von ECUs mit Elixir und der BEAM. Thibault Poncelet stellt sich vor und erläutert die Motivation hinter dem Projekt, das darauf abzielt, die Möglichkeiten von Elixir im Automobilbereich zu erkunden.
| ![[FOSDEM 2025/assets/Reverse-engineering-CAN-communication-and-building/preview_002.jpg\|300]] | • Einführung in die CAN-Kommunikation als Standardprotokoll in Fahrzeugen• Herausforderungen beim Reverse Engineering aufgrund fehlender Dokumentation der Hersteller• Vorstellung der Tools und Methoden, die zur Analyse und Prototypenentwicklung verwendet werden• Bedeutung der Interoperabilität zwischen Komponenten verschiedener Hersteller
| ![[FOSDEM 2025/assets/Reverse-engineering-CAN-communication-and-building/preview_003.jpg\|300]] | Die dritte Folie beschreibt die technischen Details der CAN-Kommunikation, einschließlich der Struktur von CAN-Frames und der Notwendigkeit, den Inhalt der Daten selbst zu interpretieren. Es wird erklärt, dass die Daten auf dem CAN-Bus in Form von Frames mit IDs und Frequenzen gesendet werden.
| ![[FOSDEM 2025/assets/Reverse-engineering-CAN-communication-and-building/preview_004.jpg\|300]] | Diese Folie behandelt die praktische Anwendung des Reverse Engineering-Prozesses, indem sie beschreibt, wie Thibault Poncelet den CAN-Bus eines VW Polo analysiert hat, um die RPM-Werte eines Nissan LEAF-Motors auf das VW-Dashboard zu übertragen.
| ![[FOSDEM 2025/assets/Reverse-engineering-CAN-communication-and-building/preview_005.jpg\|300]] | Die fünfte Folie erläutert die Herausforderungen, die bei der Umrüstung eines Fahrzeugs auf einen Elektroantrieb auftreten, insbesondere im Hinblick auf die Integration von Komponenten verschiedener Hersteller. Es wird beschrieben, wie der CAN-Bus genutzt wird, um diese Integration zu erleichtern.
| ![[FOSDEM 2025/assets/Reverse-engineering-CAN-communication-and-building/preview_006.jpg\|300]] | Diese Folie stellt die Tools vor, die für das Reverse Engineering verwendet wurden, darunter ein einfaches USB-Gerät zur physischen Verbindung mit dem CAN-Bus und Open-Source-Software wie Savican und Socket Candy für die Analyse und Wiedergabe von CAN-Daten.
| ![[FOSDEM 2025/assets/Reverse-engineering-CAN-communication-and-building/preview_007.jpg\|300]] | • Vorstellung von Elixir als geeignete Plattform für die Entwicklung von ECUs• Erläuterung der Vorteile der funktionalen Programmierung und der BEAM für Echtzeitanwendungen• Beschreibung der Prozessverwaltung in Elixir und deren Anwendung im Automobilbereich
| ![[FOSDEM 2025/assets/Reverse-engineering-CAN-communication-and-building/preview_008.jpg\|300]] | • Vorstellung von Cantastic, einer Open-Source-Bibliothek zur Vereinfachung der CAN-Bus-Interaktion• Beschreibung der YAML-Dateien zur Definition von CAN-Frames und Signalen• Vorteile der Verwendung von Cantastic für die Entwicklung von Fahrzeugsteuerungssystemenhttps://github.com/dalathegreat/leaf_can_bus_messages
| ![[FOSDEM 2025/assets/Reverse-engineering-CAN-communication-and-building/preview_009.jpg\|300]] | Diese Folie beschreibt die Implementierung eines einfachen ECUs mit Elixir, das die Daten vom Nissan LEAF-Motor empfängt und an das VW-Dashboard sendet. Es wird erklärt, wie Elixir zur Übersetzung und Proxy der Werte zwischen den verschiedenen Fahrzeugkomponenten verwendet wird.
| ![[FOSDEM 2025/assets/Reverse-engineering-CAN-communication-and-building/preview_010.jpg\|300]] | • Diskussion über die Herausforderungen und Möglichkeiten der Fahrzeugkommunikation• Bedeutung der Sicherheit und Interoperabilität in vernetzten Fahrzeugen• Ausblick auf zukünftige Entwicklungen und Verbesserungen im Bereich der Fahrzeugsteuerunghttps://github.com/v-ivanyshyn/parse_can_logs
| ![[FOSDEM 2025/assets/Reverse-engineering-CAN-communication-and-building/preview_011.jpg\|300]] | • Zusammenfassung der bisherigen Erkenntnisse und Erfahrungen• Ausblick auf die weiteren Schritte im Projekt• Einladung zur Teilnahme an der Diskussion und zum Austausch von Ideen• Bedeutung der Open-Source-Community für die Weiterentwicklung des Projekts
| ![[FOSDEM 2025/assets/Reverse-engineering-CAN-communication-and-building/preview_012.jpg\|300]] | Diese Folie bietet einen Überblick über die verschiedenen Open-Source-Projekte und -Ressourcen, die im Rahmen des Projekts genutzt wurden. Es wird die Bedeutung der Zusammenarbeit innerhalb der Community hervorgehoben.
| ![[FOSDEM 2025/assets/Reverse-engineering-CAN-communication-and-building/preview_013.jpg\|300]] | Die dreizehnte Folie konzentriert sich auf die technischen Details der Implementierung einer ECU mit Elixir, einschließlich der Prozessverwaltung und der Nutzung von Cantastic zur Vereinfachung der CAN-Bus-Interaktion.
| ![[FOSDEM 2025/assets/Reverse-engineering-CAN-communication-and-building/preview_014.jpg\|300]] | • Vorstellung der Hardware, die für die Implementierung der ECU verwendet wurde• Beschreibung des Einsatzes eines Raspberry Pi und von CAN-Bus-Modulen• Diskussion über die Vorteile und Herausforderungen der Hardwareintegration• Bedeutung der Wahl der richtigen Plattform für die Entwicklung von Fahrzeugsteuerungen
| ![[FOSDEM 2025/assets/Reverse-engineering-CAN-communication-and-building/preview_015.jpg\|300]] | Diese Folie bietet einen detaillierten Einblick in die Softwarearchitektur der ECU, die mit Elixir entwickelt wurde. Es wird erklärt, wie die verschiedenen Komponenten miteinander interagieren und wie die Datenverarbeitung erfolgt.
| ![[FOSDEM 2025/assets/Reverse-engineering-CAN-communication-and-building/preview_016.jpg\|300]] | • Vorstellung von NURBS als Plattform zur Erstellung eines minimalen Linux-Systems für die ECU• Beschreibung der Vorteile von NURBS für die Entwicklung von Embedded-Systemen• Diskussion über die Möglichkeiten der Aktualisierung und Wartung der ECU• Bedeutung der Wahl der richtigen Softwareplattform für die Entwicklung von Fahrzeugsteuerungenhttps://github.com/open-vehicle-control-system/cantastic
| ![[FOSDEM 2025/assets/Reverse-engineering-CAN-communication-and-building/preview_017.jpg\|300]] | Die siebzehnte Folie fasst die wichtigsten Erkenntnisse aus dem Projekt zusammen und bietet einen Ausblick auf zukünftige Entwicklungen. Es wird die Bedeutung der Open-Source-Community für die Weiterentwicklung des Projekts hervorgehoben.
| ![[FOSDEM 2025/assets/Reverse-engineering-CAN-communication-and-building/preview_018.jpg\|300]] | Diese Folie bietet eine Zusammenfassung der Herausforderungen und Möglichkeiten, die sich aus der Verwendung von Elixir und der BEAM für die Entwicklung von Fahrzeugsteuerungen ergeben. Es wird die Bedeutung der Wahl der richtigen Plattform für die Entwicklung von Embedded-Systemen betont.
| ![[FOSDEM 2025/assets/Reverse-engineering-CAN-communication-and-building/preview_019.jpg\|300]] | Die neunzehnte Folie widmet sich den ethischen und sicherheitstechnischen Aspekten der Fahrzeugkommunikation. Es wird diskutiert, wie die Sicherheit von Fahrzeugen, die mit dem Internet verbunden sind, verbessert werden kann.
| ![[FOSDEM 2025/assets/Reverse-engineering-CAN-communication-and-building/preview_020.jpg\|300]] | Diese Folie bietet einen Überblick über die verschiedenen Open-Source-Ressourcen, die im Rahmen des Projekts genutzt wurden. Es wird die Bedeutung der Zusammenarbeit innerhalb der Community hervorgehoben.
| ![[FOSDEM 2025/assets/Reverse-engineering-CAN-communication-and-building/preview_021.jpg\|300]] | • Zusammenfassung der wichtigsten Erkenntnisse und Erfahrungen• Ausblick auf die weiteren Schritte im Projekt• Einladung zur Teilnahme an der Diskussion und zum Austausch von Ideen
## Links
[Slides](https://fosdem.org/2025/events/attachments/fosdem-2025-4973-reverse-engineering-can-communication-and-building-ecus-using-elixir-and-the-beam/slides/238112/can_rever_TE0PxYP.pdf)
[Can library source](https://github.com/dalathegreat/leaf_can_bus_messages)
[Open Vehicle Control System source](https://github.com/open-vehicle-control-system/cantastic)
[Video recording (AV1/WebM)](https://video.fosdem.org/2025/h1302/fosdem-2025-4973-reverse-engineering-can-communication-and-building-ecus-using-elixir-and-the-beam.av1.webm)
[Video recording (MP4)](https://video.fosdem.org/2025/h1302/fosdem-2025-4973-reverse-engineering-can-communication-and-building-ecus-using-elixir-and-the-beam.av1.mp4)
[Video recording subtitle file (VTT)](https://video.fosdem.org/2025/h1302/fosdem-2025-4973-reverse-engineering-can-communication-and-building-ecus-using-elixir-and-the-beam.vtt)
[Chat room(web)](https://fosdem.org/chat/room/fosdem-2025-4973-reverse-engineering-can-communication-and-building-ecus-using-elixir-and-the-beam)
[Chat room(app)](https://fosdem.org/chat/app/fosdem-2025-4973-reverse-engineering-can-communication-and-building-ecus-using-elixir-and-the-beam)