Hardwarenaher (embedded, real-time, mikrocontroller) Softwareentwickler
- Verfügbarkeit einsehen
- 0 Referenzen
- auf Anfrage
- 38126 Braunschweig
- auf Anfrage
- ta | de | en
- 03.09.2024
Kurzvorstellung
Qualifikationen
Projekt‐ & Berufserfahrung
12/2022 – 10/2023
Tätigkeitsbeschreibung
Das Schwenk-Neige-Kamerasystem 4K-SNK (2 X Full HD 1920X1080, HDSDI, HDMI, 2 x PAL) wurde für die mobile Beweissicherung und Dokumentationsanforderungen der "Behörden" (Überwachungssystem) entwickelt.
Das ‘Bedienteil‘ dient zur Konfiguration des 4K-SNK-System. Ich bin verantwortlich für die Implementierung dieses 'Bedienteil'-Element (SW), das die folgenden Softwarekomponenten umfasst (außer 'board bring-up' und Einrichtung der Umgebung):
◦ SPI-Treiber für die Verwendung eines Joysticks (Bewegungen nach links, rechts, oben und unten für die Kamerapositionierung, Drehkopf für das Zoomen und Tasten für die Aufnahme und Beleuchtung)
◦ Grafiktreiber und HMI-Anwendung zur Konfiguration des 4K-SNK-Systems und der Kameras, Drucktasten zur Verwendung des HMI-Bildschirms ohne Berührung, vordefinierte Tasten/Drucktasten zur Voreinstellung der Kamerapositionen und verschiedene Encoder zur Lautstärkeregelung und Navigation auf dem HMI-Bildschirm (Menüs)
◦ Kommunikationstreiber/-modul, das Befehle als CAN-Nachrichten an das 4K-SNK-System sendet und Informationen und Befehle als CAN-Nachrichten empfängt und verarbeitet. (Kamerabefehle sind bereits im VISCA-Protokoll kodiert und werden als CAN-Nachrichten gesendet und empfangen)
ARM-Architektur
12/2021 – 2/2022
Tätigkeitsbeschreibung
Softwareentwicklung “Dashbike“:
Dashbike ist Ein ‘Dashcam für fahrad‘. Ich bin verantwortlich für das Design und die Implementierung (Low-Level-Programmierung) der folgenden Module auf dem ESP32 Mikrocontroller:
◦ Kommunikation mit dem Smartphone (BT, Wi-Fi), verbunden mit einer App
◦ Kommunikation mit FPFA (I2C, SPI), verbunden mit vielen Sensoren (IMU, US, GPS, Bildsensor...)
◦ Behandlung von Interrupts von/zu verschiedenen Komponenten/Sensoren
◦ REST-Server-Implementierung zum Abrufen verschiedener Daten und Bilder vom FPGA
Echtzeit-Betriebssysteme
5/2017 – 4/2018
Tätigkeitsbeschreibung
Softwareentwicklung “Software für DreamChip“:
* FPGA mit 4 x ARM Cortex-A53 (APU) und 2 x ARM Cortex-R5 (RPU) Mikrocontrollern
* Mikrocontrollern Low-Level Programmierung
* Implementierung der Start-up der R5 Kerne (in ‚Split‘ Modus) und Interrupts-Handling in ‚Vector‘ Modus in Assembly
* Integration und Anpassung der eigene Betriebssystem (RTOS) für jede R5 Kerne - FreeRTOS
* Implementierung Low-Level Treibern für Mikrocontroller Units: ADC (PL), DMA, GIC, SPI (PL), TTC und UART
* Implementierung Low-Level Treiber für Kommunikation zwischen RPU und APU über IPI – Inter Processor Interrupt
* Implementierung Low-Level Treiber für ‚CPU-Load Rechner‘
* Integration, Konfiguration und Optimierung – FreeRTOS (Betriebssystem)
* System Run-time Performance und Optimierung
Umgebung: Xilinx UltraScale+ XCZU3EG (ARM Cortex-R5, -A53), FreeRTOS, Linux (UBoot, Yocto), Bare-metal, C, Assembly, GCC, CMake, Build system, Platform Cable II USB (Xilinx Debugger), Vivado (HW Design Tool), Xilinx SDK (Eclipse based)
Embedded Entwicklung / hardwarenahe Entwicklung, FPGA, Echtzeit-Betriebssysteme, ARM-Architektur, Assemblersprache, C, Firmware, Linux Entwicklung, Softwareentwicklung (allg.), Automotive Open System Architecture
3/2013 – 2/2015
Tätigkeitsbeschreibung
Softwareentwicklung “Basis Software für Elektronische Lenksystem (EPS-BSW)“:
* Mikrocontroller Low-Level Programmierung
* Implementierung der Start-up (BSP, MMU, pBridge) und Interrupts-Handling in „HW Vector Mode“ in Assembly
* Implementierung des eigenen Stack-Verwaltung für Interrupt-Kontext
* Umstellung (Leopard) von Single-core (Lock-Step Mode) auf Dual-core (Decoupled Parallel Mode)
* Implementierung Low-Level Treibern für Mikrocontroller Units: ADC, CTU, DMA, PWM, SPI, SWG
* Implementierung Low-Level Treiber für Drehmomentsensor (SENT-Protocol)
* Device-Treiber-Entwicklung – Externe HW Einheiten: System Basis Chip (SBC) und Gate (MOSFET) Driver Unit (GDU)
* Integration, Konfiguration und Optimierung – RTOS (Betriebssystem)
* Integration der Bootloader
* System Run-time Performance und Optimierung
Umgebung: Freescale MPC5643L (Leopard), MPC5744P (Panther), Renesas RH850/P1x, C, Assembly, FlexRay, XCP, µCOS-II, ISO 26262, AUTOSAR, LINT, MISRA, Lauterbach Trace32 Debugger, Green Hills, Electrobit Tresos Studio, Vector Tools, Synergy CM/CR, DOORS, FEMA
Embedded Entwicklung / hardwarenahe Entwicklung, STM32, Echtzeit-Betriebssysteme, Software Design, Assemblersprache, C, Firmware, Softwareentwicklung (allg.), Gerätetreiber, Automotive Open System Architecture
3/2012 – 3/2013
Tätigkeitsbeschreibung
Beschreibung:
Softwareentwicklung “ECU - Elektronische Lenksystem (C-EPS)“:
* Mikrocontroller Low-Level Programmierung in "C" und Assembly
* Device-Treiber-Entwicklung - System Basis Chip (SBC), Gate Driver Unit (GDU), Hall Sensors
* Integration und Konfiguration der AUTOSAR-Softwarekomponenten
* System Start-up, Run-time Performance und Optimierung
Umgebung: Freescale MPC5643L (Leopard), C, Assembly, CAN, XCP, AUTOSAR, ISO 26262, AUTOSAR, LINT, MISRA, Lauterbach Trace32 Debugger, Green Hills, Electrobit Tresos Studio, Vector Tools, Synergy CM/CR, DOORS, FEMA
Embedded Entwicklung / hardwarenahe Entwicklung, STM32, Echtzeit-Betriebssysteme, Software Design, Assemblersprache, C, Firmware, Softwareentwicklung (allg.), Gerätetreiber, Automotive Open System Architecture
12/2009 – 3/2012
Tätigkeitsbeschreibung
Softwareentwicklung “Gen2 Navigation and Infotainment System (GM NextGen)“ für GM (General Motors)
* Integration der Betriebssystemen (LINUX und TEngine) und MOST basierte Software Feature Komponenten
* Start-up, Run-time Performance und Optimierung
* Debuggen und Trouble-Shooting
Umgebung: Triton Prozessor (ADIT Multi-core), LINUX, TEngine OS, C++, Assembly, MOST, K2L MOST Tools und Simulation, LINT, Lauterbach Trace32 Debugger, ClearCase, DOORS, UML, Enterprise Architect
Embedded Entwicklung / hardwarenahe Entwicklung, Echtzeit-Betriebssysteme, Assemblersprache, C++, Firmware, Linux Entwicklung, Softwareentwicklung (allg.), Gerätetreiber, Fahrerassistenzsysteme, MOST-Bus (media oriented systems transport)
3/2007 – 6/2009
Tätigkeitsbeschreibung
Softwareentwicklung “Radio Navigation System (VW RNS310)“
* Integration der Software Feature Komponenten
* Debug und Trouble-shooting
* Software Design und Implementierung der Software Modul dass kommuniziert mit externe Geräte im Auto über CAN. (Kombi-Instrument, Multifunktions- Lenkrad und Klima)
Umgebung: ARM9 Prozessor, Nucleus OS, C++, Assembly, CAN, Vector CAN Tools, LINT, Lauterbach Trace32 Debugger, ClearCase, DOORS, UML, Enterprise Architect
Embedded Entwicklung / hardwarenahe Entwicklung, Echtzeit-Betriebssysteme, ARM-Architektur, Software Design, Assemblersprache, C++, Firmware, Softwareentwicklung (allg.), Gerätetreiber, Fahrerassistenzsysteme
4/2005 – 2/2007
Tätigkeitsbeschreibung
Softwareentwicklung “Mobile Phone Software Plattformen MPE & MPEU“
* Gesamte System Software Integration (Treibern, Betriebssystem und Anwendungssoftware)
* Debug und Trouble-shooting (3rd Party Software)
* Software Design und Implementierung der Integration Tools
Umgebung: ARM9 Prozessor, Nucleus OS, C++, Assembly, Perl, Lauterbach Trace32 Debugger, ClearCase, DOORS, UML, Enterprise Architect
Embedded Entwicklung / hardwarenahe Entwicklung, Echtzeit-Betriebssysteme, ARM-Architektur, Assemblersprache, C++, Firmware, Perl, Softwareentwicklung (allg.), System Architektur, Gerätetreiber
4/2004 – 3/2005
Tätigkeitsbeschreibung
Chip-Level Validierung “Intel optischen Netzwerk Transport-Prozessor IXF300xx und UFEC“
* Software-Entwicklung der automatischen Test-Tools, für alle Test-Cases
Umgebung: StrongARM Prozessor, nanoEngine mit Linux-2.4.2, C++, CVS, Rohde & Schwarz, Agilent
Embedded Entwicklung / hardwarenahe Entwicklung, Test Automation, Assemblersprache, C, Firmware, Perl, Softwareentwicklung (allg.), Isdn, Telekommunikation / Netzwerke (allg.), Optische Messtechnik
4/2003 – 3/2004
Tätigkeitsbeschreibung
Softwareentwicklung “Automatischen Standard-Software-Test (ASST) Umgebung für CAN Netzwerk Management und Transport Protokoll“
* Software Design und Implementierung der CAN-Treiber, CAN-Netzwerk Management, CAN-TP, RS-232 Treiber und gesamte Kontroller Software für MPC555 (Motorola PowerPC) Mikrocontroller
* Implementierung der PC Anwendung für Steuerung der Mikrocontrollern (über Serielle Schnittstelle) Motorola PowerPC (MPC555), Infineon 80C167, Motorola 68HC12
Umgebung: Motorola PowerPC (MPC555), Infineon 80C167, Motorola 68HC12 Mikrocontrollern, C++, RISC Architektur Assembly, Diab Tool-chain, Vector CAN Tools, Visual C++ & MFC
Embedded Entwicklung / hardwarenahe Entwicklung, Assemblersprache, C, Firmware, Softwareentwicklung (allg.), Gerätetreiber, Picmicro, CAN-Bus (controller area network)
7/2002 – 3/2003
Tätigkeitsbeschreibung
Softwareentwicklung “Restbus Simulation Board“
* Software Design, Implementierung und Dokumentation eines Teils der Controller Board Software, die auch CAN-Knoten und CAN-Nachrichten Handhabung, Digital I/O Funktionen einschließlich PWM Generation, I/O Ports Handhabung und PC-Kommunikation
Umgebung: Infineon C167CS Mikrokontroller, C und Assembly, Tasking tool-chain, Vector CAN Tools
Embedded Entwicklung / hardwarenahe Entwicklung, Assemblersprache, C, Firmware, Softwareentwicklung (allg.), Picmicro, CAN-Bus (controller area network)
4/2001 – 6/2002
Tätigkeitsbeschreibung
Softwareentwicklung “Transponder Board für Ericsson Optische Netzwerk System (ERION) 5.0“
* Design, Implementierung und Dokumentation der Kommunikation zwischen dem Transponder Board und einem externen Control-Prozessor (CP)
* Steuerung- und Konfiguration Nachrichten Handhabung
* Synchronisation und Koordinierung der Modulen auf dem Board
Kommandozeilen-Benutzerinterface durch die serielle Schnittstelle zur Überwachung der Board-Status und die Konfiguration der Board
Umgebung: MPC860 Power QUICC (Motorola Power PC) Prozessor, OSE-Delta OS, C, Assembly, UNIX host, ClearCase
Embedded Entwicklung / hardwarenahe Entwicklung, Echtzeit-Betriebssysteme, Assemblersprache, C, Firmware, Softwareentwicklung (allg.), Telekommunikation / Netzwerke (allg.), Picmicro, Optische Messtechnik
10/1999 – 3/2001
Tätigkeitsbeschreibung
Softwareentwicklung “Switch Control Plattform für Ericsson Access 910“
* Design, Implementierung und Dokumentation einige Task Handlers und Gerätetreiber
* Inter-Prozessor Kommunikation (IPC) task handler und Gerätetreiber
* Synchronisation handler, Time-Switch handler, Memory management handler
* Low-Level (OS, Treiber und BSP-Ebene) Debug-Tools für Trouble-Shooting
Umgebung: PowerPC 603 Prozessor, VxWorks, OSE-Delta, C, Assembly, Diab Compiler, Tornado Tools, UNIX host, ClearCase
Embedded Entwicklung / hardwarenahe Entwicklung, Echtzeit-Betriebssysteme, UNIX, Vxworks, Assemblersprache, C, Firmware, Softwareentwicklung (allg.), Telekommunikation / Netzwerke (allg.), Picmicro
4/1998 – 9/1999
Tätigkeitsbeschreibung
Softwareentwicklung “Vehicle Fleet Management System“
* Design, Implementierung und Dokumentation von Fahrzeug-Software
GUI für On-Board-Monitor (Klein)
* GSMMgr (COM-Objekt): GSM Manager - Handhabung der SMS-Nachrichten von und zum zentralen Stelle auf das GSM-Netz (mit Nokia Data Karte, die mit dem PC verbunden ist)
* RouteMgr (COM-Objekt): Route Manager - für die Kommunikation mit dem mobilen Navigationssystem
Umgebung: Intel Prozessor, Windows NT, Microsoft Visual C++ mit MFC und ATL (COM, DCOM), Rational Rose
Microsoft Foundation Classes (MFC), Softwareentwicklung (allg.), Visual C++, DCOM (Distributed Component Object Model), GSM/GPRS
1/1996 – 3/1998
Tätigkeitsbeschreibung
Softwareentwicklung “Schnittstelle zwischen RCON Gerät und PUMA Echtzeit Motor Test Bett“
* Design und Implementierung der RCON Windows-Anwendung unter Win-NT, die kommuniziert und steuert das Gerät RCON
* Design und Implementierung der RCON Echtzeit Task (VxWorks) - Handhabung der Nachrichten und Daten zwischen der Anwendung und PUMA-System
Umgebung: Motorola 68K und Intel Prozessoren, VxWorks, Windows NT, C, Visual C++ & MFC
Embedded Entwicklung / hardwarenahe Entwicklung, Echtzeit-Betriebssysteme, Vxworks, Microsoft Foundation Classes (MFC), Softwareentwicklung (allg.), Visual C++, Picmicro
Ausbildung
Madurai Kamaraj University, Madurai, Indien
Über mich
Ich habe sehr gute praktische Erfahrungen im Bereich sicherheitsrelevanter Lenksysteme einschließlich Elektromotoren für ein Aktivlenksystem bei eine größte deutsche Automobilkonzern und im Bereich Fahrerassistenzsysteme bei eine Größe deutsche Automobilzulieferer.
Ich kann auf Englisch sprechen/schreiben (kompetent).
Weitere Kenntnisse
Betriebssystemen: FreeRTOS, Linux (Linux – UBoot, Yocto), µCOS-II, VxWorks, Nucleus, OSE-Delta, OSEK, TEngine, Windows, UNIX, POSIX
Hardware: ARM Cortex M4, ARM Cortex R5, ARM Cortex A53, ARM SoCs, ESP32, Freescale MPC5643L (Leopard), Freescale MPC5744P (Panther), Renesas RH850/P1x, POWER QUICC, Motorola MPC55x, PowerPC 603, Motorola 68K, Infineon C16x, Intel 80x86, Intel IXF300xx
Norms und Standards: Automotive SPICE, V-Model, Waterfall Model, CMMI, ISO 26262 (FuSi), FEMA, MISRA, LINT, Polyspace
Peripherien, Bussysteme und Protokolle: DMA, ADC, PWM, SPI, USB, I2C, UART, Timers, CAN, LIN, FlexRay, MOST, TCP/IP, Ethernet, SDH/SONET, OTN, GSM
Tools und Methoden: Xilinx SDK, Vivado, Platform Cable II USB (Xilinx Debugger), GNU Compiling Tools (GCC), CMake, MontaVista LINUX tool-chain, Green Hills, Code Warrior, RVCT-ARM tool-chain, Wind River Diab, Lauterbach Trace32 Debugger, Single-Step Debugger, Tornado Tools, Tasking EDE, CrossView Debugger, Eclipse, NI Lab Windows/CVI, Vector CAN Tools (CANalyzer, CANdb, CANgen, CANoe), Windows DDK, Windows SDK, Git, ClearCase, Synergy CM/CS, CVS, PVCS, Rational Rose, DOORS, Enterprise Architect, UML, OOA, OOD, Microsoft COM, DCOM, ActiveX
GUI: LVGL, Visual C++/MFC, Borland C++/OWL, Visual Basic, Delphi
Persönliche Daten
- Tamil (Muttersprache)
- Deutsch (Fließend)
- Englisch (Fließend)
Kontaktdaten
Nur registrierte PREMIUM-Mitglieder von freelance.de können Kontaktdaten einsehen.
Jetzt Mitglied werden