Amazon FreeRTOS - Cloud-native IoT operating system for microcontrollers

  •        75

FreeRTOS is an open source, real-time operating system for microcontrollers that makes small, low-power edge devices easy to program, deploy, secure, connect, and manage. This includes securely connecting your small, low-power devices to AWS cloud services like AWS IoT Core or to more powerful edge devices running AWS IoT Greengrass. FreeRTOS is built with an emphasis on reliability and ease of use.

A microcontroller contains a simple, resource-constrained processor that can be found in many devices, including appliances, sensors, fitness trackers, industrial automation, and automobiles. Many of these small devices can benefit from connecting to the cloud or locally to other devices, but have limited compute power and memory capacity and typically perform simple, functional tasks. Microcontrollers frequently run operating systems that may not have built-in functionality to connect to local networks or the cloud, making IoT applications a challenge. FreeRTOS helps solve this problem by providing the kernel to run low-power devices as well as software libraries that make it easy to securely connect to the cloud or other edge devices, so you can collect data from them for IoT applications and take action.

https://github.com/aws/amazon-freertos
https://aws.amazon.com/freertos/

Tags
Implementation
License
Platform

   




Related Projects

FreeRTOS Real Time Kernel (RTOS)

  •    C

Market leading real time kernel for 32 microcontroller architectures

Apache mynewt - An OS to build, deploy and securely manage billions of devices

  •    C

Apache Mynewt is an open-source operating system for tiny embedded devices. Its goal is to make it easy to develop applications for microcontroller environments where power and cost are driving factors. Apache Mynewt uses the Newt build and package management system, which allows you to compose your OS and choose only the components you need.

zephyr - Primary GIT Repository for the Zephyr Project

  •    C

The Zephyr Project is a scalable real-time operating system (RTOS) supporting multiple hardware architectures, optimized for resource constrained devices, and built with security in mind. The Zephyr OS is based on a small-footprint kernel designed for use on resource-constrained systems: from simple embedded environmental sensors and LED wearables to sophisticated smart watches and IoT wireless gateways.

RT-Thread - A Tiny and Elegant IoT Operating System

  •    C

RT-Thread (Real-Time Thread) is an open source embedded real-time operating system. It has a strong scalability: from a nano kernel running on a tiny MCU, for example ARM Cortex-M0, or Cortex-M¾/7, to a rich feature system running on MIPS32, ARM Cortex-A, even the emerging open source RISC-V architecture is supported. RT-Thread can run either on single-core systems or on symmetric multi-core processors(SMP) systems.

QP Active Object (Actor) Frameworks

  •    C

Event-driven, RTOS-like, active object frameworks for microcontrollers


ferret - Ferret is a free software lisp implementation for real time embedded control systems.

  •    Makefile

Ferret is a free software lisp implementation designed to be used in real time embedded control systems. Ferret lisp compiles down to self contained C++11. Generated code is portable between any Operating System and/or Microcontroller that supports a C++11 compliant compiler. It has been verified to run on architectures ranging from embedded systems with as little as 2KB of RAM to general purpose computers running Linux/Mac OS X/Windows. A program that sums the first 5 positive numbers.

Kubos - A real-time operating system targeting microcontrollers in space

  •    C

KubOS is light weight flight RTOS and framework, brings unparalleled productivity and functionality to the flight critical MCUs of satellites.

mbed-os - Arm Mbed OS is a platform operating system designed for the internet of things

  •    C

Arm Mbed OS is an open source embedded operating system designed specifically for the "things" in the Internet of Things. It includes all the features you need to develop a connected product based on an Arm Cortex-M microcontroller, including security, connectivity, an RTOS and drivers for sensors and I/O devices. The release notes detail the current release. You can also find information about previous versions.

Linux-resident RTOS kernel emulators

  •    C

A series of Linux-resident emulators for various legacy RTOS (Real-Time Operating System) kernels. These emulators are designed to ease the task of porting legacy RTOS code to an embedded Linux environment.

pico]OS

  •    C

pico]OS is a highly configurable and very fast real time operating system (RTOS). It targets a wide range of architectures, from very small 8 bit processors and microcontrollers up to very huge platforms. Ports are available for ARM, AVR, PPC, MSP430, 6502, MYCPU and for developing and testing purpose also for 8086, Win32 and Unix. pico]OS 1.0.4 was released 2012-07-12. This is a maintenance release that includes some bug fixes for the new ports for MSP430 and ARM Cortex-M. You may also vi

aws-iot-chat-example - 💬 Real-time chat application using AWS IoT platform via MQTT over the WebSocket protocol

  •    Javascript

This is a React application demonstrating how to use the AWS IoT platform via MQTT over the WebSocket protocol to build a live chat application. The sample application serves as a starting point for users to build serverless projects with Amazon Cognito, AWS Lambda and Amazon DynamoDB. The project showcases the solution to common user questions such as how to authenticate IoT devices with Amazon Cognito. If you would like to enable login with Facebook and/or Google, please follow the Social Logins guide.

NuttX

  •    C

Nuttx is a real time embedded operating system (RTOS). Its goals are: (1) small footprint usable in deeply embedded, resource constrained environments, (2) fully scalable from tiny (8-bit) to moderate (32-bit), (3) standards compliance, (4) real time, and (5) totally open. Think quot;Tiny Linuxquot;.

TaltOS

  •    C

TaltOS is a component-based real-time embedded operating system aiming at run-time reconfiguration and dynamic loading/unloading of components. The primary prototype targets the Philips LPC2106 ARM7-based microcontroller.

LightingBolt

  •    

'LightingBolt' is a fully-featured, preemptive, modular, real-time kernel developed for the ARM7/9 family of microcontroller.

SDL REFLEX

  •    C

SDL REFLEX is the micro kernel of a real time operating system for the AVR microcontroller family. The kernel is especially designed to implement systems described in SDL ? ?The Specification and Description Language? . Compiler GNU ANSI-C for AVR v.3.3

Nemesis Real Time OS Kernel

  •    C

Nemesis is a tiny real time operating system kernel based on x86 PCs. Its main purpose is to serve as a simple but realistic example of an real time OS kernel running on real hardware..the purpose of this is that it can be embedded in small devices lik

tock - A secure embedded operating system for Cortex-M based microcontrollers

  •    Rust

Tock is an embedded operating system designed for running multiple concurrent, mutually distrustful applications on Cortex-M based embedded platforms. Tock's design centers around protection, both from potentially malicious applications and from device drivers. Tock uses two mechanisms to protect different components of the operating system. First, the kernel and device drivers are written in Rust, a systems programming language that provides compile-time memory safety, type safety and strict aliasing. Tock uses Rust to protect the kernel (e.g. the scheduler and hardware abstraction layer) from platform specific device drivers as well as isolate device drivers from each other. Second, Tock uses memory protection units to isolate applications from each other and the kernel. Tock is documented in the doc folder. Read through the guides there to learn about the overview and design of Tock, its implementation, and much more.

lambda-refarch-imagerecognition - The Image Recognition and Processing Backend reference architecture demonstrates how to use AWS Step Functions to orchestrate a serverless processing workflow using AWS Lambda, Amazon S3, Amazon DynamoDB and Amazon Rekognition

  •    Javascript

The Image Recognition and Processing Backend demonstrates how to use [AWS Step Functions] (https://aws.amazon.com/step-functions/) to orchestrate a serverless processing workflow using AWS Lambda, Amazon S3, Amazon DynamoDB and Amazon Rekognition. This workflow processes photos uploaded to Amazon S3 and extracts metadata from the image such as geolocation, size/format, time, etc. It then uses image recognition to tag objects in the photo. In parallel, it also produces a thumbnail of the photo.This repository contains sample code for all the Lambda functions depicted in the diagram below as well as an AWS CloudFormation template for creating the functions and related resources. There is also a test web app that you can run locally to interact with the backend.

lambda-refarch-imagerecognition - The Image Recognition and Processing Backend reference architecture demonstrates how to use AWS Step Functions to orchestrate a serverless processing workflow using AWS Lambda, Amazon S3, Amazon DynamoDB and Amazon Rekognition

  •    Javascript

The Image Recognition and Processing Backend demonstrates how to use AWS Step Functions to orchestrate a serverless processing workflow using AWS Lambda, Amazon S3, Amazon DynamoDB and Amazon Rekognition. This workflow processes photos uploaded to Amazon S3 and extracts metadata from the image such as geolocation, size/format, time, etc. It then uses image recognition to tag objects in the photo. In parallel, it also produces a thumbnail of the photo. This repository contains sample code for all the Lambda functions depicted in the diagram below as well as an AWS CloudFormation template for creating the functions and related resources. There is also a test web app that you can run locally to interact with the backend.

cloudwatch-logs-subscription-consumer - A specialized Amazon Kinesis stream reader (based on the Amazon Kinesis Connector Library) that can help you deliver data from Amazon CloudWatch Logs to any other system in near real-time using a CloudWatch Logs Subscription Filter

  •    Java

The CloudWatch Logs Subscription Consumer helps Java developers consume a real-time feed of CloudWatch Logs data for custom processing, analysis, or loading to other systems.