nRF Cloud その5 -Massage-
2025.07.24(2026.06.25 更新)

こんにちは。
加賀デバイスのNordic Teamです。
nRF Cloudコラムシリーズですが、今回はMessageの機能ついて記事を書きたいと思います。
Messageの機能と言っても細かく分けると、下図のようにMessage、Alart & Log、Shadowなど用途に分けて様々なデータの送り方が存在します。

それでは1つずつの機能を見ていきたいと思います。
Message機能の確認には下記環境を使用しました。
ハードウェア:nRF9151 DK
ソフトウェア:nRF Cloud multi-service
◢◤①Message
Device(nRF91xxなど)からnRF CloudにMessageを送るときはMQTT APIやREST APIを使用します。
送られてきたデータはnRF Cloudに30日間保存されます。
DeviceからnRF Cloudに送られてきたMessageは下記のようにTerminal部分に表示されます。

nRF Cloudに保存されたデータは、Application serverからMQTT APIやREST APIなど使い読み出します。

また、nRF CloudからDeviceに対してMessageも送ることが可能です。
nRF Cloud multi-serviceでは指定されたフォーマットでATコマンドをリモートで実行することが出来ます。
注:プロトコルがMQTTになっている必要があります。
Remote execution of modem AT commands (MQTT only)
nRF CloudからDeviceに対してMessageを送るにはTerminalの下部にあるテキストボックスを使用します。
ドキュメントに記載のフォーマットに従い下記コマンドを入力してその応答を確認してみます。
今回はAT%XMONITORコマンドで試してみます。
入力コマンド:{“appId”:”MODEM”,”messageType”:”CMD”,”data”:”AT%XMONITOR”}
応答はTerminal部分で確認が出来ます。

◢◤②Device Shadow
Device Shadowの機能はメールボックスとして使用出来ます。
Shadow
DeviceがOFFになっていてもこのApplication ServerがnRF Cloudのshadowを更新することで、Deviceが起動した時にそのShadowを参照して更新された内容をDeviceが知ることが出来ます。
下記の例ではApplication ServerからDeviceのintervalの要素の値を更新する流れを説明しています。

1:最初にApplication ServerがnRF CloudのDevice Shadowのdisired:intervalの値を更新(120→300)します。この時はまだDeviceは電源OFFとなっています。
2:Deviceが起動した時に、DeviceがDevice Shadowのdisired:intervalの値(300)を確認します。
3:disired:intervalの値と自身のintervalの値と差があった場合は、自身の値を更新してnRF CloudのDevice Shadowのreported:intervalを更新(120→300)します。
4:nRF CloudはDevice Shadowのreported:intervalが更新された事をApplication Serverに通知します。
◢◤③Message Routing Service
Message Routing serviceを使用することでDeivceから受信したMessageをnRF Cloudが自動でApplication Serverに転送することが可能です。
nRF cloud側の設定方法や、Application Server側の応答方法などについては下記ドキュメントを参考にしてみて下さい。
Message Routing Service
ドキュメントに記載された内容で試した結果が下記となります。

以上までがMessageの機能の関する紹介となります。
次回はnRF cloudのLocation Serviceの機能について説明したいと思います。
nRF Cloudにご興味ございましたら弊社のお問い合わせ にご連絡ください。
今後もNordicの紹介及びコラムにて色々な情報を公開致しますので是非ご確認ください。
また、Facebookでも随時情報を公開しておりますので合わせてご確認ください。
Nordic コラム一覧
スマホで簡単!チャネルサウンディング評価
関連記事