ご利用の流れ(SCO-LTEM1NUC)¶
[更新: 2022年3月31日]
「さくらのモノプラットフォーム」において提供されるDIP型LTEモジュール基板(SCM-LTEM1NRF)およびNucleo向け変換基板(SCO-LTEM1NUC)を使ったご利用開始の流れを説明するページです。
SCM-LTEM1NRFは2.54mmピッチのスルーホールを備え、任意のマイコンボードとジャンパーケーブル等で接続することで、さくらのモノプラットフォームとの接続を提供する評価ボードです。 より量産化を見据えた開発の前段階や、既存製品をベースに通信やそれを踏まえたクラウド側への機能追加の検討に役立ちます。
本文章では STMicro Nucleo F411 向けの サンプルプログラム SIPF Client for Nucleo を動作させるまでの手順をご案内します。
1. 準備¶
1-1. 使用するハードウェア¶
- STMicro Nucleo F411RE
- 入手先については
サンプル基板取扱説明書
の『3.1. 部材について』に記載があります。
- 入手先については
- 部品実装済みのNucleo対応シールド基板 rev.C
- 部品の入手、実装につきましては
サンプル基板取扱説明書
の『3.1. 部材について』をご参照ください
- 部品の入手、実装につきましては
- DIP型LTEモジュール基板(SCM-LTEM1NRF)
- アンテナ
- USB Mini-Bケーブル * 接続するPCに合わせたケーブルを選定ください
- ターミナルソフト(Teraterm等)が動作するPC
1-2. さくらインターネット会員IDの作成¶
さくらインターネットの会員IDをお持ちでない場合やお持ちの会員IDとは別に利用される場合、提供するコントロールパネルにアクセスできるようにするため さくらインターネット会員登録 から会員情報を登録します。 メールアドレスを入力したら以降は送られる手順に従い会員IDを発行します。
2. コントロールパネルへのログイン¶
さくらのセキュアモバイルコネクトのご利用にあたっては管理ツールとしてコントロールパネルを提供しています。
さくらのクラウドのコントロールパネル にログインします。
ログインが完了するとさくらのクラウドホーム画面に遷移しますので、「セキュアモバイルコネクト」をクリックします。
SIM一覧画面に遷移します。以降はこのコントロールパネルを使用して各種リソースを作成および設定を行います。
3. さくらのセキュアモバイルコネクトでのSIMの作成¶
さくらのセキュアモバイルコネクトのSIMは入手直後は有効化されておらず、ユーザー自身でコントロールパネルへの登録および有効化の作業が必要です。
さくらのクラウドコントロールパネルメインメニューより「セキュアモバイル」を選択し、左側のサイドメニューから「SIM」をクリックします。「SIM一覧」画面が表示されたら右上の「追加」をクリックします。
「SIM追加」画面が表示されたら必須項目であるICCIDおよびPASSCODE、接続先として許可するキャリアの選択等を行います。
ヒント
現時点のSCM-LTEM1NRFファームウェアではキャリアとしてsoftbank固定になっています。キャリアとしてsoftbankは必ず選択してください。
SCM-LTEM1NRFの場合、登録に使用するICCIDおよびPASSCODEは基板裏面に記載されています。
表記はSCO-M5SNRF9160のものですが表記箇所は同一となります。
名前欄に任意の名称を入力し、右下の「作成」をクリックします。ここでは名前欄に「new-sim」を入力しています。
リソース作成が行われるため、確認モーダルが表示されます。確認のうえ、問題がなければ「作成」をクリックします。
SIMの作成が開始されますので「閉じる」をクリックします。ステータスが成功になっていない場合でも処理は進行します。
重要
登録時にエラーが出る場合は、PASSCODEを確認ください。大文字「アイ」と小文字の「エル」等判別しづらい文字については、両方のパターンにて入力をお試しください。
再度左側のサイドメニューから「SIM」をクリックします。「SIM一覧」画面に新しいSIMが作成されていることを確認します。
以上でSIMの作成は完了です。
参考
4. SIMのプロジェクトへの紐付け¶
さくらのモノプラットフォームを利用するためには、複数のSIMやサービスアダプタを管理する「プロジェクト」に登録する必要があります。
ヒント
作成済みのプロジェクトにSIMを紐付ける事もできます。その際にはプロジェクトの作成は不要です。
4-1. プロジェクトの作成¶
さくらのクラウドコントロールパネルメインメニューより「モノプラットフォーム」を選択し、左側のサイドメニューから「プロジェクト」をクリックします。「プロジェクト一覧」画面が表示されたら、右上の「追加」ボタンをクリックします。
作成したいプロジェクトのパラメータを設定し、「作成」ボタンをクリックします。
- 名前 : 作成するプロジェクトにつける名前を入力します。空の場合自動で割り振られます。
- 説明 : 作成するプロジェクトに説明が必要な場合に入力します。
- タグ : コントロールパネルのタグ機能を使用する場合に入力します。
- アイコン : コントロールパネルのアイコン機能を使用する場合に選択します。
さくらのクラウドコントロールパネルメインメニューより「モノプラットフォーム」を選択し、 左側のサイドメニューから「プロジェクト」をクリックします。 「プロジェクト一覧」に作成したプロジェクトができていれば成功です。
4-2. プロジェクトへのSIMの登録¶
さくらのクラウドコントロールパネルメインメニューより「セキュアモバイル」を選択し、左側のサイドメニューから「SIM」をクリックします。「SIM一覧」画面が表示されたら該当のSIMをダブルクリックするか、チェックボックスで選択したうえで右上の「詳細」をクリックします。
右上の「接続先の変更」をクリックし、接続先の変更画面から接続先に「モノプラットフォーム」を、プロジェクトに作成済みのリソースを、それぞれ選択のうえ「変更」をクリックします。
対象となるプロジェクトへの接続、および自動的にIPアドレスの採番が行われますので「閉じる」をクリックします。ステータスが成功になっていない場合でも処理は進行します。
詳細画面でモバイルゲートウェイ欄およびIPアドレス欄が表示されており、それぞれに値が入っていることを確認します。
さくらのクラウドコントロールパネルメインメニューより「モノプラットフォーム」を選択し、左側のサイドメニューから「プロジェクト」をクリックします。 「プロジェクト一覧」画面が表示されたら、SIMの設定で選択したプロジェクトをダブルクリックするかチェックボックスで選択したうえで右上の「詳細」をクリックします。
プロジェクトのデバイスタブのリストに、登録したSIMが表示されていれば、 以上でSIMの紐付けは完了です。
5. ハードウェアの組み上げと接続¶
SCM-LTEM1NRFにアンテナを接続します。
Nucleo対応シールド基板にSCM-LTEM1NRFを挿します。
Nucleo F411REにNucleo対応シールド基板を挿します。
USB Mini-BケーブルでPCとシールド基板を接続します。
6. サンプルプログラムの書き込み¶
ヒント
スケッチ書き込み前に、SCM-LTEM1NRF ファームウェア sipf-std-client_nrf9160 の最新版への更新を推奨します。 8-3. SCM-LTEM1NRFファームウェアのFOTA実行方法
PCでターミナルソフトを起動しNucleo F411REのUSBシリアルポートを開きます。
ヒント
シリアルポートの設定は以下の通りです。
- ボーレート: 115200pbs
- DATAビット数: 8bit
- STOPビット数: 1bit
- パリティ: なし
- ハードウェフロー制御: なし
改行コードはCRLFに設定してください。
ビルド済みのサンプルプログラム(SIPF_Client_for_NucleoF411RE_*.bin)を GitHub sakura-internet/sipf-std-client_sample_nucleoのリリースページ から最新をダウンロードします。 (スクリーンショットは現在の最新でない場合があります。)
ダウンロードしたサンプルプログラムをUSBドライブ( NODE_F411RE
)にコピーします。
この時、サンプルプログラムのbinファイルは7章の動作確認でどちらの動作を確認したいかで使用するものが変わります。
動作ごとのファイルの割り当ては各確認の章を参照してください。
書き込みが完了するとサンプルプログラムが動作します。
ターミナルに *** SIPF Client for Nucleo ***
からはじまるサンプルプログラムの起動メッセージが表示されます。
+++ Ready +++
が表示されたら起動完了です。
7. WebSocketサービスアダプタを使った動作確認¶
サーバーからモノプラットフォームに対して送受するためのサービスアダプタを使って動作を確認します。
Websocketサービスアダプタには簡易的に送受データを見たり送ったりする機能もあるので、 サーバーなしでも動作の確認が可能です。
まず、PCでターミナルソフトを起動しNucleo F411REのUSBシリアルポートを開きます。
ヒント
シリアルポートの設定は以下の通りです。
- ボーレート: 115200pbs
- DATAビット数: 8bit
- STOPビット数: 1bit
- パリティ: なし
- ハードウェフロー制御: なし
改行コードはCRLFに設定してください。
ヒント
作成済みのWebsocketサービスアダプタで確認することもできます。その際にはサービスアダプタの作成は不要です。
7-1. Websocketサービスアダプタの作成¶
さくらのクラウドコントロールパネルメインメニューより「モノプラットフォーム」を選択し、左側のサイドメニューから「サービスアダプタ」をクリックします。
作成するサービスアダプタのパラメータを設定し「作成ボタン」をクリックします。
- 名前 : サービスアダプタを管理する名前を入力します。
- プロジェクト : サービスアダプタを接続するプロジェクトを選択します。ここで選択したプロジェクトに所属するSIMとのみサービスアダプタ経由で通信できます。
- サービスアダプタ : 作成するサービスアダプタの種類を選択します。 ここではWebsocketを選択します。
7-2. 送信の確認¶
この動作確認にはサンプルプログラムのバイナリのうち、「SIPF_Client_for_NucleoF411RE-TX_SAMPLE.bin」を使用してください。 6の手順に従って書き込んでください。
さくらのクラウドコントロールパネルメインメニューより「モノプラットフォーム」を選択し、左側のサイドメニューから「サービスアダプタ」をクリックします。
「サービスアダプタ一覧」画面が表示されたら作成済みのサービスアダプタをダブルクリックするか、チェックボックスで選択したうえで右上の「詳細」をクリックします。
詳細画面が表示されたら、SIPF Client for Nucleoが動作するNucleo F411REのUSER(青い)ボタンを押下し、ターミナルに表示されているtagおよびvalue情報とWebSocketにより受信したデータが一致していることを確認します。
7-3. 受信の確認(ターミナルで確認)¶
この動作確認にはサンプルプログラムのバイナリのうち、「SIPF_Client_for_NucleoF411RE-RX_SAMPLE.bin」を使用してください。 6の手順に従って書き込んでください。
さくらのクラウドコントロールパネルメインメニューより「モノプラットフォーム」を選択し、左側のサイドメニューから「サービスアダプタ」をクリックします。
「サービスアダプタ一覧」画面が表示されたら作成済みのサービスアダプタをダブルクリックするか、チェックボックスで選択したうえで右上の「詳細」をクリックします。
詳細画面が表示されたら、右上の「メッセージ送信」をクリックします。
デバイスへ送信したいデータを設定し、「送信」ボタンをクリックします。
- 宛先 : データを送信したい先のSIMの名前を選びます
- タグ : TAG_IDとして16進数で0~FFの値を指定します(今現在数値のみの対応となっています)
- タイプ : 送信したいデータの形式を選択します
- 値 : 送信したいデータの値を入力します。タイプにより入力すべきフォーマットが異なります。
- 各種符号付整数 : 符号付10進整数表記(+は省略可)
- 各種符号無し整数 : 符号無し10進整数表記(+のみは付加することも可)
- 各種浮動小数点形式 : 符号付10進小数表記(+は省略可)
- 可変長オクテット列 : Base64エンコード後の文字列
- 可変長文字列 : UTF-8で表せる文字の列(あくまで送信可能なだけでデバイス側で表示取り扱いできるかは別になります。またUIの都合上一部制御文字等は入力できない可能性があります。)
- 現状制限事項1 : 各欄の入力値のエラー判定について : 現状暫定の処理となっているため誤判定が生じることがあります。ご了承ください。
- 現状制限事項2 : 値欄の入力制限について値のエラー : 現状この簡易websocketUIの制限として30文字以下程度で表せるデータのみ取り扱い可能です。
- 簡易のWebsocketのUIとなるため、全機能の利用が必要な場合は自前でWebsocketクライアントを用意されることを推奨します。
次に、SIPF Client for Nucleoが動作するNucleo F411REのUSER(青い)ボタンを押します。 モノプラットフォームに対して受信要求が発行され、サービスアダプタ経由でモノプットフォームに送られたデータがデバイスに対して送信されます。 PCのターミナルの画面で受信されたデータが表示されるので、サービスアダプタの送信画面で設定した値が受信されているか確認してください。
ヒント
サービスアダプタ側からはデバイスがOFFだったりオフラインや圏外だったりを問わずデータをいつでも送信することができ、
送信されたデータはデバイス側から受信要求が来るまでモノプラットフォーム側で保持されます。
デバイス側が回線やアプリケーション、電力等の都合で受信可能になったときに、
明示的にモノプラットフォームに対して受信要求を出すことにより、モノプラットフォームからデバイスへのデータ転送が行われます。
このサンプルでは手動のボタンで受信要求を行っていますが、用途に合わせた間隔のポーリングや、何らかのトリガがあった場合など、
ユーザの目的に応じて受信要求を発行することでより便利にシステムを構築できます。
7-3. 受信の確認(基板上のLEDで確認)¶
この動作確認にはサンプルプログラムのバイナリのうち、「SIPF_Client_for_NucleoF411RE-RX_SAMPLE.bin」を使用してください。 6の手順に従って書き込んでください。
さくらのクラウドコントロールパネルメインメニューより「モノプラットフォーム」を選択し、左側のサイドメニューから「サービスアダプタ」をクリックします。
「サービスアダプタ一覧」画面が表示されたら作成済みのサービスアダプタをダブルクリックするか、チェックボックスで選択したうえで右上の「詳細」をクリックします。
詳細画面が表示されたら、右上の「メッセージ送信」をクリックします。
LEDをコントロールするデータを設定し、「送信」ボタンをクリックします。
- 宛先 : データを送信したい先のSIMの名前を選びます
- タグ : 0x4cをLED制御に割り当てています。「4c」と入力してください。
- タイプ : 「8ビット符号なし整数」を選択してください。
- 値 : LEDの制御値を入力します
- 0 : LED消灯
- 1~FF : LED点灯
次に、SIPF Client for Nucleoが動作するNucleo F411REのUSER(青い)ボタンを押します。 モノプラットフォームに対して受信要求が発行され、サービスアダプタ経由でモノプットフォームに送られたデータがデバイスに対して送信されます。 Nucleo F411RE基板上のLED2(GREEN)(シールド基板の下で少々見にくくなっています)が、点灯/消灯することを確認してください。
8. 参考資料¶
8-2. ファームウェア¶
- SCM-LTEM1NRF ファームウェア sipf-std-client_nrf9160
- nRF9160ファームウェア GitHubリポジトリ
- nRF9160ファームウェア リリース一覧 - ソースコードのアーカイブ、ビルド済みHEXファイルのダウンロード
- nRF9160ファームウェア Wiki - 仕様、コマンド等のリファレンス
- SIPF Client for Nucleo
- SIPF Client for Nucleo GitHubリポジトリ
- SIPF Client for Nucleo リリース一覧 - ソースコードのアーカイブ、ビルド済みbinファイルのダウンロード
8-3. SCM-LTEM1NRFファームウェアのFOTA実行方法¶
SCM-LTEM1NRFのファームウェア sipf-std-client_nrf9160 には最新版のファームウェアへの更新が行えるFOTAの機能があります。
SIPF Client for Nucleoのコマンド中継機能を使用し、SCM-LTEM1NRFのFOTA機能を起動し更新を行います。
本項ではSIPF Client for NucleoでFOTAを実行する手順をご案内します。
PCでターミナルソフトを起動しNucleo F411REのUSBシリアルポートを開きます。
Nucleo F411RE本体の黒いボタン押下によりリセットし +++ Ready +++
が表示されている状態にします。
*** SIPF Client for Nucleo ***
Request module reset.
Waiting module boot
### MODULE OUTPUT ###
*** SIPF Client(Type00) v.0.1.0 ***
Trying to attach to LTE network (TIMEOUT: 60000 ms)
SEARCHING
REGISTERD
ICCID: 8981040000000xxxxxx
#####################
OK
Set Auth mode... OK
+++ Ready +++
ロックを外し更新コマンドを実行します。
$$UNLOCK UNLOCK
OK
$$UPDATE UPDATE
FOTA DOWNLOAD START
1% DOWNLOADED
2% DOWNLOADED
3% DOWNLOADED
4% DOWNLOADED
5% DOWNLOADED
7% DOWNLOADED
8% DOWNLOADED
9% DOWNLOADED
更新ファイルのダウンロードが始まります。
97% DOWNLOADED
98% DOWNLOADED
99% DOWNLOADED
99% DOWNLOADED
FOTA DOWNLOAD FINISHED
REBOOT & RUN UPDATE
ダウンロードが完了するとSCM-LTEM1NRFがリブートします。
** Booting Zephyr OS build v2.4.99-ncs2 ***
I: Starting bootloader
I: Primary image: magic=good, swap_type=0x2, copy_done=0x1, image_ok=0x1
I: Secondary image: magic=good, swap_type=0x2, copy_done=0x3, image_ok=0x3
I: Boot source: none
I: Swap type: test
I: Bootloader chainload address offset: 0x10000
I: Jumping to the first image slot
リブート後、ブートローダーの機能によりダウンロードした更新ファイルでアップデートを行います。
アップデートが完了するとRTOSの起動メッセージが表示された後、sipf-std-client_nrf9160が起動します。
*** Booting Zephyr OS build v2.4.99-ncs2 ***
Flash regions Domain Permissions
00 02 0x00000 0x18000 Secure rwxl
03 31 0x18000 0x100000 Non-Secure rwxl
Non-secure callable region 0 placed in flash region 2 with size 32.
SRAM region Domain Permissions
00 07 0x00000 0x10000 Secure rwxl
08 31 0x10000 0x40000 Non-Secure rwxl
Peripheral Domain Status
00 NRF_P0 Non-Secure OK
01 NRF_CLOCK Non-Secure OK
02 NRF_RTC0 Non-Secure OK
03 NRF_RTC1 Non-Secure OK
04 NRF_NVMC Non-Secure OK
05 NRF_UARTE1 Non-Secure OK
06 NRF_UARTE2 Secure SKIP
07 NRF_TWIM2 Non-Secure OK
08 NRF_SPIM3 Non-Secure OK
09 NRF_TIMER0 Non-Secure OK
10 NRF_TIMER1 Non-Secure OK
11 NRF_TIMER2 Non-Secure OK
12 NRF_SAADC Non-Secure OK
13 NRF_PWM0 Non-Secure OK
14 NRF_PWM1 Non-Secure OK
15 NRF_PWM2 Non-Secure OK
16 NRF_PWM3 Non-Secure OK
17 NRF_WDT Non-Secure OK
18 NRF_IPC Non-Secure OK
19 NRF_VMC Non-Secure OK
20 NRF_FPU Non-Secure OK
21 NRF_EGU1 Non-Secure OK
22 NRF_EGU2 Non-Secure OK
23 NRF_DPPIC Non-Secure OK
24 NRF_REGULATORS Non-Secure OK
25 NRF_GPIOTE1 Non-Secure OK
SPM: NS image at 0x1c200
SPM: NS MSP at 0x2001deb8
SPM: NS reset vector at 0x2297d
SPM: prepare to jump to Non-Secure image.
*** SIPF Client(Type00) v.0.1.0 ***
Trying to attach to LTE network (TIMEOUT: 60000 ms)
SEARCHING
REGISTERD
ICCID: 8981040000000xxxxxx
+++ Ready +++
以上でSCM-LTEM1NRFのファームウェア更新は完了です。
ヒント
SIPF Client for Nucleoの初期化処理を実行するため、Nucleo F411RE本体の黒いボタン押下によりリセットしてください。