All Modules

Every Topic,
Every Layer

12 topic areas. 48 modules. All focused on giving you deep, durable understanding of embedded systems.

Beginner 4 modules
🛠

Toolchain & Build System

GCC, Make, CMake, linker scripts. Build reproducible embedded firmware from scratch without relying on IDEs.

Compiler flags & optimization levels Linker scripts & memory layout Makefile patterns for firmware Cross-compilation setup
Beginner 5 modules

Microcontroller Architecture

ARM Cortex-M internals: clock trees, NVIC, MPU, SysTick, and understanding the reset sequence.

ARM Cortex-M core overview Clock configuration & PLL Interrupt controller (NVIC) Memory-mapped peripheral access
Intermediate 6 modules
🔧

Bare-Metal Firmware

Write startup code, handle exceptions, configure peripherals and implement drivers without any framework.

Startup code & vector table GPIO & timer drivers from scratch Interrupt-driven architecture Low-level HAL design patterns
Intermediate 5 modules
📡

Serial Protocols

UART, SPI, I2C — physical layer, timing, driver implementation, and oscilloscope debugging techniques.

UART framing & baud rate math SPI modes & chip select strategies I2C addressing & ACK/NACK DMA-based transfers
Advanced 8 modules

RTOS Internals

FreeRTOS source deep dive: scheduler, context switch assembly, heap allocators, and synchronization primitives.

Context switch & PendSV handler Scheduler algorithms Semaphores & mutexes internals Stack overflow detection
Advanced 4 modules
🧠

Memory Management

Stack usage analysis, custom heap allocators, MPU configuration, and DMA transfer coherency.

Stack frame anatomy Heap allocator implementations MPU region configuration Cache & DMA coherency
Advanced 4 modules
🚗

CAN Bus

CAN physical layer, frame structure, arbitration, error handling, and SocketCAN on Linux-based boards.

CAN frame anatomy & arbitration Bit timing & synchronization Error frames & bus-off recovery CANopen basics
Intermediate 4 modules
🐛

Debugging Techniques

GDB over JTAG/SWD, semi-hosting, ITM trace, fault handler analysis, and systematic debugging workflows.

GDB & OpenOCD setup Hard fault analysis ITM trace & SWO output Logic analyzer workflows