I specialize in creating dedicated Linux distributions and complete Board Support Packages using the Yocto environment. I write and modify the device drivers and provide required changes to Linux kernel and u-boot bootloader space. I support low-level projects at every stage of their development.
I have experience with the most popular hardware architectures such as x86, ARM, and DSP cores. I prepare the overall design and implementation of requested systems, beginning from the bootloader, Linux and its components, up to the secure and remote update process.
I develop the complex software in the C/C++ languages according to specified requirement. My projects successfully work in various, multithreading environments such as education, multimedia, and monitoring systems or the industry and medical solutions.
I critically analyze the available possibilities in order to improve existing systems. I'm looking for proven and reliable components to ensure the predictable and stable work of proposed solutions. I design overall conceptions ready to implement and integrate.
Time synchronization module
Implementation of the dedicated solution based on systemd in order to synchronize system time and real-time clock with the remote NTP servers. It ensures that used certifications are always up to date.
The goal of the project was to design and implement in u-boot bootloader the secure boot process of the Linux images. The whole stages of configuration, generation, and signing target images have been integrated with the Yocto environment.
RGB LEDs device driver
Designed and implemented from scratch the Linux device driver responsible for configuration and synchronized management of a few RGB LEDs. The solution is fully flexible and provides the possibility to define and set custom light patterns from the userspace.
Software update system
The target of the project was to design the secure mechanism of update and booting system. The proposed solution is based on the complex configuration and integration of the all components such as u-boot, Linux, swupdate application, and image verification process from the various media e.g. USB stick.
Board Support Package
I was requested to prepare the complete board support package for the platform based on i.MX 6QuadPlus processor. The provided BSP contains a u-boot bootloader, custom Linux distribution, update system, and SDK for the end-application developers. The whole process has been integrated with the Yocto environment.
SaaS cloud service
The SaaS cloud service provides possibility for many users to manage and monitor their transport orders in real-time. It has been designed, implemented, and deployed by me using the following software stack: Docker/Django/Boostrap. The system successfully works in the commercial environment.