On this page
Overview
This open-source operating system runs on microcontrollers used in IoT and embedded devices. It emphasizes a small memory footprint, energy efficiency, and soft real-time behavior while supporting 8-, 16-, and 32-bit devices and more than 200 boards. Developers can combine networking and device modules behind largely uniform APIs.
Features and best fit
Based on official documentation; not hands-on tested · Content checked:
Key features
Schedule soft real-time work on constrained microcontrollers
A priority-based, preemptive, tickless scheduler works alongside timers and flexible memory management. RIOT treats a small footprint and energy efficiency as design principles and offers hardware-independent APIs with partial POSIX compatibility.
Sources: [1]
Combine networking protocols and peripheral drivers as needed
Available networking includes IPv6, 6LoWPAN, UDP, TCP, RPL, CoAP, MQTT, BLE, and LoRaWAN. Drivers cover SPI, I2C, UART, USB, CAN, sensors, actuators, displays, and other device classes.
Sources: [1]
Best fit
Before adoption
Prepare the host OS, board support, and toolchain first
Linux is the recommended development host; Windows uses WSL, and native development on macOS is not officially supported. Physical boards require architecture-specific cross-compilers, flashing or debugging tools, and serial-device permissions. Most code uses LGPL-2.1, while some externally sourced files carry separate licenses.
Official sources
- [1]RIOT 2026.07 README(2026-10-04)
- [2]RIOT 2026.07 development environment guide(2026-10-04)
- [3]RIOT 2026.07 example build guide(2026-10-04)
- [4]RIOT 2026.07 hello-world example(2026-10-04)
- [5]RIOT 2026.07 release(2026-10-04)
- [6]RIOT GitHub repository metadata(2026-10-04)
- [7]RIOT 2026.07 LGPL-2.1 license(2026-10-04)
Supplemental curator note
Evaluate the complete hardware path: board, radio, sensors, and flashing probe. The native board is useful for an early check, but interrupts, power use, and real peripherals still require testing on the target device.
Try it in 3 steps
- 1
Enter the fixed-release hello-world example
On Linux or WSL, clone RIOT 2026.07 and enter its smallest bundled example.
git clone --branch 2026.07 --depth 1 https://github.com/RIOT-OS/RIOT.git riot-2026.07 && cd riot-2026.07/examples/basic/hello-world - 2
Build for the native board
Build hello-world for the host-based virtual board. A 64-bit Linux host needs multilib compiler and development packages.
make BOARD=native - 3
Run hello-world in the terminal
Confirm the
Hello World!output and stop it withCtrl+C. For hardware, consult the official guide for the board name and flashing requirements.make term BOARD=native
Growth
Growth trends · Last 30 days
5,807 Stars
Trend data is still being collected.
Development activity
Last 90 days · weekly
- Commits (last 30 days)
- 318
- Open PRs
- 489
Development activity is still being collected.
Built with
Categories and tags
Categories
GitHub data
GitHub dataView detailed GitHub data
GitHub Topics
- c
- iot
- os
- internetofthings
- microcontrollers
- rtos
- riot-os
- riotos
- internet
- internet-of-things
Related information
Write a related articleShare a guide or use case for this OSS in Markdown. Articles are published after administrator approval.
Explore next
- iperf38,796 Stars
1 shared tag(s) · 1 shared category(s) · Same language
actively measure TCP, UDP, and SCTP throughput, bitrate, loss, and related network-performance metrics in a client/server model
C - Zephyr16,683 Stars
4 shared tag(s) · 1 shared category(s) · Same language
bring real-time execution and connectivity to constrained devices
C - Eclipse Mosquitto11,246 Stars
2 shared tag(s) · 1 shared category(s) · Same language
run an MQTT 5.0/3.1.1/3.1 broker with pub/sub CLI tools and C/C++ client libraries for lightweight messaging
C - Eclipse Paho MQTT C2,373 Stars
2 shared tag(s) · 1 shared category(s) · Same language
connect C applications to MQTT 5.0/3.1.1 brokers through synchronous or asynchronous APIs over TCP, TLS, WebSockets, and Unix sockets
C - Contiki-NG1,532 Stars
2 shared tag(s) · 1 shared category(s) · Same language
combine firmware and low-power IoT networking through an OS with IPv6/6LoWPAN, RPL, TSCH, CoAP, and cross-platform device support
C - Samba1,145 Stars
2 shared tag(s) · 1 shared category(s) · Same language
Share files over SMB from Linux and Unix and integrate with Windows and Active Directory
C
Report incorrect information
Tell us if any listing information is incorrect or outdated.