FreeRTOS Overview

Table of contents

  1. Overview
  2. Reference
  3. Sutdy with hands-on experiement
  4. Mini Project Development Environment

Overview

In the fields of Automotive, Aviation, and Military, which are life-critical sectors, an Electrical Control Unit (ECU) must guarantee precise execution at the desired time. Otherwise, catastrophic accidents could occur. To ensure time-based execution, we typically adopt a Real-Time Operating System (RTOS). In modern technology, RTOS is frequently used, and understanding it is one of the key skills required to become a versatile embedded software developer.

With the aim of becoming skilled software programmers, we are starting to master FreeRTOS. As a first step, we will go through the document Mastering-the-FreeRTOS-Real-Time-Kernel.v1.0, written by Richard Barry and the FreeRTOS team. This document explains modern OS theory in an easy-to-understand manner. Additionally, we will analyze the source code of FreeRTOS in detail. To reinforce our understanding of FreeRTOS, we will utilize a well-known lecture available on Udemy FreeRTOS Lecture. This lecture provides hands-on experiments with the ‘STM32F407VGT60’ discovery board. After extensively studying FreeRTOS, we will undertake a mini-project to port FreeRTOS onto the Infineon Tricore TC275 Evaluation Kit.

For the mini-project, we will base our work on the TC1775 Demo Project and Legacy FreeRTOS Port on TC277. The latter is a contribution from nine years ago, so if we identify areas for improvement, we will make the necessary updates. One of the goals of this project is to ensure versatility, meaning we will avoid relying on specific paid tools. Therefore, when implementing the port on the TC275, we will select open-source tools that are freely available.

Throughout this journey, we will cover topics such as FreeRTOS, STM32F407VGT60 and TC275 MCU Architecture, hands-on experiments, and development environments.

Reference

Sutdy with hands-on experiement

  1. STM32F407VGT60 discovery board
  2. STM32CubeIDE 1.16.0

Mini Project Development Environment

  1. TC275 lite kit
  2. Compiler: GCC
  3. FreeRTOS Kernel Version: the lastes one.
  4. Development Environment: Windows
  5. Reference Source Code: TC1775 Demo Project and Legacy FreeRTOS Port on TC277