Home

Technologies and Platforms

Programming languages, hardware platforms, bus systems and tools — the choice follows the project requirements, not my preference.

This page gives a compact overview of the technologies I work with. The list is not exhaustive — it names the platforms, languages and tools that frequently appear in my projects or that I consider particularly relevant for embedded development. If your specific platform is not listed here, that does not necessarily mean lack of experience; in embedded projects, concepts often transfer to other platforms once the task is clear.

Languages

1. Programming and Hardware-Description Languages

Language selection by task: hardware-near and resource-efficient in C or assembler, object-oriented in C++, FPGA logic in VHDL and SystemVerilog, tools and analysis in Python.

  • C — main language for microcontroller firmware, from bare-metal to FreeRTOS
  • C++ — for more complex embedded applications with object structures, MISRA-conformant where required
  • Assembler — for extreme constraints, hardware drivers, boot code and reverse engineering
  • VHDL — FPGA designs with strong structural clarity
  • SystemVerilog — modern FPGA development, testbenches, verification
  • Verilog — classical FPGA description
  • Python — test automation, tool scripts, data analysis, web backends
  • Kotlin — for companion Android apps to embedded devices
  • JavaScript / HTML / CSS — web frontends and configuration interfaces
MCU

2. Microcontroller Platforms

Experience with all microcontroller platforms established in the embedded market — from high-performance ARM Cortex to cost-optimised Atmel chips, both as bare microcontrollers and as board platforms such as Arduino or BeagleBone.

  • ARM Cortex-M — the standard platform for medium requirements
  • ARM Cortex-A — when Linux or more compute power is required
  • ESP32 — Wi-Fi/Bluetooth-capable embedded applications
  • Atmel / Microchip AVR — e. g. ATmega family for price-sensitive projects
  • Arduino — fast prototyping, teaching and demonstrations
  • BeagleBone — ARM Cortex-A platform with Linux for more demanding applications
  • Microcontrollers with minimal memory — bare-metal, no real-time OS (Stihl project as example, see references)
  • additional platforms on request
FPGA

3. FPGA Platforms

FPGA development from specification to verification. Focus on Xilinx products, familiar with the modern toolchains and verification methods.

  • Xilinx Artix-7 — cost-efficient FPGAs for control and signal processing
  • Xilinx Zynq — combined ARM+FPGA platform for complex systems
  • Vivado — toolchain for synthesis, implementation and programming
  • Icarus Verilog / Verilator — open-source simulators for fast iteration
  • SystemVerilog testbenches — structured verification of FPGA designs
Bus

4. Bus Systems and Communication Protocols

Experience with bus systems established in the automotive, industrial and embedded environments — from hardware-near implementation to diagnostics.

  • CAN / CAN FD — automotive and industrial standard
  • MOST — infotainment bus with experience from the Audi project (see references)
  • Ethernet / EtherCAT — real-time-capable industrial communication
  • SPI / I²C / UART — standard interfaces for sensors and peripherals
  • UDS (ISO 14229) — diagnostic protocol for ECUs
  • WebSocket / MQTT — for IoT and cloud connectivity
RTOS

5. Real-Time Operating Systems and Frameworks

Software architecture chosen by project requirement — from bare-metal on tight microcontrollers to full real-time operating systems with multi-core architecture.

  • Bare-metal — when memory and determinism matter
  • FreeRTOS — the de-facto standard for RTOS on microcontrollers
  • Multi-core architectures — distribution of tasks across multiple cores
  • Embedded Linux — on platforms such as BeagleBone, where applications benefit from it
Tools

6. Tools, Test Frameworks and IDEs

Tools are means to an end. I work with what fits the project — and can familiarise myself with unfamiliar toolchains quickly when project-relevant.

  • Vector CANoe / CAPL — standard for automotive tests and bus simulation
  • LabView — measurement and control software
  • Robot Framework — end-to-end test automation
  • HIL setups — hardware-in-the-loop for integrated system tests
  • Pulsonix — schematic and PCB layout tool
  • Vivado — Xilinx FPGA toolchain
  • Git / GitLab — version control and code review
  • Wireshark — network and bus analysis
Web/App

7. Web and App Technologies (for Companion Software)

When embedded devices need a configuration interface, a dashboard or a mobile app, I can also deliver the companion software.

  • JavaScript / HTML / CSS — web frontends
  • Chart.js — browser-based data visualisation
  • Python / Flask — web backends
  • Node.js — server components
  • Socket.IO / WebSocket / MQTT — real-time data transmission
  • Kotlin — Android apps for embedded devices
  • REST APIs — standardised interfaces between embedded and cloud

What Is Not on This List

This page names the frequently used technologies — it is not a complete catalogue. If your platform, language or tool is not listed here, it is still worthwhile to discuss the project. In embedded development, what matters in the end is less which specific toolchain one knows and more how quickly one can adopt a new toolchain and how deeply the underlying concepts are understood.

Color Scheme

Language