NordicのIoT NPU( NRF54LM20 )開発キット(パート2)(Zephyr Linux初期セットアップ

これは、Nordicの受賞歴のある新しいIoT 開発キット NRF54LM20-DK のパート2です。 NRF54LM20-DK Nordic Semiconductor ASA | 開発ボード、キット、プログラマ | DigiKeyey

image

この記事の目的は、Linux環境でZephyr開発用にこのプラットフォームをセットアップする方法を示すことです。今回は、前回の記事と同様の構成で設定を行います。まずは、以下のブロック図に示すプラットフォームのCPU(ARM)セクションを使用してZephyrで開発する方法を説明します。

次回の記事では、AXON人工知能(AI)ニューラルプロセッサユニット(NPU)をZephyrで使用する方法について説明します。この当初の目的を念頭に置き、最初のステップとして、Linuxホストで以下の操作を実行します。

sudo apt update

sudo apt upgrade

sudo apt install --no-install-recommends git cmake ninja-build gperf ccache dfu-util device-tree-compiler wget python3-dev python3-venv python3-tk xz-utils file make gcc libsdl2-dev libmagic1

python3 -m venv venv

source venv/bin/activate

(venv) pip install west

(venv) west init zephyrproject

(venv) cd zephyrproject

(venv) west update

(venv) west zephyr-export

(venv) west packages pip --install

(venv) cd zephyr

(venv) west sdk install

Linux(x64)用のnrfutilをこちらのリンクからダウンロードしてください。ダウンロード後、権限を変更して実行してください(sudo chmod 777 nrfutil)。バージョンを確認し、システム(.bashrc)のパスに追加してください。

(venv) sudo apt install libusb-1.0-0

(venv) nrfutil self-upgrade

(venv) nrfutil install nrf5sdk-tools

(venv) nrfutil upgrade

(venv) nrfutil install sdk-manager

(venv) nrfutil install device

(venv) nrfutil sdk-manager install v3.2.0

この記事の公開時点で、このデモで動作するバージョン 3.2.0をインストールするために、nrfutil upgradenrfutil sdk-manager install v3.2.0コマンドを使用することが非常に重要です。また JLink_Linux_V864_x86_64.debをダウンロードしてインストールしてください。次に、Zephyrディレクトリ ~/DigiKey_Coffee_Cup/Nordic/zephyrproject/zephyrから以下を実行します。

(venv)~/DigiKey_Coffee_Cup/Nordic/zephyrproject/zephyr$ nrfutil sdk-manager toolchain launch --ncs-version v3.2.0 --shell

これにより、ターミナルに新しいシェルが開きます。ここで、受賞歴のある新しい NRF54LM20-DK Nordic Semiconductor開発キット用のZephyrアプリケーションのビルドに進んでください。ここで紹介するデモアプリケーションは、Zephyr OSのマルチスレッドデモです。Zephyrアプリケーションを以下のようにビルドします。

(venv)~/DigiKey_Coffee_Cup/Nordic/zephyrproject$ west build -p always -b nrf54lm20dk/nrf54lm20b/cpuapp zephyr/samples/basic/threads

...
...
[167/167] Linking C executable zephyr/zephyr.elf
Memory region         Used Size  Region Size  %age Used
           FLASH:       40996 B      2036 KB      1.97%
             RAM:        8580 B       511 KB      1.64%
        IDT_LIST:           0 B        32 KB      0.00%

Generating files from DigiKey_Coffee_Cup/Nordic/zephyrproject/build/zephyr/zephyr.elf for board: nrf54lm20dk/nrf54lm20b/cpuapp

ビルドプロセスが完了したら、以下の図に示すように、受賞歴のある新しい NRF54LM20-DK Nordic Semiconductor開発キットをLinux ホストにUSBケーブルで接続します。

別のターミナルでminicomを開き、以下の手順でシステムに書き込みます。

(venv) ~/DigiKey/Nordic/zephyrproject$ west flash

- west flash: rebuilding
ninja: no work to do.
-- west flash: using runner nrfutil
-- runners.nrfutil: reset after flashing requested
Using board 001051861371
-- runners.nrfutil: Flashing file: DigiKey_Coffee_Cup/Nordic/zephyrproject/build/zephyr/zephyr.hex
-- runners.nrfutil: Connecting to probe
-- runners.nrfutil: Programming image
-- runners.nrfutil: Verifying image
-- runners.nrfutil: Reset
-- runners.nrfutil: Board(s) with serial number(s) 1051861371 flashed successfully.

minicomターミナルには以下の情報が表示されるはずです。

以下の動画はマルチスレッドのデモを示しています。

このデモでは、:c:func:K_THREAD_DEFINEを使用して複数のスレッドを生成する方法を示しています。3つのスレッドが生成されます。各スレッドはコンパイル時にパラメータ K_THREAD_DEFINEを使用して定義されます。最初の2つのスレッドは、それぞれボード上の個別のLEDを制御します。これらのLED(led0led1)は、それぞれ別の関数によってループ制御とタイミングロジックの制御が行われます。

  • blink0()led0を制御し、100msのスリープ周期を持ちます。
  • blink1()led1を制御し、1000msのスリープ周期を持ちます。

これらのスレッドのいずれかがLEDをトグル(点滅)させると、スレッド/LED と点滅回数を識別した情報をFIFOバッファにプッシュします。3番目のスレッドは、:c:func:printkを使用して、FIFOに追加された情報をminicomターミナルに出力します。

これで、この新しいNordicのIoTプラットフォームのデモンストレーションは完了です。このシリーズの次回の記事にご期待ください。Embedded World 2026で受賞したこの新しいNordicのIoT NRF54LM20-DK 開発キットは、DigiKeyで入手可能です。どうぞ素晴らしい一日を!

この記事はスペイン語でこちらからご覧いただけます。

Este artículo está disponible en español aquí.




オリジナル・ソース(English)