FreeRTOS on Raspberry PI PICO

Using FreeRTOS Kernel on RP2040 boards including the Pico and Pico W.

FreeRTOS on Raspberry PI PICO
FreeRTOS on Raspberry PI PICO

FreeRTOS on Raspberry PI PICO free download

Using FreeRTOS Kernel on RP2040 boards including the Pico and Pico W.

Updated for Pico SDK 2.1.1 and FreeRTOS Kernel V11.2.0 - March 2025.

FreeRTOS Kernel allows us to add multi-processing to projects on the Raspberry PI Pico. This course teaches the foundations of FreeRTOS Kernel through practical example projects to get you quickly up and running. The course includes 15 separate projects using FreeRTOS Kernel including Symmetric Multi-Processing (using both RP2040 cores).

The course is written for the Raspberry PI Pico and Pico W. The examples will also run on any RP2040 board, though some modification due to different pinouts may be required if the board is different from the Raspberry PI Pico. These examples can be used as a basis for your own projects or as reference examples of the concepts of FreeRTOS Kernel.

This course covers:

  1. Tasks: Multiple concurrent processes on a single core

  2. Semaphores: Sending signals between tasks to protect shared resources

  3. Queues: Queue management. Queues are often used for decoupling tasks

  4. Message Buffers: A queue of variable-length items

  5. Symmetric Multiprocessing: Using both RP2040 cores

  6. C++ use of the FreeRTOS Heap

Simple circuits to illuminate LEDs are used in each example. To build these circuits a small amount of equipment is required:

  • Raspberry PI Pico or Pico W

  • Micro USB Cable for power

  • Breadboard and connection wires

  • 12 LEDs. Any colour though examples use 2x Green, 2x Blue, 8x Red

  • 12 75Ohm resistors

  • Desktop/Laptop for building code and flashing the Pico

The course assumes knowledge of C++. Though each example will walk through the functionality, the course will not talk about the syntax of C++. An understanding of how stack and heap are used by C++ is also assumed.

The course assumes that you can compile and deploy C++ code to the Pico using the Raspberry PI Pico SDK. My other course “Introduction to C Development Environment for Raspberry PICO” teaches these skills.

FreeRTOS Kernel is a foundation state in the journey to more complex projects and IoT devices. Join the course today for fun learning FreeRTOS Kernel for the Raspberry PI Pico, Pico W or RP2040 board.

FreeRTOS Kernel will also run on the Pico 2 and RP2350 boards. The configuration for the RP2350 is a little bit more complex and not covered by this course.