Zum Inhalt springen

Firmware für E-Mobility Controller

Case Study: ESP32 Firmware für E-Mobility Controller

hochperformante Embedded-Lösung für elektrische Fahrzeuge 



Projektausgangslage und Herausforderungen


Unser Kunde, ein innovativer Hersteller von elektrischen Wassersportgeräten, benötigte eine maßgeschneiderte Firmware-Lösung für seine ESP32-basierten Fahrzeugcontroller. Das Unternehmen hatte bereits erfolgreiche Hardware entwickelt, stand jedoch vor der komplexen Aufgabe, eine zuverlässige und sichere Embedded-Software zu implementieren, die sowohl die anspruchsvollen Anforderungen des Wassersports als auch die hohen Sicherheitsstandards der E-Mobility-Branche erfüllt.

Die technischen Anforderungen waren außergewöhnlich anspruchsvoll: Das System musste Echtzeit-Kommunikation mit VESC-Motorcontrollern gewährleisten, gleichzeitig Bluetooth-Verbindungen zu mobilen Geräten verwalten, kritische Sicherheitsfunktionen implementieren und dabei in einer salzwasserhaltigen Umgebung mit extremen Temperaturschwankungen zuverlässig funktionieren. Zusätzlich sollte die Firmware Over-the-Air Updates unterstützen und eine modulare Architektur für zukünftige Produktvarianten bieten.



Dual-Controller Architektur


Nach eingehender Analyse der Anforderungen entwickelten wir eine innovative Dual-Controller Architektur, die aus zwei spezialisierten ESP32-Systemen besteht: dem OCEAN Controller als Hauptsteuereinheit und dem OCEAN Remote als drahtlose Fernbedienung. Diese Aufteilung ermöglichte es uns, jedes System für seine spezifischen Aufgaben zu optimieren und gleichzeitig die Komplexität zu reduzieren.

Der OCEAN Controller fungiert als zentrales Nervensystem des Fahrzeugs und verwaltet alle kritischen Funktionen. Wir implementierten eine hochperformante Kommunikationsschicht, die gleichzeitig mit VESC-Motorcontrollern über UART und mit Battery-Management-Systemen über CAN-Bus kommuniziert. Besonders herausfordernd war die Entwicklung des Echtzeit-Schedulers, der sicherstellt, dass sicherheitskritische Funktionen wie Notabschaltungen innerhalb von Mikrosekunden ausgeführt werden.

Der OCEAN Remote wurde als ergonomische Fernsteuerung konzipiert, die eine intuitive Bedienung auch unter schwierigen Bedingungen ermöglicht. Wir entwickelten ein adaptives Bluetooth-Protokoll, das auch bei elektromagnetischen Störungen oder großen Distanzen eine stabile Verbindung aufrechterhält. Das System implementiert intelligente Wiederverbindungsalgorithmen und Fallback-Mechanismen, die auch bei temporären Verbindungsabbrüchen die Sicherheit gewährleisten.



Sicherheit als oberste Priorität


Da die Firmware in sicherheitskritischen Anwendungen eingesetzt wird, entwickelten wir ein mehrstufiges Sicherheitskonzept, das weit über Standard-Embedded-Systeme hinausgeht. Das Herzstück bildet ein intelligentes Monitoring-System, das kontinuierlich alle kritischen Parameter wie Batteriespannung, Motortemperatur und Systemlast überwacht.

Besonders innovativ ist unser Wasserkontakt-Erkennungssystem, das speziell für E-Surfboards entwickelt wurde. Das System nutzt eine Kombination aus Beschleunigungssensoren, Drucksensoren und elektrischen Leitfähigkeitsmessungen, um zuverlässig zu erkennen, ob sich das Fahrzeug im Wasser befindet. Bei Verlust des Wasserkontakts wird der Motor innerhalb von Millisekunden abgeschaltet, um Verletzungen zu vermeiden.

Die Firmware implementiert außerdem ein robustes Watchdog-System mit mehreren Überwachungsebenen. Neben dem Hardware-Watchdog des ESP32 entwickelten wir einen Software-basierten Task-Monitor, der die ordnungsgemäße Ausführung aller kritischen Prozesse überwacht und bei Anomalien automatisch einen sicheren Systemzustand herstellt.



Drahtlose Kommunikation und Konnektivität


Eine der größten technischen Herausforderungen war die Entwicklung einer zuverlässigen drahtlosen Kommunikation, die auch unter extremen Bedingungen funktioniert. Wir implementierten ein adaptives Bluetooth Low Energy Protokoll, das sich automatisch an die Umgebungsbedingungen anpasst und die Übertragungsparameter dynamisch optimiert.

Für die Over-the-Air Update-Funktionalität entwickelten wir ein sicheres und robustes System, das auch bei Verbindungsabbrüchen während des Update-Prozesses die Funktionsfähigkeit des Geräts gewährleistet. Das System verwendet eine Dual-Boot-Architektur mit automatischem Rollback bei fehlgeschlagenen Updates und kryptographische Signaturprüfung zur Verhinderung von Manipulation.

Besonders stolz sind wir auf die Implementierung des Mesh-Networking-Features, das es ermöglicht, mehrere Fahrzeuge zu vernetzen und Informationen auszutauschen. Dies eröffnet neue Möglichkeiten für Gruppen-Aktivitäten und ermöglicht es, Sicherheitsinformationen zwischen Fahrzeugen zu teilen.



Performance-Optimierung und Ressourcenmanagement


Die Entwicklung einer hochperformanten Firmware auf einem ressourcenbegrenzten ESP32-System erforderte innovative Optimierungsansätze. Wir implementierten ein intelligentes Power-Management-System, das die Energieverbrauch des Controllers minimiert und gleichzeitig die volle Funktionalität gewährleistet.

Durch die Verwendung von FreeRTOS konnten wir ein deterministisches Multitasking-System implementieren, das auch unter hoher Last zuverlässig funktioniert. Kritische Tasks wie die Motorsteuerung erhalten höchste Priorität, während weniger zeitkritische Funktionen wie die Bluetooth-Kommunikation in niedrigeren Prioritätsebenen abgearbeitet werden.

Für die Datenspeicherung entwickelten wir ein effizientes SPIFFS-basiertes Dateisystem, das Konfigurationsdaten, Logs und Telemetriedaten zuverlässig speichert. Das System implementiert Wear-Leveling und Error-Correction, um die Lebensdauer des Flash-Speichers zu maximieren.



Entwicklungsumgebung und Qualitätssicherung


Um die hohen Qualitätsanforderungen zu erfüllen, etablierten wir eine professionelle Entwicklungsumgebung basierend auf PlatformIO. Wir implementierten umfassende Unit-Tests für alle kritischen Funktionen und entwickelten ein Hardware-in-the-Loop Testsystem, das automatisierte Tests unter realistischen Bedingungen ermöglicht.

Die Firmware durchläuft einen strengen CI/CD-Prozess mit automatischen Builds, Tests und Code-Qualitätsprüfungen. Jede Änderung wird in einer simulierten Umgebung getestet, bevor sie für die Hardware-Tests freigegeben wird. Dies gewährleistet eine hohe Codequalität und reduziert das Risiko von Fehlern in der Produktion.



Projektergebnis und Kundenerfolg


Die entwickelte Firmware hat die Erwartungen unseres Kunden übertroffen und ermöglichte es dem Unternehmen, seine Produktlinie erfolgreich auf den Markt zu bringen. Das System läuft heute in über 5.000 Fahrzeugen weltweit und hat eine Ausfallrate von weniger als 0.1% erreicht.

Besonders beeindruckend ist die Zuverlässigkeit des Over-the-Air Update-Systems: Über 95% aller Updates werden erfolgreich ohne Benutzereingriff durchgeführt, was die Wartungskosten erheblich reduziert hat. Die modulare Architektur ermöglichte es unserem Kunden außerdem, schnell neue Produktvarianten zu entwickeln und den Time-to-Market erheblich zu verkürzen.

Die Firmware hat sich als so robust und vielseitig erwiesen, dass sie inzwischen auch in anderen Anwendungsgebieten wie E-Scootern und industriellen IoT-Systemen eingesetzt wird. Dies demonstriert die Qualität und Anpassungsfähigkeit unserer Embedded-Entwicklung.

IOS/Android App mit Cloud-Backend