Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
IoT デバイスから AWS IoT へ:Zephyr RTOS でやってみた
Search
jun1_hirata
October 12, 2025
0
360
IoT デバイスから AWS IoT へ:Zephyr RTOS でやってみた
JAWS-UG IoT専門支部「AWS IoT 10年の歩みを振り返る」(
https://jawsug-iot.connpass.com/event/367418/)のLTで使用した
。
jun1_hirata
October 12, 2025
Tweet
Share
More Decks by jun1_hirata
See All by jun1_hirata
IoT デバイスから AWS IoT へ:Zephyr RTOS でOver the Air
jun1_hirata
0
61
年末の風物詩 Qiita Advent Calendar開催? みんなでZephyrの記事を投稿しよう
jun1_hirata
0
100
Featured
See All Featured
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.2k
Rails Girls Zürich Keynote
gr2m
95
14k
We Have a Design System, Now What?
morganepeng
54
8k
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
1
270
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
74
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
54
48k
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
76
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.6k
Embracing the Ebb and Flow
colly
88
4.9k
SEO for Brand Visibility & Recognition
aleyda
0
4.1k
Build The Right Thing And Hit Your Dates
maggiecrowley
38
3k
The Cult of Friendly URLs
andyhume
79
6.7k
Transcript
IoT デバイスから AWS IoT へ: Zephyr RTOS でやってみた JAWS-UG IoT専門支部「AWS
IoT 10年の歩みを振り返る」 October 8 2025 Junichi Hirata MEGURO
アジェンダ • 私とAWS IoTの10年 (軽く) • Zephyr RTOSについて (軽く) •
Zephyr RTOSのAWS IoTサンプルを動かす • 今後の活動予定
LTへ応募した経緯など 最近日本のZephyr RTOSのコミュニティ※に参加しています → Zephyr RTOSはIoTに強いらしいと聞く → connpassでAWS IoT 10周年イベントを見つける
→ そういや、Zephyr RTOSってAWS IoTどんななのか気になるな → 調べて評価ボードで動かそうかな → せっかくだし、LTに応募してみようか ※https://zephyr-rtos.connpass.com/
私とAWS IOTの10年 ・7~8年ぐらいの付き合い ・当時所属していた会社で「リアルタイムOSとTCP/IPスタックをAWS 対応させといて」という超曖昧な要件を受けてAWS IoTへ接続させたのが はじめて ・マイコンの性能が低くてAWS IoTと接続する際のTLSのクライアント認証 のRSAの計算に時間がかかっていたのは、つらかったが、
いい経験ができたとも思う。 ・ときどき仕事や個人的興味で使わせてもらってます。
ZEPHYR RTOSとは • Linux Foundationが主導して開発しているオープンソースで提供されているリアルタ イムOSプロジェクト • カーネルだけでなく、通信に必要なミドルウェアも提供している • 本イベント参加者向けにざっくり説明するとAmazon
FreeRTOSみたいなもん 次のページから数ページ Zephyr project Overviewからいくつかピックアップしてご紹介 Zephyr project Overview https://zephyrproject.org/zephyr-overview/
https://zephyrproject.org/zephyr-overview/からの引用
https://zephyrproject.org/zephyr-overview/からの引用
https://zephyrproject.org/zephyr-overview/からの引用
ZEPHYR RTOSとは (日本での活動) • 昨年までは個々で開発してソースをコミットしたり、非公式なイベントを催していた。 • 今年から公式なmeetupとしてイベントを開催している 7/4 札幌 開催レポート
https://www.zephyrproject.org/recap-blog-zephyr-project-meetup-sapporo-japan/ 10/20 大阪 (Honda Software Studio Osaka) イベントページ https://zephyr-rtos.connpass.com/event/368403/ • 海外半導体ベンダーの日本法人がZephyrをテーマにビジネス向けのWebinarを開催
AWS IOTのサンプルを動かす サンプルはあるの? → ありました。
AWS IOTのサンプルを動かす ドキュメントは? → これ https://docs.zephyrproject.org/latest/samples/net/cloud/aws_iot_mqtt/README.html
AWS IOTのサンプルを動かす ステップバイステップで動作確認まで説明します 今回使用するボードはこれ ¥4000ぐらいです。 https://docs.zephyrproject.org/latest/boards/nxp/frdm_mcxn947/doc/index.html サンプルのドキュメントでは【NUCLEO-F429ZI】で動作実績書かれていますが、Zephyrの移植性を 確認するためにあえて別のボードでチャレンジ!
開発環境とソースコードのインストール Getting Started Guideの通りに実行 https://docs.zephyrproject.org/latest/develop/getting_started/index.html ↑の手順でビルドに使用するツール(コンパイラなど)もインストールされます。 私はWSL上で動作するUbuntuに環境作りました。
-b のパラメータ<your-board-name>はボード名になります。 使用されるボード向けの説明を参照しましょう。↓でボードを選択して表示します。 https://docs.zephyrproject.org/latest/boards/index.html#
下はhello worldのサンプルプログラムのビルドとフラッシュへプログラムを書き込み のコマンドです。 samples/hello_worldをsamples/net/cloud/aws_iot_mqttへ変更すると、 AWS IoT接続でもをビルドできます…が、その前にAWS IoTでモノを作成して、 接続のための証明書、鍵を入手する必要があります。
AWSコンソールでAWS IoTを開き モノの作成してください。その際にキー、証明書を保存してください。 詳細は皆さんよく知ってると思うので、本イベントでは省略します。
AWS IoTから取得した証明書と鍵を下記のディレクトリへ置きます。 samples/net/cloud/aws_iot_mqtt/src/creds convert_key.pyを実行します。
サンプルプログラムのドキュメントを表示して調整するパラメータを確認して、 プロジェクトへ反映します。 https://docs.zephyrproject.org/latest/samples/net/cloud/aws_iot_mqtt/README.html CONFIG_AWS_ENDPOINT以外はデフォルト値でもとりあえず動作します CONFIG_AWS_ENDPOINTはAWS IoTのコンソールでエンドポイントを確認して入 力します。
ビルド ビルドしたプログラムをボードへ書き込み
AWS IoT Core Zephyr_sample/downlink Zephyr_sample/data AWS IOTのサンプルを動かす(構成) Zephyr AWS IoT
サンプルプログラムが 動作しているボード サブスクライブ サブスクライブしているトピックへ メッセージがPublishされたら、 Zephyr_sample/dataへメッセージを Publishする ①メッセージPublish ②①のメッセージを受信 ③メッセージPublish
実行結果 (ZEPHYR側) テストクライアントが Publishしたメッセージを受信後 メッセージをPublishしている
実行結果 (テストクライアント側) Zephyrが Publishしたメッセージを受信している
セルフQ&A DeviceShadowやOTAはない? → なさそう。 次の2つのいずれかで対応する必要がありそう。 (1) JSONパーサと先のサンプルのMQTTはあるので、自分で実装を頑張る (2)AWSがgithubで公開しているライブラリを使う (内容精査できてません) AWS
IoT Device Embedded C SDK for Zephyr https://github.com/aws/aws-iot-device-embedded-c-sdk-for-zephyr
最後に 今後の活動 AWS IoT使ってOTAできないかと取り組んでいます。 機会があれば、また成果をどこかで報告したいと思います。
ご清聴ありがとうございました。