RIOT is a real-time multi-threading operating system that supports a range of devices that are typically found in the Internet of Things (IoT): 8-bit, 16-bit and 32-bit microcontrollers.


  • A preemptive, tickless scheduler with priorities
  • Flexible memory management
  • High resolution, long-term timers
  • Support for AVR, MSP430, ARM7, and ARM Cortex-M on over 50 boards
  • The native port allows to run RIOT as-is on Linux, BSD, and MacOS. Multiple instances of RIOT running on a single machine can also be interconnected via a simple virtual Ethernet bridge
  • IPv6
  • 6LoWPAN (RFC4944, RFC6282, and RFC6775)
  • UDP
  • RPL (storing mode, P2P mode)
  • CoAP
  • CCN-Lite

Demo Projects


Source code:

License: LGPLv2.1

RIOT Platforms

  • MSP430
  • ARM
  • AVR
  • MIPS
  • RISC-V

RIOT Components

  • BLE
  • LoRaWAN
  • FileSystem
  • Network
  • 6LoWPAN
  • GUI
  • USBDevice
  • OTA