Quality RTOS & Embedded Software

 Real time embedded FreeRTOS RSS feed 
Quick Start Supported MCUs PDF Books Trace Tools Ecosystem


History

The FreeRTOS kernel was originally developed by Richard Barry around 2003, and was later developed and maintained by Richard's company, Real Time Engineers Ltd. FreeRTOS was a runaway success, and in 2017 Real Time Engineers Ltd. passed stewardship of the FreeRTOS project to Amazon Web Services (AWS). Richard continues to work on FreeRTOS as part of an AWS team. Read more on the AWS open source blog, and the FAQ question Why Have Amazon Taken Stewardship of FreeRTOS?.


About Amazon Web Services

Amazon Web Services provides a highly reliable, scalable, low-cost cloud infrastructure platform that powers hundreds of thousands of businesses in 190 countries around the world. In 2015 AWS added specific Internet of Things (IoT) capabilities, and now offers Amazon FreeRTOS to help users securely connect their MCU devices to the cloud.

Amazon FreeRTOS uses the FreeRTOS kernel, and adds libraries that make small low-power edge devices easy to program, deploy, secure, connect, and manage. You do not need to be an AWS customer to use Amazon FreeRTOS as the source code is provided under the MIT license.


About the FreeRTOS Kernel

[Also see the "What is an RTOS?" and "Why use an RTOS" pages]

FreeRTOSTM is a market leading RTOS from Amazon Web Services that supports more than 35 architectures and was downloaded once every 3 minutes during 2017. It is professionally developed, strictly quality controlled, robust, supported, and free to embed in commercial products without any requirement to expose your proprietary source code.

FreeRTOS has become the de facto standard RTOS for microcontrollers by removing common objections to using free software, and in so doing, providing a truly compelling free software model.

Implementation Quality Management

Value Proposition
High quality C source code under strict configuration management
Safety critical version ensures dependability
Cross platform support secures time investment
Tutorial books and training to educate engineers
Pre-configured example projects for all supported ports
Free support, quoted as better than some commercial alternatives
Large and growing user base and community
Peace of mind - low cost commercial options can be taken at any time
= A low total cost of ownership, risk free, & compelling solution

RTOS Technology Highlights
Pre-emptive scheduling option Easy to use message passing
Co-operative scheduling option Round robin with time slicing
Fast task notifications Mutexes with priority inheritance
6K to 12K ROM footprint Recursive mutexes
Configurable / scalable Binary and counting semaphores
Chip and compiler agnostic Very efficient software timers
Some ports never completely disable interrupts Easy to use API

FreeRTOS is very strictly quality managed, not just in software coding standards and look and feel, but also in implementation. For example:
  • FreeRTOS never performs a non-deterministic operation, such as walking a linked list, from inside a critical section or interrupt.

  • We are particularly proud of the efficient software timer implementation that does not use any CPU time unless a timer actually needs servicing. Software timers do not contain variables that need to be counted down to zero.

  • Likewise, lists of Blocked (pended) tasks do not require time consuming periodic servicing.

  • Direct to task notifications allow fast task signalling, with practically no RAM overhead, and can be used in the majority of inter-task and interrupt to task signalling scenarios.

  • The FreeRTOS queue usage model manages to combine simplicity with flexibility (in a tiny code size) - attributes that are normally mutually exclusive.

  • FreeRTOS queues are base primitives on top of which other communication and synchronisation primitives are built. The code re-use obtained dramatically reduced overall code size, which in turn assists testing and helps ensure robustness.


In addition, the TÜV SÜD certified SIL 3 SafeRTOS real time kernel was originally derived from FreeRTOS, and has undergone the most stringent analysis and test process - the results of which were fed back into the FreeRTOS code base (when commonality still existed).


Mission

"Provide a free product that surpasses the quality and service
demanded by users of commercial alternatives"

The original mission of the FreeRTOS project was to provide a free RTOS solution that was easy to use. That is easy to build on a Windows (or Linux) host computer, without having to figure out which source files are required, which include paths are required, or how to configure the real time debugging environment. This has been achieved through the provision of pre-configured, build-able, example projects for each officially support port.

Naturally, as the FreeRTOS started circa 2003, how these projects are created has evolved for the better, and some original projects remain that don't demonstrate all of the RTOS functionality, or have become stale. However, each project is fully tested before it is added to the FreeRTOS zip file distribution, and many RTOS demo projects undergo active maintenance before each new release. Responding to user feedback, each new demo added to the distribution now also includes a simple "blinky" style getting started configuration to compliment the comprehensive examples.


Design Goals

The primary design goals are:
  • Easy to use
  • Small footprint
  • Robust


FreeRTOS Founder

The FreeRTOS project was founded by Richard Barry. Richard graduated with 1st Class Honours in Computing for Real Time Systems. He's been directly involved in the start up of several companies, primarily working in the industrial automation and aerospace and simulation markets. Richard is currently a Principal Engineer at Amazon Web Services, owners and maintainers of the FreeRTOS project.







[ Back to the top ]    [ About FreeRTOS ]    [ Privacy ]    [ Sitemap ]    [ ]


Copyright (C) Amazon Web Services, Inc. or its affiliates. All rights reserved.

Latest News

NXP tweet showing LPC5500 (ARMv8-M Cortex-M33) running FreeRTOS.

Meet Richard Barry and learn about running FreeRTOS on RISC-V at FOSDEM 2019

Version 10.1.1 of the FreeRTOS kernel is available for immediate download. MIT licensed.

View a recording of the "OTA Update Security and Reliability" webinar, presented by TI and AWS.


Careers

FreeRTOS and other embedded software careers at AWS.



FreeRTOS Partners

ARM Connected RTOS partner for all ARM microcontroller cores

Espressif ESP32

IAR Partner

Microchip Premier RTOS Partner

RTOS partner of NXP for all NXP ARM microcontrollers

Renesas

STMicro RTOS partner supporting ARM7, ARM Cortex-M3, ARM Cortex-M4 and ARM Cortex-M0

Texas Instruments MCU Developer Network RTOS partner for ARM and MSP430 microcontrollers

OpenRTOS and SafeRTOS

Xilinx Microblaze and Zynq partner

Google Profile