Development of embedded software. Consulting services (Software desing, implementation and verification).
2020
For a customer in the USA I have implemented an SPI-based communication channel software for a motor controller board and NVIDIA Jetson Nano development board. I have also adapted that software to an existing API library of said motor controller, preserving the existing API interface.
2019
For a customer in München I (as a part of a team) was tasked to implement a Software Framework API for a new model of ECU, based on an existing specialized Embedded RTOS.
2018
For a customer in München I (as a part of a team) was tasked to integrate an FSoE Safety protocol layer on top of an existing EtherCAT protocol into an existing prototype of safety-relevant application (a human-machine interaction system).
2018
For a customer in region Frankfurt am Main: A Battery Management System product firmware extension and bug fixing. I was tasked to figure out a lost/legacy procedure of bootloader and firmware update of a battery management system, fix issues with overcurrent of the battery load and model a charg/discharge process to verify a correct functioning of introduced changes for a legacy firmware that has already been longer time deployed to the end customer.
2017 - 2018
For a customer in Berlin: Platform and communcation channelindependet abstraction software layer library design and implementation. The abstraction layer was meant to hide the connection and transmission-related details from the application layer software. The layer covered GPRS and WiFi as a network interfaces and acted as unified software facade.
2017
For a customer in USA: Floating/submercing meteorology-buoy controll software and communication interface design. Proof of concept implementation. The challange on the project was to suggest a compete solution to the customer, and consider maintenance procedure (the system is difficult to access once deployed). Requirements analysis was also a non-trivial task – the customer had very deep understanding and practical experience in the field but no systematic approach to formulate the acceptance criteria and requirements in general. I had to suggest an electronics design as well as software solution (both application and system level). Another challenge was that the system can be deployed only during particilar weather conditions – making period from November to March not suitable for testing and effective development. Partial system simulation has been used to save testing efforts.
2017
For a customer in Ireland: Feasibility study for qr-code recognition library. Suggested and set up a stress test for most popular qr-code recognition libraries. Based on processing involving provided sets of images suggested the library that would cover the requirements. The challenge on the project was to provide a unified set of metrics to compare libraries and to prove to the customer that the suggested library meets the expectations.
FPGA configuration download protocol optimization, flashing/update tool refactoring. Design and implementation of motor controller command iterpreter. Integration of scripting engine (BASIC-like scripting language) into a motor controller firmware.
Version control systems
Bugtracking
Platforms
Documentation
Coding Standards
Development Methodologies
Build/Deployment Automation
Libraries and Frameworks
Packaging Tools
IDEs
Development of embedded software. Consulting services (Software desing, implementation and verification).
2020
For a customer in the USA I have implemented an SPI-based communication channel software for a motor controller board and NVIDIA Jetson Nano development board. I have also adapted that software to an existing API library of said motor controller, preserving the existing API interface.
2019
For a customer in München I (as a part of a team) was tasked to implement a Software Framework API for a new model of ECU, based on an existing specialized Embedded RTOS.
2018
For a customer in München I (as a part of a team) was tasked to integrate an FSoE Safety protocol layer on top of an existing EtherCAT protocol into an existing prototype of safety-relevant application (a human-machine interaction system).
2018
For a customer in region Frankfurt am Main: A Battery Management System product firmware extension and bug fixing. I was tasked to figure out a lost/legacy procedure of bootloader and firmware update of a battery management system, fix issues with overcurrent of the battery load and model a charg/discharge process to verify a correct functioning of introduced changes for a legacy firmware that has already been longer time deployed to the end customer.
2017 - 2018
For a customer in Berlin: Platform and communcation channelindependet abstraction software layer library design and implementation. The abstraction layer was meant to hide the connection and transmission-related details from the application layer software. The layer covered GPRS and WiFi as a network interfaces and acted as unified software facade.
2017
For a customer in USA: Floating/submercing meteorology-buoy controll software and communication interface design. Proof of concept implementation. The challange on the project was to suggest a compete solution to the customer, and consider maintenance procedure (the system is difficult to access once deployed). Requirements analysis was also a non-trivial task – the customer had very deep understanding and practical experience in the field but no systematic approach to formulate the acceptance criteria and requirements in general. I had to suggest an electronics design as well as software solution (both application and system level). Another challenge was that the system can be deployed only during particilar weather conditions – making period from November to March not suitable for testing and effective development. Partial system simulation has been used to save testing efforts.
2017
For a customer in Ireland: Feasibility study for qr-code recognition library. Suggested and set up a stress test for most popular qr-code recognition libraries. Based on processing involving provided sets of images suggested the library that would cover the requirements. The challenge on the project was to provide a unified set of metrics to compare libraries and to prove to the customer that the suggested library meets the expectations.
FPGA configuration download protocol optimization, flashing/update tool refactoring. Design and implementation of motor controller command iterpreter. Integration of scripting engine (BASIC-like scripting language) into a motor controller firmware.
Version control systems
Bugtracking
Platforms
Documentation
Coding Standards
Development Methodologies
Build/Deployment Automation
Libraries and Frameworks
Packaging Tools
IDEs