Open sourceActive

RIOT

RIOT is an open-source operating system for IoT devices, with contribution guidelines covering code, documentation, and bug reporting.

Open source page

Product features

Product features

API Documentation

Comprehensive API documentation for all modules and functions.

Board Support

Supports multiple boards like samr21-xpro.

Coding Conventions

RIOT has extensive coding conventions with static test tools.

Commit Conventions

Commit messages follow a pattern and are checked for keywords.

Community Code of Conduct

Guidelines for behavior in all RIOT community spaces, promoting a welcoming and respectful environment.

Contribution Guidelines

Guidelines for contributing code, documentation, and bug reports to RIOT.

Docker Build Support

Use BUILD_IN_DOCKER=1 to build and flash using the riot/riotbuild Docker image.

Documentation

Guidance for writing documentation.

Example Applications

Provides examples in examples/ directory.

Examples and Tests

Examples and tests for modules and packages.

External Packages

Support for external packages with patching by build system.

Flashing RIOT Applications

Flash RIOT applications to supported boards using make commands, with optional Docker support.

Git Workflow

Instructions for working with Git, including branching and rebasing.

Inter-Process Communication

Provides messaging and synchronization between threads.

Low memory footprint

RIOT aims for a very low memory footprint.

Make Build System

Uses make to build applications with BOARD macro.

Makefile Integration

Use USEMODULE and USEPKG in Makefile to include modules and packages.

Native TAP

PORT macro for native uses TAP interface.

PORT Macro

Allows specifying serial interface with PORT.

Pull Requests

GitHub pull requests are the primary contribution mechanism.

Pyterm Default

Uses pyterm as default terminal application.

RIOT Shell

Interact with the RIOT shell running on the board after flashing.

Scheduler

The kernel includes a scheduler for task management.

Threading

Documented feature