FreeRTOS is a popular real-time operating system for embedded devices, being ported to 31 microcontrollers. It is distributed under the GPL with an optional exception.


  • Designed to be small, simple and easy to use.
  • Free RTOS kernel - preemptive, cooperative and hybrid configuration options.
  • Includes a tickless mode for low power applications.
  • Official support for 34 embedded system architectures.
  • Supports the ARM Cortex-M3 MPU.
  • Very portable, predominantly written in C.
  • Supports both real time tasks and co-routines.
  • Mutexes with priority inheritance.
  • Powerful execution trace functionality.
  • Stack overflow detection options.
  • No software restriction on the number of real time tasks that can be created.
  • No software restriction on the number of task priorities that can be used.
  • No restrictions imposed on task priority assignment - more than one real time task can be assigned the same priority.

FreeRTOS Demo Projects

FreeRTOS Ported to Raspberry Pi

This project provides a very basic port of FreeRTOS to Raspberry pi. It includes a demo application that use 2 FreeRTOS tasks to flash the LED on and off.


DuinOS is a small multithreading real time operating system (RTOS), based on the FreeRTOS kernel, for Arduino compatible boards.It's installed as an Arduino core, and currently supports the following AVR processors:


This is example code of using a NXP LPC4337 Xplorer board from NGX with FreeRTOS.It has two LED blinking tasks running at the same time.


port.c and portmacro.h for FreeRTOS to run on any AVR XMEGA

FreeRTOS on STM32

FreeRTOS demos for STM32F103ZET6 board that include LEDs, Buttons, USART, and LCD.

FreeRTOS on AVR with external RAM

This project add extra RAM connected to the external memory interface of Atmega128.

LPC4300 Development Boards with FreeRTOS demo

LPC4350 Dual-Core Cortex-M4 and Cortex-M0 Development BoardLPC4350 is the first asymmetrical dual-core digital signal controller with ARM Cortex-M4 and Cortex-M0 processors. The LPC-4350-DB1 development board consists of the most essential components that you need to start your development.It contains the LPC4350FET256 dual-core controller, USB, Ethernet and JTAG connectors, 4 push buttons + 4 LEDs, 16MB external NOR flash.

Porting FreeRTOS to MikroC for STM32 M3

This project port FreeRTOSV7.1.1 to CORTEX STM32F107 MikroC Version 2.5.

Using FreeRTOS kernel in AVR projects

Instructions to run FreeRTOS on AVR Atmega128L, using AVRStudio5.

Running multiple FreeRTOS tasks on AVR

Let us go further with our example code and add more tasks to our FreeRTOS engine. We already have LED flashing task that toggles LED every second. Additionally we are going to create another task that checks button state. Also we are going to send some information to LCD. As always lets take care of drivers for all of them.

Running FreeRTOS on the Keil MCBSTM32 Board with the RVMDK Evaluation Tools

This application note describes how to modify an existing port demo of the FreeRTOS operating system that targets the Luminary Micro LM3S102 evaluation board. It uses Keil

uc3l0 freertos demo

Demos for FreeRTOS and the UC3L0. This demo provides: Full USART Command TerminalConfigurable ADC TaskPWM control over RGB LEDs (on the L0 Xplained)Printable Data from various sources.

gsm control system

G.S.A. (GSM System Automation) is a control system that allows you to manage your domestic appliances by means of gsm-communication.You can program GSA simply by send a SMS.

STM32F4 – Deploy FreeRTOS Embedded OS in under 10 seconds!

This tutorial describe how to build and deploy the FreeRTOS embedded operating system on STM32F4 Discovery board under 10 seconds.

ST ARM Cortex-M7 STM32 F7 RTOS Demo

This page provides documentation for the FreeRTOS demo that targets the STM32756G-EVAL Evaluation Kit, which incorporates an STM32F7 ARM Cortex-M7 microcontroller from STMicroelectronics. Pre-configured build projects are provided for both the IAR and ARM Keil tools.

Creating a FreeRTOS-based WiFi HTTP server for ESP8266

This tutorial shows how to create a FreeRTOS-based HTTP server with the ESP8266 chip.


A community developed open source FreeRTOS-based framework for ESP8266 WiFi-enabled microcontrollers. Intended for use in both commercial and open source projects.

FreeRTOS Demo Boards


The STM32F4DISCOVERY kit leverages the capabilities of the STM32F407 high performance microcontrollers, to allow users to easily develop applications featuring...


The STM32756G-EVAL evaluation board is a complete demonstration and development platform for STMicroelectronics ARM® Cortex®-M7 core-based STM32F756NGH6...

nRF52 DK

The nRF52 DK is a versatile single board development kit for Bluetooth® low energy, ANT and 2.4GHz proprietary applications using the nRF52832 SoC. This...


The STM32F0DISCOVERY helps you to discover the STM32F051xx Cortex®-M0 features and to develop your applications easily. It includes everything required...


The Flagship FRDM-K64F has been designed by NXP in collaboration with mbed for prototyping all sorts of devices, especially those requiring optimized size...

Arduino M0 Pro

The Arduino M0 pro represents a simple, yet powerful, 32-bit extension of the Arduino UNO platform. The board is powered by Atmel’s SAMD21 MCU, featuring...


The STM32 Nucleo board provides an affordable and flexible way for users to try out new concepts and build prototypes with the STM32 microcontroller, choosing...

C3200 LaunchPad

The SimpleLink™ Wi-Fi® CC3200 LaunchPad™ development kit (with QFN-packaged device) is an evaluation development platform for the CC3200 wireless...


The ESP8266 WiFi Module is a self contained SOC with integrated TCP/IP protocol stack that can give any microcontroller access to your WiFi network....


ESP32-DevKitC is a low-footprint, minimal system development board which is powered by our latest ESP-WROOM-32 module and can be easily adjusted to a breadboard...


ShareBoard-iMXRT1050 is an open source hardware with the powerful ARM Cortex-M7 MCU i.MX RT1052. FreeRTOS, RT-Thread, and more RTOS are supported for ShareBoard....

FreeRTOS Rating

Rate this RTOS ( 139 votes )

FreeRTOS Platforms

  • MSP430
  • ARM
  • ARM Cortex-A5
  • ARM Cortex-A9
  • ARM Cortex-M0
  • ARM Cortex-M0+
  • ARM Cortex-M3
  • ARM Cortex-M4
  • ARM7
  • ARM9
  • AVR
  • AVR32
  • ColdFire
  • PIC
  • PIC24
  • PIC32
  • dsPIC
  • MSP430X
  • x86