TRENKWALDERPersonal Webpage
.01

ABOUT

PERSONAL DETAILS
Mollardgasse 48a, 1060 Vienna, Austria
mapiconimg
stefan@trenkwalder.tech
+43 699 1987 0000
Hi! I am an embedded engineer specialised in RTOS and embedded software engineering. I am passionate about integrating modern development methods into the embedded world. Available as freelance

BIO

ABOUT ME

I graduated from the Federal Higher Technical Institute for Educating and Experimenting for Chemistry (Vienna) in chemistry in 2006 and was awarded an Austrian “Ingenieur” degree in 2011. After studying two degrees at the Vienna University of Technology (TU Wien) in parallel, I was awarded a BSc in electrical, electronics and communications engineering by the Faculty of Electrical Engineering in 2011 and a BSc in computer engineering by the Faculty of Informatics in 2012. After researching at the University of Sheffield, UK, I was awarded a PhD in robotics/operating systems. I am particularly proud that I've been one of the few recipients of DOC-Fellowship of the Austrian Academy of Sciences.

Throughout and between my studies, I have been working as a designer/developer of electronic devices, software for embedded systems, and desktop applications. In addition, I was a founding member and chief developer at SZ Informationstechnik, where I developed an automatic announcement software used on public transport (operated by the Wiener Linien) all across Vienna.

After teaching at the University of Sheffield and afterwards as a senior lecturer at the University of Applied Sciences Technikum Wien, I am currently working as an advanced software engineer at Great Wall Motors Austria. I am involved in embedded software engineering, software architecture, and the automation of development processes. I am particularly proud to have had an impact on the agility of the processes. My primary areas of competencies are computer architecture, embedded software engineering, agile methods, operating systems, and RTOSs.

MY FAMILY

My Wife

Since 2021, I'm married to the most intelligent and gifted person that I know. She works with languages and I'm lucky to have her in my life.

My wife, Izabela

MY DOG

Nanook

He is a Husky and super sweet.

My dog, Nanook

INTERESTS

Interests and Hobbies

I am lucky to be able to spend a lot of time doing what I love, or is it because I spent a lot of time doing it that I started to love it. In any case, I am passionate about software development. As a result, I spend a considerable amount of time honing my programming skills by, for instance, improving my agile practices or keeping up with the newest C++ features. I recently started with and became quite fond of Circle, which lifts C++ to a whole new level.

Besides my technical hobbies, I also try to apply my training/knowledge of chemistry to cooking/baking. I won't lie, when it comes to baking, I have mixed results 🤷. That's why I'm currently educating myself about the underlying chemistry and science of cooking. Fingers crossed ...

A past hobby of mine was flying single-engine planes. I got 2013 my private pilot license and flew for a while. Even though I treasure the time and the experience, the costs and environmental impact always bothered me. So, I decided not to continue with it. Luckily, I had plenty of alternative things to fill my new-found free time.

.02

RESUME

>10 years experience

C & C++

PhD in RTOS

PROFESSIONAL POSITIONS
  • Today
    2021
    Kottingbrunn, Austria

    Advanced Software Engineer

    Great Wall Motors R&D Austria

    I am involved with:
      -) component development (C, Autosar, ISO26262)
      -) multi-core architecture and RTOS
      -) automation of build processes (git, python, make)
      -) introduction of test-driven development (TDD), and other agile methods
  • 2020
    2020
    Vienna, Austria

    Senior Lecturer

    University of Applied Sciences, Technikum Wien, Austria

    At the faculty of electronic engineering, I was part of the embedded systems group teaching:
     -) digital systems and computer architecture (from transistor to processors)
     -) hardware-near software engineering (C development)
     -) embedded systems software (C + RTOS)
  • 2019
    2014
    Sheffield, UK

    Teaching Assistant

    University of Sheffield

    I was teaching C, C++, and robotics to undergraduates and master students.
  • 2016
    2013
    Remote

    Contracting: Software Engineer

    SZ Informationstechnik

    I provided assistance, maintained code (C++, Qt), reduced technical debt, and fixed rarely discovered bugs.
  • 2013
    2011
    Vienna, Austria

    Chief Developer (R&D)

    SZ Informationstechnik

    I designed & developed the automated announcement software used by the Wiener Linien on subways across Vienna. I developed cross-platform server application, client software, and maintenance GUI (C++, Qt, SQL).
  • 2008
    2008
    Vienna, Austria

    Contracting: Software Engineer

    Mattig Schauer Gmbh

    I redesigned and developed the automated announcement software used by the ÖBB (Austrian Federal Railway) on every station across VIenna.
  • 2004
    2004
    Vienna, Austria

    Antibiotics Research Laboratory Intern

    Novartis

    I synthesised new antibiotic-derivates to be tested.
  • 2003
    2003
    Vienna, Austria

    Antibiotics Research Laboratory Intern

    Novartis

    I synthesised new antibiotic-derivates to be tested.
EDUCATION
  • 2020
    2013
    Sheffield, UK

    Robotics / Embedded Operating Systems - PhD

    University of Sheffield

    During this period, I researched on:
      -) classifications of computational devices
      -) a novel RTOS for computationally severely-constraint robots
      -) optical communication for high density robotic swarms
      -) how to overcome computational constraints of individual robots by using the computational resources of the swarm
    You can read/download my thesis for free here.
  • 2012
    2006
    Vienna, Austria

    Computer Engineering - BSc

    Faculty of Computer Science, Vienna Technical University

    I've studied computer science, with a focus on embedded systems and computer engineering in the last year.
  • 2011
    2007
    Vienna, Austria

    Electrical and Electronic Engineering - BSc

    Faculty of Electrical Engineering, Vienna Technical University, Austria

    In my last year of studies, I specialised on automation & control and biomedical engineering
HONORS AND AWARDS
  • 2018
    2014

    DOC Fellowship

    Austrian Academy of Sciences

    My PhD project was awarded the DOC Fellowship, which is awarded to a small number of PhD candidates after being evaluating by international leading experts.
.03

SKILLS

PROGRAMMING SKIILLS
Embedded Programming > I specialised early on in embedded systems and most of my experience is in that sector. I am particularly proud to have developed an RTOS during my PhD. I also always strive to advance my skill set within this sector and learn new languages, like Rust.
LEVEL : EXPERT EXPERIENCE : 10+ Years
C C++ RTOS Rust
Application Development > I've developed several applications over the year. Most commonly, I used C++ and Qt to make it corss-platform. In my PhD, I developed applications to conduct systematic experiments. In my professional life, I used it to develop server/client as well as end-user applications.
LEVEL : ADVANCED EXPERIENCE : 9 YEARS
C C++ Python Qt WinAPI OpenCV
Agile Development > I started to hone agile methodologies a few years back and practice it ever since. I am particularly interested to apply these methods in the embedded world, as they haven't been well-established yet. I am also proud to have introduced agile methods at some of my workplaces.
LEVEL : INTERMEDIATE EXPERIENCE : 3 YEARS
SCRUM Kanban TDD Pair Programming
PROCESSES & AUTOMATION
Build Automation > I've used automated pipelines, such as GitLab CI/CD, set up custom runners, automated build, test, and deploy stages.
LEVEL : ADVANCED EXPERIENCE : 7 YEARS
GitLab CI/CD Python Docker
Process Automation > I've witten scripts to automate processes allowing efficent use of infrastructure and the programmer's time. In addition, I set up automated static analysis, test, and coverage environments.
LEVEL : ADVANCED EXPERIENCE : 4 YEARS
Regression Tests GTest CppUTest Coverage Git Python
STANDARDS
AUTOMOTIVE > At my work, in the automotive industry, I learned a lot about automotive standards and regulations.
LEVEL : Intermediate EXPERIENCE : 1 YEAR
Classic AUTOSAR ISO 26262 Automotive SPICE
.04

TECH STACK

Languages
C
98%
C++
90%
Python
60%
R
50%
Rust
25%
Java
20%
Frameworks
CppUTest
95%
Google Test
80%
RTOS
75%
Qt
55%
OpenCV
45%
MY PRACTICES
  • Test-Driven Development (TDD)
  • SOLID
  • Continuous Integration
  • Pair-Programming (when possible)
  • SCRUM / KANBAN
  • SCM: GIT
.05

RESEARCH

RESEARCH PROJECTS

Computational Constraints of Miniature Robots

Statistical analysis of computational constraints

When it comes to describing robots, many roboticists choose to focus on the size, types of actuators, or other physical capabilities. As most areas of robotics deploy robots with large memory and processing power, the question “how computational resources limit what a robot can do” is often overlooked. However, the capabilities of many miniature robots are limited by significantly less memory and processing power. At present, there is no systematic approach to comparing and quantifying the computational resources as a whole and their implications. This letter proposes computational indices that systematically quantify computational resources-individually and as a whole. Then, by comparing 31 state-of-the-art miniature robots, a computational classification ranging from non-computing to minimally constrained robots is introduced. Finally, the implications of computational constraints on robotic software are discussed.

Download:

Real-Time Operating Systems for constraint robots

Design, development, and analysis of a novel RTOS

My research resulted OpenSwarm, a lightweight easy-to-use open-source operating system. To my knowledge, it is the first operating system designed for and deployed on miniature robots. OpenSwarm operates directly on a robot's microcontroller, with a memory footprint of 1 kB RAM and 12 kB ROM. OpenSwarm enables concurrent processing through its hybrid kernel. This kernel natively supports preemptive and cooperative scheduling, making it suitable for both computationally intensive and swiftly responsive robotics tasks. OpenSwarm provides hardware abstractions to write platform-independent code.

In my research, I show how OpenSwarm can be used to solve an established problem in swarm robotics (i.e., clustering of dispersed objects). With the conducted experiments, it was shown OpenSwarm performs as good as a none-portable hardware-near implementation.

The primary goal of this research was to make severely-constrained robots more accessible, which might help such systems to be deployed in real-world applications.

Download:

Optical and Scalable Communication for high-density swarms

Design and analysis of a novel optical communication

Swarm robotics investigates groups of relatively simple robots that use decentralized control to achieve a common goal. While the robots of many swarm systems communicate via optical links, the underlying channels and their impact on swarm performance are poorly understood. This paper models the optical channel of a widely used robotic platform, the e-puck. It proposes SwarmCom, a mobile ad-hoc network for mobile robots. SwarmCom has a detector that, with the help of the channel model, was designed to adapt to the environment and nearby robots. Experiments with groups of up to 30 physical e-pucks show that (i) SwarmCom outperforms the state-of-the-art infra-red communication software—libIrcom—in range (up to 3 times further), bit error rate (between 50 and 63% lower), or throughput (up to 8 times higher) and that (ii) the maximum number of communication channels per robot is relatively low, which limits the load per robot even for high-density swarms. Using channel coding, the bit error rate can be further reduced at the expense of throughput. SwarmCom could have profound implications for swarm robotics, contributing to system understanding and reproducibility, while paving the way for novel applications.

Download:

Distributed Processing on Constrained Devices

A proof of concept applied to robotic swarm

In this work, I extended my operating system, OpenSwarm, to be a distributed operating system for severely constrained robots. With this work, I showed how swarms of robots can process data and algorithms that individual robots cannot. I showed that the robots performed mapping and path planning on a map that exceed the memory constraints of the individual robots.

.06

PUBLICATIONS

2020

Lopes, Yuri Kaszubowski; Trenkwalder, Stefan M.; Leal, André B; Dodd, Tony J; Groß, Roderich

Supervisory Control of Robot Swarms Using Public Events Conference

2020 IEEE International Conference on Robotics and Automation (ICRA), IEEE, 2020, ISBN: 978-1-7281-7395-5.

Abstract | Links | BibTeX | Tags:

Trenkwalder, Stefan M.

Classification and Management of Computational Resources of Robotic Swarms and the Overcoming of their Constraints PhD Thesis

2020.

Abstract | Links | BibTeX | Tags:

2019

Trenkwalder, Stefan M.; Esnaola, Iñaki; Lopes, Yuri Kaszubowski; Kolling, Andreas; Groß, Roderich

SwarmCom: an infrared-based mobile ad-hoc network for severely constrained robots Journal Article

In: Autonomous Robots, vol. 44, iss. 1, pp. 93-144, 2019.

Abstract | Links | BibTeX | Tags:

Trenkwalder, Stefan M.

Computational Resources of Miniature Robots: Classification and Implications Journal Article

In: IEEE Robotics and Automation Letters, vol. 4, iss. 3, pp. 2722-2729, 2019, ISSN: 2377-3766.

Abstract | Links | BibTeX | Tags:

2018

Perez-Diaz, Fernando; Trenkwalder, Stefan M.; Zillmer, Rüdiger; Groß, Roderich

Emergence and inhibition of synchronization in robot swarms Conference

Distributed Autonomous Robotic Systems: The 13th International Symposium, vol. 6, Springer, 2018, ISBN: 978-3-319-73008-0.

Abstract | Links | BibTeX | Tags:

2017

Lopes, Yuri Kaszubowski; Trenkwalder, Stefan M.; Leal, André B; Dodd, Tony J; Groß, Roderich

Probabilistic Supervisory Control Theory (pSCT) Applied to Swarm Robotics Conference

AAMAS '17: Proceedings of the 16th Conference on Autonomous Agents and MultiAgent Systems, IFAAMAS, 2017.

Abstract | Links | BibTeX | Tags:

2016

Trenkwalder, Stefan M.; Lopes, Yuri Kaszubowski; Kolling, Andreas; Christensen, Anders Lyhne; Prodan, Radu; Groß, Roderich

OpenSwarm: An event-driven embedded operating system for miniature robots Conference

2016 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), IEEE, 2016, ISSN: 2153-0866.

Abstract | Links | BibTeX | Tags:

Lopes, Yuri Kaszubowski; Trenkwalder, Stefan M.; Leal, André B; Dodd, Tony J; Groß, Roderich

Supervisory control theory applied to swarm robotics Journal Article

In: Swarm Intelligence, vol. 10, pp. 65-97, 2016.

Abstract | Links | BibTeX | Tags:

.07

TEACHING

  • 2020
    2020
    Vienna, Austria

    SENIOR LECTURER

    University of Applied Sciences Technikum

    At the Faculty of Electronic Engineering, I was part of the embedded systems group teaching:
    -) Digitale Systeme und Rechnerarchitekturen
      [Digital Systems an Computer Architecture]
    -) Hardwarenahe Softwareentwicklung
      [Hardware-near Software Engineering] (C)
    -) Embedded Systems Software (Embedded C, TI RTOS)
  • 2017
    2014
    Sheffield, UK

    TEACHING ASSISTANT

    The University of Sheffield

    I was teaching:
    -) C Programming
    -) C++ Programming
    -) Mobile Robotics

    I was also co-supervising undergraduate and master-level students in their group and final-year projects.
.08

CONTACT

Drop me a line

GET IN TOUCH