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