Nordic

nRF Connect SDKによるBluetooth LE 簡単スタートアップ

2024.03.13

こんにちは。
加賀デバイスのNordic Teamです。

以前に公開した「モバイルアプリ nRF Toolbox でBluetooth LE通信の簡単評価」では
ES2810AA2(加賀FEI)nRF toolboxアプリを使用した、Bluetooth LE通信の簡単な評価について
ご紹介しましたが、今回はDevacademyの内容を一部抜粋し、nRF Connect SDKのスタートアップについてご紹介します。

※本コラムでは、サンプルソフトをビルドし、Flashに書き込むまでを簡易的に説明しています。
 各機能や設定の詳細はDevacademyのnRF Connect SDK Fundamentalsをご参照ください。

◆Step 1:nRF command Line Tools と VScodeのインストール

まずは、NordicのHPよりnRF Command Line Toolsをダウンロードし、インストールします。
このnRF Command Line ToolsはコマンドプロンプトでビルドやFlashの消去・書き込み・レジスタ読み出しなどができるツールです。

つぎに、Visual Studio code(以下VScode)をダウンロードし、インストールします。
このVScodeはオープンソースの統合開発環境でNordicデバイス以外でも多く使用されています。

◆Step 2:nRF Connect SDK と toolchain のダウンロード

VScodeを開き、【拡張機能】からnRF Connect for VS Code Extension Pack をインストールします。

追加された【nRF Connect】からInstall Toolchainをクリックし、使用したいバージョンのtoolchainをクリックします。(基本的には最新版をご選択ください。)

次に、Manage SDKsをクリックし、toolchainと同じバージョンのSDKをクリックします。

これで環境構築は完了です。

◆Step 3:サンプルソフトの初期設定

Create a new application をクリックし、Copy a sample をクリックします。

検索窓に【uart】と打ち込むとUARTに関係したサンプルソフトが表示されるので
BLE UART service を選択します。

コピーしたサンプルソフトの格納場所やプロジェクトフォルダ名は任意で設定できますが、できるだけ浅い階層に格納する事をお勧めします。(今回はプロジェクトフォルダ名をperipheral_uart_testとします)

【nRF Connect】の[APPLICATIONS]に今作成したプロジェクトが追加されています。
このプロジェクトのCrate new build configuration をクリックし、ビルド設定を行います。

使用するボードを選択します。
(今回はnRF52810が搭載されたES2810AA2を使用するので、nrf52dk_nrf52810を選択します)

次にconfigurationファイルの選択ですが、nRF52810の場合はROM/RAM容量が小さいので、
設定ファイルはデフォルトの『prj.conf』ではなく『prj_minimal.conf』を選択します。
  prj_minimal.conf を構成ファイルとして使用すると、最小限の構成でサンプルがビルドされ、
   コードサイズとRAM使用量の両方が削減されます。
   2つのファイルを比較すると、prj_minimal.confがドライバーや周辺機能、コンソールなど
   一般に不要な機能などの多くの機能を無効にし、サイズを最適化していることが確認できます。

最後にBuild Configuration をクリックする事で設定した環境でビルドが開始されます。

ビルドの進捗状況やビルド完了はterminal ウィンドウで確認できます。

◆Step 4:UARTの端子変更

ES2810AA2はnRF52 DKとUARTにアサインしている端子が異なる為、変更が必要です。

ES2810AA2でPCと接続する為にUARTにアサインする端子を変更します。
【nRF Connect】の[ACTIONS]のDevicetreeをクリックするとapp.overlayが開きます。

[NORDS]からsocを展開し、uartをクリックします。
uartウインドウの[PINS]をクリックすると、現在下記のようにアサインされている事が確認できます。
これらの端子をES2810AA2で使用する端子に変更します。

再度socをクリックするとアサインが変わっている事が確認できます。
これでアサイン端子の変更は完了です。

◆Step 5:ビルドとFlash書き込み

[ACTIONS]のBuildの右側にある円を描いた矢印(Pristine Build)をクリックするとビルドが始まります。
※BuildとPristine Buildの違いについてはこちらをご参照ください。

ES2810AA2とJ-link Liteを接続し、terminalウインドウでビルド完了を確認後、Flashをクリックします。

もし下記のエラーが表示された場合、nRF52810のAPPROTECT機能が有効になっている為、
デバッガとの接続ができない状態です。

VScode上で下記のウィンドウが表示された場合は、Yesをクリックする事でプロテクションを解除し書き込みが可能です。

表示されない場合は、terminalウインドウのpowershell(pwsh)から nrjprog –recover コマンドでプロテクションを解除し、再度Flashしてください。

下記が表示されると、Flash書き込み完了です。

これで環境構築とサンプルソフトの設定、ビルド、Flashが完了しました。

書き込んだサンプルソフトの動作確認方法は「モバイルアプリ nRF Toolbox でBluetooth LE通信の簡単評価」をご確認ください。

今後もNordicの紹介及びコラムにて色々な情報を公開致しますので是非ご確認ください。

また、Facebookでも随時情報を公開しておりますので合わせてご確認ください。

Nordic コラム一覧

nRF9160をATコマンドだけで制御してみよう

関連記事