Home > Speakers >

Alexey Karelin

Alexey Karelin is a senior embedded systems engineer with over 10 years of experience in embedded systems and IoT. He earned his B.Eng. and M.Eng. in Electronics Engineering from Russian State Technological University in Moscow in 2011 and 2013, respectively. In 2016, he completed his Ph.D. in Electrical Engineering at Saint Petersburg Electrotechnical University "LETI."

Alexey’s early research focused on detecting flammable gas mixtures, investigating planar catalytic sensors, and developing wireless sensor networks. His current interests include low-level optimizations, low-power device design, and advancing best practices for embedded engineers.

Beyond Main: Deconstructing the Cortex-M Startup Sequence from The Very First Cycle

Status: Coming up in April 2026!

For most embedded engineers, the application begins at main(). Everything before that is treated as "vendor magic": a black box of assembly and obscure C macros that we are afraid to touch.

In this session, we will open this black box and trace the exact lifecycle of Cortex-M microcontrollers from the very first clock cycle.

We will dissect the anatomy of a boot sequence, moving beyond the simple "copy .data / zero .bss" path to explore the darker corners of system initialization. How the VTOR works, the specific roles of MSP vs. PSP stack pointers, TrustZone setup before the first jump, and the "IDE Lock-in" - how vendor-specific startup files create hidden dependencies that make migrating from one IDE or toolchain to another a nightmare of broken builds.

Whether you are writing a bare-metal bootloader, debugging a complex crashing RTOS application or porting your project from one IDE to another, understanding life before main is the key to reliable and secure firmware.

Go to Session


Designing Portable Firmware: Key Principles and Patterns

Status: Available Now

Portable firmware is more than just migrating code across hardware platforms. It involves organizing firmware in a modular, scalable, and reusable way while adhering to better design principles.

This talk begins with a personal story of challenges and setbacks, shedding light on common pitfalls and ineffective approaches. It then explores the principles and patterns essential for creating portable firmware for embedded systems, illustrated with simple examples in C.

Attendees will learn how to develop adaptable firmware capable of running on different microcontrollers and hardware configurations with minimal changes to the application code.

Go to Session