nRF Connect SDK(NCS)で動かすNordic nRF5340モジュール開発キットの使い方③評価ボードへの書き込みと動作確認編

こんにちは、ムセンコネクトの蟹沢です。
前回、前々回に引き続き、Nordic nRF5340モジュールの開発キットの使い方について解説していきます。
最終回となる第3回目は評価ボードへの書き込みと動作確認について解説します。


評価ボードへの書き込み
EB5340BA1-EVB評価ボードへの書き込みは、DebugとFlashの2通りの手順を説明します。
書き込みに必要なツール一式
EB5340BA1-EVB評価ボードに書き込む際は、ミニUSBケーブルとJ-Linkが必要です。

デバイスの接続
ミニUSBケーブルとJ-LinkをPCに接続します。
接続前のVS Codeでは、CONNECTED DEVICESの欄にはNo devices found.と表示されています。

パソコンにミニUSBケーブルとJ-Linkを接続すると、J-Linkのデバイスが表示されます。
なお、評価ボードは、青色LEDが点灯します。


評価ボードへの書き込み手順(Debug)
Debugでの書き込みは、ACTIONSのDebugを押下します。

Debugを実行すると、評価ボードへの書き込みが始まります。

評価ボードへの書き込みが終了すると、デバッガが起動します。

実行ボタン(三角マーク)を押下すると、評価ボードへ書き込んだプログラムが実行されます。

評価ボードへの書き込み手順(Flash)
Flashでの書き込みは、ACTIONSのFlashを押下します。

Flashを実行すると、評価ボードへの書き込みが始まります。
Flashで書き込み後は、リセットボタン(基板上のSW1:RESET)を押下すると、評価ボードへ書き込んだプログラムが実行されます。

Flash動作でエラーが発生する場合
Flash操作が動作しない場合は、nRF5340のネットワークコアとアプリケーションコアのリカバリ操作を実行します。
VS Code右上のToggle Panelを押下して、TERMINALを表示します。

リカバリ操作のコマンドはネットワークコアとアプリケーションコア両方に対して実行します。
ネットワークコアに対してのリカバリ操作コマンド
nrfjprog --coprocessor CP_NETWORK --recover

アプリケーションコアに対してのリカバリコマンド
nrfjprog --coprocessor CP_APPLICATION --recover

リカバリ操作を行った後にFlash操作を行うと、書き込みができます。

動作確認
作成したBLE UART serviceの動作確認では、PCとシリアル通信を行うため、シリアル通信ソフト(ターミナルソフト)が必要となります。また、BLE通信を行うために、スマートフォンとBLE通信アプリが必要です。
今回は、以下の機器、アプリを用いて動作確認を行います。
- PCとのシリアル通信ソフト(ターミナルソフト)
-
Tera Term
- スマートフォン
-
Pixel5(AndroidOS 13)
- BLE通信アプリ
-
Android向け『nRF Connect for Mobile』

Tera Termの設定
Tera Termの設定は、設定->シリアルポートを選択し、以下の設定にしてください。なお、ポートは評価ボードのCOM番号を選択してください。

Androidアプリ
nRF Connect for Mobileを起動します。

nRF Connect for Mobileアプリを起動すると、自動でスキャンが開始されます。スキャンが開始されない場合は、右上のSCANをタップすることでスキャンが開始されます。
以下の画面のように、”Nordic_UART_Service”というデバイスネームが表示されます。なお、周辺にBLEデバイスが多い場合は、フィルタ設定でUARTと入力するとフィルタリングされます。

CONNECTをタップすると、評価ボードと接続を開始します。

評価ボードからのデータ送信
評価ボードから、Android端末側へデータを送信する場合の手順を説明します。
Android端末側でデータを受信するための設定を行います。TX Characteristicの矢印が3本表示されている箇所をタップし、Android端末側でデータ受信できる状態にします。


Tera Termから”1234”と入力してエンターキーを押下します。

評価ボードから送信されたデータがAndroid端末へ通知されると、以下の画面のようになります。改行コードを含んだデータがアプリ側に表示されます。

評価ボードへのデータ送信
Android端末から、評価ボード側へデータを送信する場合の手順を説明します。RX Characteristicの上矢印の箇所をタップすると、Write valueダイアログが表示されます。

TEXT(UTF-8)を選択して、5678と入力し、SEND箇所をタップします。


Android端末からデータを受信すると、Tera Termの画面に”5678″と表示されます。

Nordic BLEモジュールの開発相談はこちら
Nordic nRF5340モジュール開発キットの解説は以上です。
ムセンコネクトではNordic BLEモジュールを採用しているLINBLEシリーズの他にも、受託開発や研究開発など、Nordic BLEモジュールを扱った開発案件を多数手掛けています。

Nordic BLEモジュールの開発でお困りのことがございましたら、まずはお気軽にご相談ください。ムセンコネクトが経験やノウハウをもとに的確なアドバイスを差し上げます。