UpcomingIntermediate

RTOS Fundamentals for Real Firmware

A hands-on intermediate course that takes you from bare-metal thinking to RTOS-native firmware design. Covers task lifecycle, priority inversion, queues, semaphores, mutexes, stack sizing, heap strategies, and the debugging techniques that actually work when things go wrong.

Outcomes

  • Design a task hierarchy that avoids priority inversion and starvation
  • Choose the right synchronization primitive for each communication pattern
  • Debug RTOS failures — stack overflow, deadlock, runaway tasks — with or without a JTAG probe

Audience

  • Embedded engineers moving from bare-metal or superloop to RTOS
  • Junior firmware engineers using FreeRTOS without a full mental model
  • Hardware engineers who need to understand the software side of timing

Prerequisites

  • Embedded C programming (pointers, structs, interrupts)
  • Basic understanding of how a microcontroller runs code
  • Familiarity with a development board or simulator

Module list

Module 1

RTOS concepts and task lifecycle

Understand the scheduler, task states, context switching overhead, and why a tick-based RTOS behaves differently from bare-metal.

Module 2

Priority, preemption, and starvation

Design a priority scheme that keeps high-priority work responsive without starving low-priority tasks or creating inversion.

Module 3

Queues, semaphores, and mutexes

Match each primitive to its correct use case and understand the subtle bugs that come from misuse — including binary semaphore as mutex.

Module 4

Stack sizing and heap strategies

Calculate worst-case stack depth, choose the right FreeRTOS heap scheme, and detect overflow before it corrupts memory silently.

Module 5

Interrupts and deferred processing

Implement safe ISR-to-task hand-off, avoid blocking APIs in ISRs, and design deferred interrupt processing with task notification.

Module 6

Debugging RTOS failures in the field

Use FreeRTOS trace hooks, vTaskGetRunTimeStats, and JTAG to diagnose deadlock, stack overflow, missed deadlines, and runaway tasks.

Course body

Call to action

Ready to continue with this topic? Use the direct enrollment path below.