Back to Programs

Operating systems

RTEMS Project

A real-time operating system for Earth & Space

assemblycc++posixpython

Participation history

11 GSoC years

2026

8 projects

Official year page

Adding Support for the Scrutiny Debugger Instrumentation Library

This project will integrate the Scrutiny Embedded instrumentation library to RTEMS. The result of this project will be an instrumentation interface...

lwIP TCP/IP Network Stack Improvements

This project brings up lwIP on the TI TMS570LC43x under RTEMS. The TMS570 is a high-reliability MCU most recently used as the flight controller on...

Add packaging options to RTEMS Deployment.

RTEMS Deployment currently supports TAR and RPM package types for toolchain and RTEMS BSP configuration distributions. However, users of Debian-based...

Adding modular heap support to RTEMS

This project aims to update the current memory allocator used by RTEMS to be modular, allowing users to provide their own heap implementation or use...

Add MPCP & DPCP Support to RTEMS

The goal of this project is to introduce more locking protocols, in particular Multiprocessor Priority Ceiling Protocol (MPCP) and Distributed...

Controller Area Network (CAN) Stack Improvement: BeagleBone Black D-CAN Driver Implementation

This project implements a D-CAN driver for the AM335x controller on the BeagleBone Black and integrates it into the RTEMS CAN stack, addressing the...

Adding Framebuffer, SD card and PCIe support to the Raspberry Pi 4b BSP

This project extends the Raspberry Pi 4b BSP in RTMES by adding Framebuffer, SDHCI and PCIe support. Building on mailbox and DMA support added during...

Add Support for C11 Annex K Bounds-Checking Functions in RTEMS

RTEMS currently lacks C11 Annex K bounds-checking functions (strcpy_s, memcpy_s, sprintf_s and ~45 others) which provide runtime buffer-size...

2025

8 projects

Official year page

CodeQL Static Analyzer for RTEMS

RTEMS currently depends on third-party platforms like GitLab CI for static analysis, which introduces external dependencies and limits local...

IMFS - Add configurable allocator and block size handling

This project proposes enhancing RTEMS’ In-Memory File System (IMFS) by introducing configurable memory allocators and improving bytes-per-block...

Implementing MicroPython Support and Packaging It For RTEMS

This project aims to implement a MicroPython REPL, script running functionality and access to RTEMS (and perhaps LibBSD) APIs, and package it by...

New APIs Added to POSIX Standard (Issue8)

POSIX Issue 8, released in 2024, introduces several additional APIs that improve standardization, portability, and functionality across compliant...

Provide SPARC greth Network Drivers for lwip

This project aims to port GRETH Driver in RTEMS Legacy network Stack to lwIP Network Stack. I aim to study existing driver as well as lwIP network...

Port FatFS to RTEMS with Benchmarking

The focus of this project is porting FatFS to RTEMS, offering a smaller, simpler alternative to the existing custom DOS FS file system. The project...

Adding I2C, PWM, DMA and Mailbox Support to the Raspberry Pi 4B BSP

The project involves adding support for the I2C, PWM, DMA and Mailbox functionalities. The ARM based Raspberry Pi 3 BSP has support for I2C although...

Remove set_vector() across all Architectures and BSPs

When an interrupt occurs(either hardware or software) in the OS, they are handled by Interrupt service routines(ISR) or in lay terms a method to...

2024

5 projects

Official year page

Make Stack Checker Error Handler Configurable

RTEMS real-time operating system utilizes a stack checker to detect stack overflows during execution. While this feature is essential for system...

Adding SPI, Watchdog and SD card support to Raspberry Pi 4B BSP

This project aims to improve the Raspberry Pi 4B (RPi4B) BSP support on RTEMS. Last year, RPi4B BSP support added GPIO, six UARTs, I2C, and IO...

Posix Asynchronous I/O (AIO) Implementation

RTEMS (Real-Time Executive for Multiprocessor Systems) is a real-time operating system (RTOS) designed for embedded systems. The goal of the project...

Continue the Development of the x86_64 BSP

This project seeks to advance the development of the x86_64 BSP by implementing ACPICA support, Symmetric Multiprocessing, Floating Point support and...

Add Python initializer to GDB in RTEMS

This project aims to improve the debugging experience on RTEMS by enhancing GDB with support for pretty-printing C++ STL objects and kernel...

2023

3 projects

Official year page

Ethernet and SMP support for Raspberry Pi 4B AArch64

Last year, RTEMS started to support Raspberry Pi 4B AArch64. But as of now, it is just a bare BSP with only a console and clock driver and nothing...

Add Support for renode.io Simulator

Renode.io is an open-source software simulator designed specifically for System on Chips (SoC) and Internet of Things (IoT) devices. It allows...

Improve the Raspberry Pi 4 BSP

The existing support for Raspberry Pi SBCs in RTEMS is operational, but it lacks essential functionalities such as graphics support, USB, SD card,...

2022

4 projects

Official year page

STM32F4 BSP Project

This project has three objectives: - To improve RTEMS BSP libraries by creating a new GPIO API and ADC API. Currently RTEMS has a GPIO API, but it...

RTEMS Release Notes Generator

This project will revamp the RTEMS release notes generator by fixing existing issues and supporting the generation of reStructuredText as well as...

RTEMS port for Raspberry pi 4 AArch64

The Raspberry Pi is a fully-fledged computer, capable of doing whatever you might do with a computer with the additional features of hooking it up...

BeagleBoard BSP Projects: CAN Framework and DCAN Peripheral Support

The goal of this project is to add CAN Framework and DCAN peripheral support for BeagleBone Black System on Chip in RTEMS. CAN protocol is a robust,...

2021

4 projects

Official year page

Adding New APIs from POSIX Standard 2021

This project will enhance Portable Operating System Interface (POSIX) compliance in the RTEMS real-time operating system by adding newly proposed...

Beagleboard BSP: Add USB OTG Support

USB On-The-Go technology allows us to access different kinds of services through the USB interface. These services can be Ethernet, Serial, Mass...

Code Formatting and Style Check for RTEMS SuperCore (score)

The supercore, also known as score provides services for all APIs and for the core parts of RTEMS, there is no automatic checking of the coding...

Improving the Raspberry Pi BSP

RTEMS already supports the Raspberry Pi1 development board, and has a fair bit of support for the Raspberry Pi2. The Raspberry Pi Zero/ Zero W is a...

2020

5 projects

Official year page

POSIX Compliance

Portable Operating System Interface (POSIX) is a set of standards that are defined by the IEEE society. It defines various APIs along with...

Beagle BSP: Add a flattened device tree based initialization

This project aims to improve the Beaglebone Board Support Package (BSP) in RTEMS by adding a Flattened Device Tree (FDT) based driver initialization....

BSP Buildset for EPICS

The development of the freely available, open-source, RTEMS, solved one of the biggest obstacles that beamline researchers used to face in buying...

Memory Protection

Most modern processors have a memory management unit (MMU) or memory protection unit (MPU) hardware whose main functions are virtual address...

Improve the SMP scheduler with the support of arbitrary processor affinity with task shifting

The Real-Time Executive for Multiprocessor Systems (RTEMS) is an open-source real-time operating system (RTOS). In the current RTEMS version, a...

2019

4 projects

Official year page

Add Framebuffer driver for Beaglebone Black

This Project aims to improve the Beaglebone Black (BBB) Board Support Package on RTEMS. The project intends to add HDMI Framebuffer support for the...

POSIX Compliance

Portable Operating System Interface (POSIX), is a set of IEEE standards that defines an interface between programs and operating systems for...

Adding PRU-ICSS drivers to RTEMS on Texas Instrument Sitara SoCs

This Project intends to add the PRU support to RTEMS, using the Beaglebone Black (BBB). The BBB has an Texas Instruments AM3358 SoC with an ...

Basic Support for Trace Compass

The goal of this project is to enable the Trace Compass to analyze and display some basic information using Event Recording infrastructure. Trace...

2018

4 projects

Official year page

Improve Coverage Analysis Toolset

RTEMS-TOOLS uses a tool called covoar, integrated into the rtems-tools, which currently generates coverage reports in html and text. This project is...

GSOC2018_Huang_RTEMS Release Notes Generator

RTEMS Release Notes Generator

Porting SDIO driver and Benchmarking

First part of this project is intended to add SDIO support to BeagleBone Black BSP, specifically by importing the current SDIO stack from FreeBSD....

x86_64 port and BSP

RTEMS is a real-time operating system, meant to be used in applications that need high-precision task scheduling, such as the NASA's recent Parker...

2017

4 projects

Official year page

POSIX Compliance

POSIX Compliance allows developers the maximum flexibility in creating application software that can be port on to the other execution environments....

Beagleboard BSP projects

This project aims to improve the Beaglebone Black BSP support on RTEMS. Project intends to add the following supports to the Beaglebone Black BSP:...

Utilizing full power of RISC-V architecture via usage of RTEMS on top of SiFive FE310 processors

This project aims to provide the RTEMS community with a new capability of utilizing the power of SiFive FE310 processors. The main objective of this...

Improve Coverage Analysis Tools

This project will switch the RTEMS Source Builder from QEMU to Couverture-QEMU. It will integrate Couverture-QEMU and the scripts driving it into...

2016

5 projects

Official year page

Low Level Peripherals & SD Card Support for Raspberry Pi

The idea aims to complete the implementation for the SD Card file system support that was previously initiated. In addition to that, I also plan on...

Improvements in the RTEMS Trace Framework

Current Tracing Framework under RTEMS instruments the target ELF files to trace event-data based on a user-configuration. A Capture Engine buffers...

RTEMS Port to ARM Cortex-M4F core-based MCUs

The objective of this project is to add processor support and a board support package (BSP) for the ARM Cortex-M4F microcontrollers on RTEMS. In...

Beaglebone Black BSP Improvement

RTEMS is mainly designed for Real time applications, embedded systems that implements a single process, multi threaded environment. The project...

Raspberry PI USB and Ethernet Support

This project aims to improve the Raspberry PI BSP support on RTEMS. Project intends to add the following supports to the Raspberry PI BSP: USB device...