Senior Firmware Design Engineer at Schneider Electric

Immediately after I joined the business normally located in Plymouth, but launching a remote office in Maidenhead, I started to work on a smart domestic heating controller, which after various marketing turmoils ended up known on the market as Wiser Heat. Regardless of relatively tight hardware resources this project straight away started in C++14 and continued to this day. The core MCU is ATSAMS70Q21 based on ARM Cortex-M7 core, with 2 MB of Flash and 385 kb of RAM. The second MCU used to talk over Zigbee with remote devices (sensors and actuators) was EFR32. Tasks I handled included work at various levels, from controlling hardware peripherals up to business logic and communication with the Cloud.

However, various winds and currents caused we sailed toward a new product based on Linux. That opens a new chapter in terms of development, including Docker containers, C++17 and more normalized development environment characteristic for typical Linux system programming. It's no longer going to be firmware development (in the sense of constrained embedded development).

That endeavour ended in March 2021.