FIRMWARE • RTOS

RTOS Development: FreeRTOS and Zephyr

Real-time firmware that meets its deadlines: task architecture, scheduling, synchronisation and timing verification.

When you need an RTOS, and which one

  • Use an RTOS when you have several concurrent activities with deadlines, such as sensing, communications and a user interface, that a single super-loop cannot manage cleanly.
  • FreeRTOS is the pragmatic default: small, widely supported and easy to hire for. Zephyr is stronger where you need rich connectivity stacks, device-tree hardware description and broad board support.
  • Most RTOS bugs are design bugs: priority inversion, unbounded blocking, stack overflow and shared-data races. They are found by architecture review and tracing, not by luck.
  • We deliver the design as well as the code, with a task map, priority rationale and measured worst-case timings.

FreeRTOS or Zephyr?

FactorFreeRTOSZephyr
FootprintVery small kernel, easy to fit small MCUsLarger, scalable with Kconfig
Hardware supportPort per MCU, vendor SDKs integrate itBroad board and driver support via device tree
Connectivity stacksAdd libraries (TCP/IP, MQTT, LoRaWAN)Bluetooth, networking and more built in
Learning curveGentleSteeper (devicetree, Kconfig, west)
Typical choiceSTM32, ESP-IDF, existing codebasesNordic nRF, new multi-vendor products

There is no universally right answer. We recommend based on the MCU, the connectivity needed, and the skills your team will keep after we hand over.

How we design an RTOS application

Timing and verification

We trace task execution with tools such as SEGGER SystemView or Percepio Tracealyzer, measure interrupt latency and worst-case execution time on target hardware, and keep the results in the design note. Where a product needs a formal safety argument, this evidence is what an auditor will ask for.

Porting and migration

We port RTOS applications between MCU families, move super-loop firmware to an RTOS in stages, and migrate between FreeRTOS and Zephyr when a product outgrows its first choice. Related reading: firmware development and embedded systems.

Sources and further reading

Last reviewed: October 2026. Regulations and product availability change; confirm current rules with the issuing authority before you commit to a design.

Common Questions

Frequently Asked Questions

Do I need an RTOS for my product?

Not always. A simple device with one or two activities may be cleaner with an interrupt-driven super-loop. Once several activities with different deadlines must share the CPU, an RTOS reduces complexity and bugs.

What causes most RTOS failures in the field?

Typically stack overflows, priority inversion, unprotected shared data and unbounded blocking. They are prevented by design review, stack monitoring, correct use of mutexes and queues, and watchdogs.

Can you review our existing RTOS code?

Yes. We review task structure, priorities, synchronisation, stack use and interrupt handling, and deliver a prioritised findings list before any change is made.

Is FreeRTOS suitable for medical or safety products?

It can be used as part of a controlled development process, and certified variants exist. The process, not the kernel alone, determines suitability. See our medical firmware page.

Need firmware that holds its deadlines?

Describe your tasks, interfaces and MCU. We will propose an RTOS architecture and a verification plan.

REQUEST AN ENGINEERING CONSULTATION

Related Solutions

← All engineering solutions