Upgrade to Pro — share decks privately, control downloads, hide ads and more …

ラズパイ & Picoで入門:Zephyr(RTOS)の環境構築からビルドまでの紹介

ラズパイ & Picoで入門:Zephyr(RTOS)の環境構築からビルドまでの紹介

ミソジ 2026/5/23
オープンソースカンファレンス2026 Nagoya
#oscnagoya

Avatar for misoji engineer

misoji engineer

May 22, 2026

More Decks by misoji engineer

Other Decks in Technology

Transcript

  1. 他RTOSの比較 中立のオープンソースの強みがあり、豊富なドライバをサポート Zephyr RTOS FreeRTOS Azure RTOS (ThreadX) μITRON (TOPPERS等)

    ライセンス Apache 2.0 MIT MIT TOPPERS (BSD系) 設計思想 フルスタック型 ミニマルなカーネル 高性能・高信頼性 超軽量・日本標準 管理団体 Linux Foundation Amazon (AWS) Microsoft (Azure) TRON Forum / 各団体 ハード抽象化 強力 (DeviceTree) ベンダー依存 中程度 手動定義 ネットワーク 非常に豊富 追加ライブラリ対応 NetXが極めて強力 最小限 主な開発手法 West / CMake C言語ソース直接 IDE / ツールセット 独自コンフィギュレータ Zephyr(RTOS)使えば 多くのサポート有り OS無しもいいけど... CPU マイコン 本当!?
  2. Lチカ(ラズパイPico) まずは基本的なLチカ。 cd %HOMEPATH%\zephyrproject\zephyr west build -p always -b rpi_pico2/rp2350a/m33

    samples\basic\blinky  *ラズパイ_Pico2 west build -p always -b rpi_pico/rp2040 samples\basic\blinky  *ラズパイ_Pico boardsフォルダを見れば、 サポートされているボードが分かります https://github.com/zephyrproject-rtos/zephyr /tree/main/boards/raspberrypi
  3. Lチカ(ラズパイPico) +α USBでシリアルメッセージも受け取るようにしてみる nRF5340 + Debug Message 電源 uf2書き込み USB

    CDC ACM(Communication Device Class Abstract Control Model) USBデバイスをPCに接続した際に、仮想的なシリアルポート(COMポート)として認識させるための標準規格 PCからUSB1本で
  4. ラズパイ4B + Zephyr ラズパイ4B(A72)でLチカしてみる cd %HOMEPATH%\zephyrproject\zephyr west build -p always

    -b rpi_4b samples\basic\blinky  *ラズパイ4B west build -p always -b rpi_5 samples\basic\blinky  *ラズパイ5 ビルド手順はPicoと同じ
  5. ラズパイ + Zephyrの試し方 RaspbianのSDの「config.txt」編集 + .binファイル で動くよ cd %HOMEPATH%\zephyrproject\zephyr west build

    -p always -b rpi_4b samples\basic\blinky  *ラズパイ4B west build -p always -b rpi_5 samples\basic\blinky  *ラズパイ5 雑な しっかりした手順は 公式を参考にしてね
  6. Zephyrを使うメリット Geminiに書かせると沢山出てくる... 1. 優れたハードウェア抽象化(DeviceTreeの強力なサポート) スライドの比較表にもある通り、DeviceTreeによる強力なハードウェア抽象化が用意されています。コードとハードウェア依存の設定(ピン配置など)が分離されているため、マイコンの変更やボードの移行が非常にスムーズです。 2. Linux Foundationによる中立な運営 特定の半導体ベンダーに依存せず、Linux Foundationがホストするオープンソースプロジェクトです。企業の枠を超えて開発が進められているため、ベンダーロックインのリスクを回避できます。

    3. 非常に豊富なネットワーク・接続性機能 IoTデバイス開発を強く意識して設計されており、TCP/IP、Bluetooth Low Energy (BLE)、Wi-Fi、Thread、LoRaWANなど、数多くのネットワークスタックがデフォルトで非常に豊富に組み込まれています。 4. 1000以上の広範なボード・マイコン対応 Raspberry Pi Pico(RP2040/RP2350)やRaspberry Pi 4B/5をはじめ、世界中の主要な半導体メーカーの1000種類以上のボードが標準でサポートされています。 5. 巨大かつ活発な開発コミュニティ 世界中のトップ企業やエンジニアが開発に参加しており、GitHubの活動も非常に活発です。バグ修正が早く、新しい機能やセキュリティアップデートが常に提供されています。 6. 厳格な長期サポート(LTS)とセキュリティ対応 製品開発に安心して使えるよう、定期的にLTS(長期サポート)版がリリースされます。また、脆弱性管理(CVE)の体制もしっかりしており、製品の安全性を保ちやすい環境が整っています。 7. 省メモリ・超軽量設計(KByte単位のOS) スライドに「K(キロ)ByteのOS」とあるように、リソースの限られた小さな組み込みデバイスやIoT端末でも動作するよう、フットプリント(ROM/RAM)が極めて小さく設計されています。 8. Westによるモダンな開発・ビルド環境 CMakeや、Zephyr独自のメタツール「West」を使用した高度なビルド管理が行えます。モジュール管理や複数リポジトリの統合、複数プラットフォーム向けのビルドがコマンド一つで効率的に行えます。 9. 商用利用しやすいApache 2.0ライセンス ライセンスはApache License 2.0が採用されています。ソースコードを改変して製品(商用)に組み込んでも、その製品自体のコードを公開する義務がないため、ビジネスで非常に利用しやすいです。 10. 豊富な標準サンプルコードによる高い開発効率 samples/basic/blinky(Lチカ)やhello_worldなど、すぐに動かせる膨大なサンプルが同梱されています。環境構築さえ済めば、スライドにあるような簡単なコマンド(west build)で、迅速に開発のスタートラインに立つことができます。 凄く多く あるけど...
  7. 同じZephyr環境で、ボード名変えてビルドして簡単に動く Zephyrの面白いところ 個人的に ラズパイ_4B: west build -p -b rpi_4b ラズパイ_Pico2W:

    west build -p -b rpi_pico2/rp2350a/m33/w Nordic_nRF54L15-DK: west build -p -b nrf54l15dk/nrf54l15/cpuapp Seeed_XIAO nRF54L15: west build -p -b xiao_nrf54l15/nrf54l15/cpuapp
  8. 横展会が楽なので、RTOSとしてのベンチマークも簡単にできる Zephyrの面白いところ+α 個人的に 項目 内容 RPi5(A76) RPi4B(A72) Pico2W(M33) Pico(M0+) Context

    Switch スレッド切り替え 47 464 1,145 2,165 ISR Resume 割り込みから復帰 38 273 2,897 5,573 Mutex Lock 排他制御ロック 7 236 471 740 Semaphore Take 待機あり取得 51 615 1,794 3,205 Heap Malloc メモリ確保 35 376 4,199 8,830 Thread Create スレッド作成 480 3,876 1,481 2,870 •数値が小さいほど高性能(高速)です。単位はすべて ナノ秒 (ns) です。 •ラズパイ5(A76)2400MHz、RPi4B(A72)は600MHzで測定 ブログ記事 ・RTOSとしての応答速度を比較してみた(Zephyrでのベンチマーク) https://misoji-engineer.com/archives/rtos-speed-benchmark.html ラズパイ5、ラズパイ4B、Pico2W、Pico
  9. 色んなボードのスペック比較もできる。同じM33コアで比較 Zephyrの面白いところ+α 個人的に •数値が小さいほど高性能(高速)です。単位はすべて ナノ秒 (ns) です。 ブログ記事 ・同じARMコア(M33)で複数メーカのRTOS処理速度を比べてみた https://misoji-engineer.com/archives/arm-m33-rtos.html

    RW612(NXP)、nRF54L15(Nordic)、Pico2W 項目 RW612(M33 / 260MHz) Pico 2 W(M33 / 150MHz) nRF54L15(M33 / 128MHz) Pico(M0+ / 125MHz) Context Switch (スレッド切替) 699 1,145 1,376 2,165 Mutex Lock (排他制御) 286 471 556 740 Semaphore Take (待機あり取得) 1,089 1,794 2,219 3,205 Heap Malloc (メモリ確保) 2,017 4,199 2,254 8,830 Thread Create (スレッド作成) 1,061 1,481 2,265 2,870
  10. Zephyr Project meetup(勉強会) Zephyrの勉強会(meetup)も多く開催されています ・2025年7月:札幌  株式会社Space Cubics様のビル ・2025年10月:大阪  株式会社Honda様の新しいソフトウェア開発拠点 ・2025年12月:東京

     ルネサスエレクトロニクス株式会社様の豊洲オフィス ・2026年3月:名古屋  ブラザー工業株式会社様のブラザーミュージアム ・2026年5月:高知  高知工科大学 高知県産学官民連携センター
  11. XIAO nRF54L15 Sense + 拡張ボード Zephyr(RTOS) + マイク で 「音声認識」

    ▪XIAO nRF54L15 Sense + 低電力 Wireless SoC (Nordic nRF54L15) ・マイク ・加速度センサ 内蔵モジュール ・Up ・Down ・Right LEDの色が 変わります
  12. 詳細ブログ記事のリンク先(QRコード) Edge AI on Zephyr: ULP Acoustic Monitoring for Wildlife

    https://www.hackster.io/iotengineer 22/edge-ai-on-zephyr-ulp-acoustic- monitoring-for-wildlife-e31cdd
  13. M5Stack + Zephyr(RTOS) + Edge Impulse M5Stackで「ジェスチャー認識」 with Zephyr(RTOS) ・M5Stack

    CoreS3 + 加速度センサ 内蔵 Edge Impulse Zephyr (RTOS) 優しく 触ってね! https://edgeimpulse.com/ https://www.zephyrproject.org/