Embedded Systems Engineer
- Verfügbarkeit einsehen
- 0 Referenzen
- auf Anfrage
- 72770 Reutlingen
- Weltweit
- de | en
- 08.06.2026
- Contract ready
Kurzvorstellung
Geschäftsdaten
Qualifikationen
Projekt‐ & Berufserfahrung
9/2013 – 1/2026
Tätigkeitsbeschreibung
Autarke Entwicklung der vollständigen Elektronik und der hardwarenahen Software-Infrastruktur für ein industrielles Drucksystem.
Die Projektdurchführung umfasste die vollständige technologische Umsetzung sowie das eigenverantwortliche Beschaffungs- und Materialmanagement: Zur Absicherung gegen die Corona-Lieferengpässe wurde das Material für die ersten 100 Systembaugruppen (Gesamtvolumen ca. 50 TEUR) von mir rollierend und ohne kundenseitige Freigabeprozesse direkt disponiert, vorfinanziert und eingelagert. Die monatliche Abrechnung erfolgte nach tatsächlichem Zeit- und Materialaufwand.
Die Architektur nutzt die heterogene Rechenleistung eines i.MX8M Mini (Cortex-A53 und Cortex-M4) zur Trennung von Weboberfläche, Druckrendering und Echtzeit-Drucksteuerung.
Ich habe die gesamte Elektronik des Druckers entwickelt. Ein Mainboard mit einem i.MX8MM-SoM, das mit einem Power-Sequencing, einem zweiten Ethernet (PCIe-to-Ethernet-Bridge und einem PoE-Controller inkl. 48V-Erzeugung aus 24V), einem FPGA zur Ansteuerung von Motor-Controller und Druckleiste, einem STM32 und Motorbrücke für die Kommutierung von zwei BLDC-Motoren zur Aufwicklung sowie zahlreichen IO-Schnittstellen erweitert wurde.
Die Elektronik musste gezielt auf Surge-Festigkeit ausgelegt werden. Die ersten Prototypen habe ich selbst händisch bestückt und im eigenen Reflow-Ofen gelötet, nachfolgende Funktionsmuster wurden für die Bestückung an einen externen EMS-Dienstleister übergeben.
Das FPGA-Design habe ich vollständig geplant und implementiert, die Motorsteuerungen auf dem STM32-Mikrocontroller (Sinus- und Blockkommutierung) ebenfalls.
Auf dem i.MX8 (Cortex A53-Kerne) läuft ein Yocto basiertes Embedded Linux von Variscite, das von mir pezifisch angepasst und erweitert wurde. Auf dem Cortex M4-Kern läuft eine von mir entwickelte Bare-Metal-Echtzeitsteuerung, welche den FPGA und den STM32 ansteuert. Das CM4-Subsystem ist über einen von mir geschriebenen Linux-Treiber (RPMSG) in das Linux-System integriert.
Im Linux-Userspace läuft eine C\# basierte Software für das Rendern von Aufklebern, die Vorberechnung der Drucksteuerungsdaten und das Webinterface zur Konfiguration von einem weiteren Zulieferer, die ich über Yocto in das System integriert habe. Das Projekt war mit dem Zulieferer geteilt.
Aufgrund der Bauteilverfügbarkeit mussten zahlreiche Schaltungsteile diskret realisiert werden. Eine zentrale schaltungstechnische Herausforderung war dabei das Power-Sequencing über verschiedene Spannungsebenen hinweg mit zuverlässiger Unterbindung von Leckströmen während des Hochlaufs.
Bürstenloser Gleischstrommotor (BLDC), Elektronische Schaltungstechnik, Embedded Entwicklung / hardwarenahe Entwicklung, Embedded Linux, FPGA, Hardware-Design, Linux Entwicklung, PCB-Designer, Softwareentwickler
9/2013 – 1/2026
Tätigkeitsbeschreibung
Autarke Entwicklung der Elektronik für ein kompaktes Motorsteuerungs-Subsystem. Die Projektdurchführung erfolgte vollständig im eigenen Ingenieurbüro bei freier Zeiteinteilung.
Das Vorhaben umfasste die vollständige Entwicklung der Elektronik sowie das eigenverantwortliche Beschaffungs- und Materialmanagement: Zur Absicherung gegen die Corona-Lieferengpässe wurde das Material für die ersten 100 Systembaugruppen von mir rollierend und ohne kundenseitige
Freigabeprozesse direkt disponiert, vorfinanziert und eingelagert. Die Abrechnung erfolgte monatlich nach tatsächlichem Zeit- und Materialaufwand.
Die Steuerung umfasst einen Stepper-Motorcontroller, einen STM32-Mikrocontroller sowie eine Schnittstelle zu einer externen SPS-Einheit.
Für den STM32 habe ich eine Inbetriebnahme-Software zum vollständigen Selbsttest der Hardware geschrieben.
Die Entwicklung der Hardware und der Testsoftware erfolgte dabei in enger und direkter Abstimmung mit dem Zulieferer für die Firmware des Nominalbetriebs, mit dem das Gesamtprojekt aufgeteilt war.
Die Motorsteuerung kann optional mit einem externen Hall-Sensor sowie einer SPS-Erweiterungsbaugruppe ergänzt werden.
Der SPS-IO-Teil ist galvanisch entkoppelt ausgeführt. Die gesamte Elektronik musste gezielt auf Surge-Festigkeit ausgelegt werden.
Die ersten Prototypen habe ich selbst händisch bestückt und im eigenen Reflow-Ofen gelötet, während die Bestückung der Baugruppen für den Serieneinsatz an einen externen EMS-Dienstleister übergeben wurde.
Elektronische Schaltungstechnik, Embedded Entwicklung / hardwarenahe Entwicklung, Hardware-Design, Hardwareentwickler, Ingenieur Elektromotoren, Layout-Experte, PCB-Designer
9/2013 – 1/2026
Tätigkeitsbeschreibung
Autarke Ad-hoc-Entwicklung einer mehrkanaligen PWM-Signalaufbereitung inklusive eines CANoe-basierten Konfigurations-Frontends für ein automobiles Hardware-in-the-Loop-System (HIL-System).
Die Projektdurchführung erfolgte im Rahmen einer zeitkritischen Express-Beauftragung vollständig im eigenen Ingenieurbüro: Der Projektauftrag wurde in der Woche vor Heiligabend erteilt, woraufhin die vollständige Entwicklung und Prototypenfertigung über die Jahreswende realisiert und die einsatzbereiten Baugruppen bereits Anfang Januar erfolgreich ausgeliefert wurden.
Wegen des spezifischen technologischen Entwicklungsrisikos wurde das Vorhaben über eine Abrechnung nach tatsächlichem Zeit- und Materialaufwand realisiert nach Auslieferung und Inbetriebnahme realisiert.
Die Signalaufbereitung wandelt ein strombasiertes PWM-Signal im Milliampere-Bereich, dem eine ebenfalls PWM-modulierte Offset-Spannung von bis zu 80 V bei variabler Frequenz überlagert ist, in ein massebezogenes Spannungssignal um. Dieses wird so aufbereitet, dass es vom HIL-System trotz der hochfrequenten Gleichtaktstörungen zuverlässig gemessen werden kann. Die Schwellenwerte für die Umwandlung von Strom- zu Spannungssignalen sind konfigurierbar und werden beim Systemstart durch einen STM32-Mikrocontroller eingestellt.
Ein Analog-Digital-Umsetzer (ADC) in jedem PWM-Kanal ermöglicht die Strommessung zur automatischen Parametrierung, gesteuert über das CANoe-Frontend. Die Kommunikation zwischen dem STM32 und dem HIL-System erfolgt über eine UART-Schnittstelle. Mehrere Module der Signalaufbereitung lassen sich über UART kaskadieren. Das verwendete Kommunikationsprotokoll arbeitet adressbasiert, wobei die Adressvergabe hardwareseitig per Jumper konfiguriert wird.
Die Vorbestückung der Leiterplatten erfolgte über einen flexiblen Express-Bestückungsdienstleister, während das finale Löten der Prototypen im eigenen Reflow-Ofen durchgeführt wurde.
Automotive Electronics, Canoe Software, Elektronische Schaltungstechnik, Embedded Entwicklung / hardwarenahe Entwicklung, Messtechnik, PCB-Designer, Prototyping, Prüfwerkzeuge, Qt (Software), Schnittstellenentwicklung, STM32, Test Automation
9/2009 – 1/2026
Tätigkeitsbeschreibung
Entwicklung einer Produktfamilie von Steuergerätetestern zur Analyse, Emulation und Überwachung von automotiven LED-Scheinwerfer-Steuergeräten.
Die Umsetzung der Elektronik, der FPGA-Designs sowie der gesamten Software-Infrastrukturen für die verschiedenen Testsysteme erfolgte als festpreisbasierte Gewerke im eigenen Ingenieurbüro mit jeweils abschließender Kundenabnahme.
Die Systeme zeichnen den Datenstrom zwischen Steuergerät und LED-Scheinwerfer in Echtzeit auf, werten diesen aus und übertragen die Daten via Ethernet an übergeordnete Hardware-in-the-Loop-Systeme (HIL-Systeme von Vector oder dSPACE).
Systemarchitektur \& Hardware-Entwicklung
Kernstück der jeweiligen Tester ist ein Enclustra Mars ZX3 SoM mit einem Xilinx Zynq-7000 SoC. Ich habe die vollständige Elektronik (4-Layer-PCBs) inklusive der Mess-, Generator-, \mbox{Manipulations-, Emulations- und Triggerfunktionen für die unterschiedlichen Steuergerätevarianten konzipiert und hardwareseitig umgesetzt.
Auf dem Zynq-SoC läuft ein jeweils Yocto-basiertes Embedded Linux von Enclustra. Die hardwarenahe Anbindung erfolgt über von mir entwickelte FPGA-Designs (VHDL) sowie selbst geschriebene Linux-Kernel-Treiber und ein CLI-Steuerprogramm im Linux-Userspace.
Software-Integration \& Automotive-Schnittstellen
Für den Einsatz der verschiedenen Testsysteme wurden zwei unabhängige Bedien- und Integrationspfade realisiert:
-- Standalone-Betrieb: Entwicklung einer Qt-basierten Desktop-Anwendung zur direkten Gerätesteuerung, Datenvisualisierung und Protokollierung.
-- Automotive-Systemintegration: Integration in die Entwicklungsumgebung Vector CANoe mittels CAPL-Skripte und C\#-basierter Benutzeroberflächen. Dies ermöglicht den Einsatz der Tester sowohl im automatisierten HIL-Prüfstand als auch als eigenständige Labor-Messgeräte.
Wirtschaftlicher Projekterfolg
Aufgrund der technologischen Umsetzung und erfolgreichen Abnahme dieser und weiterer Testsysteme erreichte ich die Listung als offizieller Daimler-Direktlieferant.
FPGA, Hardware-Design, Software Architecture, Elektronische Schaltungstechnik, PCB-Designer
4/2008 – 6/2014
Tätigkeitsbeschreibung
FIDEx ist eine integrierte Assembler-Entwicklungsumgebung (IDE) für Soft-Core-Prozessoren in FPGAs.
Das Projekt entstand ursprünglich als Eigenentwicklung, um Unzulänglichkeiten bestehender Toolchains zu überwinden und eine verlässliche Simulationsumgebung für die eigene Firmware-Entwicklung zu schaffen.
Im Zuge der Weiterentwicklung diente das Projekt zudem als dedizierte Plattform zum Erwerb tiefgreifender C++-Architektur- und Qt-Framework-Expertise.
Das Tool ermöglicht die Entwicklung von Assembly-Code mit Features, die üblicherweise nur für Hochsprachen verfügbar sind, wodurch insbesondere die Erstellung komplexer und umfangreicher Programme signifikant beschleunigt wird.
Ich habe die Architektur der IDE vollständig konzipiert und implementiert. Aus FIDEx wurde ein modularer Software-Baukasten, mit dem bereits zahlreiche weitere Programme realisiert wurden.
Wissenschaftliche und industrielle Relevanz:
Das Tool wird weltweit von zahlreichen Universitäten in der akademischen Ausbildung eingesetzt. Darüber hinaus findet die Entwicklungsumgebung bis heute erfolgreiche Anwendung bei der Entwicklung von FPGA-Designs im Bereich der Satellitentechnik.
Zu den zentralen technischen Highlights gehören:
--Code-Editor mit Navigator: Entwicklung eines Programmier-Editors mit Syntax-Highlighting, Autovervollständigung, Vorlagen-Einfügung (Template-Insertion) und Code-Navigation.
--Compiler: Entwicklung eines Code-Parsers und Compilers zur Kompilierung eines generischen Assembler-Instruction-Sets für verschiedene Softcore-Prozessoren.
--Simulator & Debugger: Entwicklung eines Simulators zur Visualisierung von benannten Registern, Port-Adressen und vorinitialisierten Speichern.
--Speichermanagement: Implementierung einer logischen Memory-Page-Verwaltung für Prozessoren ohne nativen Bank-Support. Dies wird u.A. zum dynamischen Nachladen von Programmteilen aus einem externen Speicher genutzt.
--Interaktive Hilfe & Diagnose: Integration eines Message-Viewers mit direkter Verknüpfung zur Online-Hilfe und den Prozessor-Handbüchern sowie eines Importfilters für Drittanbieter-Quellen.
--Workflow-Automatisierung: Einbindung externer Programme in den Build-Prozess und Entwicklung eines flexiblen Projektmanagements für umfangreiche Softwareprojekte.
Programmierer C, C++, Assemblersprache, C++
6/2002 – 6/2006
Tätigkeitsbeschreibung
TV-Kopfstellen werden eingesetzt, um analoges und digitales Fernsehen in Kabelfernsehnetze einzuspeisen. Die Hauptaufgabe einer TV-Kopfstelle besteht darin, Fernsehsignale aus verschiedenen Quellen wie Satelliten, terrestrischen Sendern oder Radio in kabelspezifische Formate zu konvertieren (DVB-T nach DVB-C, DVB-S nach DVB-C und DVB-S2 nach DVB-C).
Für diese Kopfstellenmodule habe ich die FPGA-Designs sowie die Mikrocontroller-Software geplant und implementiert.
Die Funktion des FPGAs bestand darin, die Network Information Table (NIT) aus den DVB-S/S2/T-Datenströmen zu extrahieren und an die MCU zu übertragen. Diese filterte die relevanten Transponder heraus und stellte sie zusammen mit weiteren Transponder-Informationen anderer Module zu einer neuen NIT für DVB-C zusammen. Diese modifizierte Tabelle wurde zurück an den FPGA übertragen, welcher sie in den MPEG-Datenstrom für DVB-C einschleuste. Er nutzte dafür den Platz der überflüssigen Satelliten-NIT beziehungsweise den von Stuffing-Paketen.
Eine weitere Funktion war das Aufstopfen von MPEG-2-Datenströmen auf eine höhere Standard-Datenrate, da Receiver nur auf wenigen Standard-Datenraten suchen und Transponder mit abweichender Datenrate nicht automatisch erkannt werden. Dies geschah durch das gezielte Einfügen von Stuffing-Paketen.
Da sich die Lage aller Pakete im Datenstrom dadurch verändert, musste für jedes MPEG-2-Datenpaket die Program Clock Reference (PCR) extrahiert, justiert und wieder eingefügt werden. Für jedes veränderte MPEG-2-Paket musste weiterhin die CRC korrigiert werden.
FPGA, ARM-Architektur
6/2002 – 6/2006
Tätigkeitsbeschreibung
Für eine TV-Kopfstelle habe ich die Softwareentwicklung für ein Bedienteil übernommen. Prozessor war ein 80C51.
Die Software war zum Übernahmezeitpunkt zu ca. 70\% implementiert, es waren aber nur noch 4 Bytes Speicher frei.
Mit dem Ziel, die verbleibenden Funktionen trotz der extremen Ressourcenknappheit vollständig zu implementieren, habe ich mich im Bereich hocheffizienter Code-Optimierung (u.~a. im Rahmen der Fachmesse \textit{Embedded World) gezielt weitergebildet. Durch die gezielte Optimierung des C-Codes gelang es mir, mehrere Kilobyte Speicherplatz freizusetzen und die Systemperformance spürbar zu steigern.
Da der verbleibende Gesamtfunktionsumfang den physikalischen Rahmen der alten Hardware dennoch überschritt, wurde im Projektverlauf eine Neuentwicklung auf Basis eines modernen ST ARM7-Prozessors und eines zeitgemäßen Displays
initiiert.
Die Systemrealisierung erfolgte anschließend im Team: Während ein erfahrener Kollege die Menüstruktur und Benutzeroberfläche für das Text-Display sowie die Konfigurationslogik für neuere Hardware-Module aufbaute, habe ich die älteren, bewährten Funktionsmodule der 80C51-Plattform architektonisch aufbereitet und in optimierter Weise performant auf die ARM7-Architektur portiert.
ARM-Architektur, Embedded Software, C (Programmiersprache)
Ausbildung
Hannover
Goslar
Hannover
Hannover
Über mich
Persönliche Daten
- Deutsch (Muttersprache)
- Englisch (Gut)
- Europäische Union
- Schweiz
Kontaktdaten
Nur registrierte PREMIUM-Mitglieder von freelance.de können Kontaktdaten einsehen.
Jetzt Mitglied werden
