OSS探訪GitHubでログイン

省電力IoT機器向けのソフトリアルタイムOSで、多様なマイコンと通信方式を扱う

スコアの見方

OSS規模スコアはStars・Watchers・Forks・Contributorsを対数圧縮して重み付けした現在の規模指標(上限なし)です。発掘スコアは現在のOSS規模スコアから発掘時点のOSS規模スコアを引いた値、更新ペースは直近30日Commit数、成長モメンタムは直近の観測期間におけるOSS規模スコア差、OSS健全度は取得できた更新状況・Community Health・Releaseの0〜100評価です。

Stars
5,807
主要言語
C
ライセンス
LGPL-2.1
リポジトリ最終更新
2026/10/03
ページ内ナビ

概要

IoT機器や組み込み機器のマイコン上で動くオープンソースのOSです。小さなメモリ使用量、省電力、ソフトリアルタイム処理を重視し、8・16・32ビットのマイコンと200種類を超えるボードを支えます。通信規格やセンサー向けの機能を組み合わせ、同じAPIで機器を開発できます。

特徴と向いている用途

公式資料に基づく紹介・実機未検証 · 内容確認日:

主な特徴

制約の大きいマイコンでソフトリアルタイム処理を動かす

優先度を持つプリエンプティブ方式と、不要な周期割り込みを抑えるtickless方式を組み合わせたスケジューラを備えます。タイマーや柔軟なメモリ管理も利用できます。小さなメモリ使用量と省電力を設計原則とし、ハードウェアに依存しにくいAPIとPOSIXの一部を提供します。

出典:[1]

通信と周辺機器を必要な構成で組み合わせる

IPv6、6LoWPAN、UDP、TCP、RPL、CoAP、MQTT、BLE、LoRaWANなどの通信機能を選べます。SPI、I2C、UART、USB、CANのほか、各種センサー、アクチュエーター、表示装置向けのドライバーも用意されています。

出典:[1]

向いている用途

複数のボードへ展開するIoTファームウェアを開発する

単一ベンダーに寄せず、センサー端末、低消費電力ノード、ネットワーク機器を複数のマイコンへ展開したい開発に向きます。LinuxやBSDではnativeボードを通常のプロセスとして動かし、実機へ書き込む前に基本動作を試せます。

出典:[1][2]

導入前の確認

ホストOS、対象ボード、ツールチェーンを先に揃える

開発環境はLinuxが推奨され、WindowsはWSL経由、macOSでのネイティブ開発は公式には非対応です。実機ではCPUごとのクロスコンパイラ、書き込み・デバッグ用ツール、シリアル機器への権限が必要です。大部分はLGPL-2.1ですが、外部由来の一部ファイルには別のライセンスが適用されます。

出典:[2][3][1][7]

参考にした公式資料

  1. [1]RIOT 2026.07 README(2026-10-04)
  2. [2]RIOT 2026.07 development environment guide(2026-10-04)
  3. [3]RIOT 2026.07 example build guide(2026-10-04)
  4. [4]RIOT 2026.07 hello-world example(2026-10-04)
  5. [5]RIOT 2026.07 release(2026-10-04)
  6. [6]RIOT GitHub repository metadata(2026-10-04)
  7. [7]RIOT 2026.07 LGPL-2.1 license(2026-10-04)
編集部からの補足

採用判断では対応ボード名だけでなく、使う無線、センサー、書き込み器まで組み合わせて確認してください。nativeボードでの試行は便利ですが、割り込み、消費電力、実際の周辺機器は実機で確かめる必要があります。

3ステップで試す

  1. 1

    固定リリースのhello-worldへ移動する

    LinuxまたはWSL上で、RIOT 2026.07のソースを取得して付属の最小例へ移動します。

    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. 2

    nativeボード向けにビルドする

    ホスト用の仮想ボードとしてhello-worldをビルドします。64ビットLinuxではmultilib対応のコンパイラと開発ヘッダーが必要です。

    make BOARD=native
  3. 3

    hello-worldを端末で起動する

    Hello World!の出力を確認し、Ctrl+Cで終了します。実機を試す場合は対象ボード名と書き込み手順を公式ガイドで確認してください。

    make term BOARD=native
公式READMEで確認

成長

成長の推移 · 直近30日

5,807 Stars

推移データを蓄積中です。

開発アクティビティ

直近90日・週次

Commit(直近30日)
318
Open PR
489

開発アクティビティを蓄積中です。

Built with

カテゴリとタグ

GitHubデータ

GitHubのデータGitHubの詳細データを見る

GitHub Topics

  • c
  • iot
  • os
  • internetofthings
  • microcontrollers
  • rtos
  • riot-os
  • riotos
  • internet
  • internet-of-things
Stars
5,807
Forks
2,107
Watchers
245
Open Issues
415
Contributors
289
所有者種別
Organization
主要言語
C
ライセンス
LGPL-2.1
リポジトリ最終更新
2026/10/03

このOSSの使い方や活用事例をMarkdownで投稿できます。管理者が承認した後に公開されます。

情報の誤りを報告

掲載内容に誤りや古い情報があればお知らせください。

このページを読んで、次に何をすればよいか分かりましたか?