Software developer

I'm an experienced embedded software engineer who create dedicated low-level solutions based on the Linux/Yocto environment.

 

What I do

Linux / Yocto

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.

Embedded systems

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.

Software

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.

Design

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.

 

Latest projects

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.

Secure boot

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.

Contact

Info

piotr.piwko@gmail.com
+48 509 618 001
Wrocław/Poland