Series 01 · Intermediate

Build STM32 firmware with CMake

Learn how STM32 firmware is built by putting the pieces together yourself. You’ll start with CMake and the Arm GNU toolchain, then explore startup, memory layout, CMSIS, and the STM32 HAL. As the build takes shape, you’ll move from compiling code to flashing a working application on a board.

By the end, you’ll have a working LED blink and understand the compiler, startup, linker, and vendor support that went into building it.

Why use CMake?

STM32CubeIDE offers a convenient way to develop and debug firmware. This course takes a command-line route so you can see how sources, compiler settings, startup code, and the linker work together. It also gives you a build you can run outside an IDE, including in CI.

This isn’t about avoiding ST’s tools. It’s about learning the build well enough to use those tools confidently—and to investigate problems when a generated project doesn’t work as expected.

Start lesson 1
← All series