これは、Nordicの受賞歴のある新しいIoT開発キット NRF54LM20-DK のパート5です。
NRF54LM20-DK Nordic Semiconductor ASA | 開発ボード、キット、プログラマ | DigiKey
このジェスチャデモを正しくセットアップするには、以前の記事パート2とパート3を参照してください。このアプリケーションは、NordicのEdge AI Labソリューションを使用したジェスチャベースのリモートコントロールデバイスをデモンストレーションします。
このジェスチャ認識デモでは、DigiKeyで入手可能なBoschの BMI270 IMU を搭載したSparkfunの評価ボードを使用します。
そして、以下の図に示す4線式SPIインターフェース(電源供給用の3.3Vとグランドも必要)から、これらのケーブルを使用してポイントツーポイント接続により…
Nordicの受賞歴のある新しいIoT開発キット NRF54LM20-DK に接続された4線式SPIインターフェースへ接続します。
NRF54LM20-DK Nordic Semiconductor ASA | 開発ボード、キット、プログラマ | DigiKeyは以下のインターフェース(P17)に接続されています。
4線式SPIインターフェースは、Zephyr RTOSオーバーレイファイルで定義されています(関連するSPIインターフェース領域のみを以下に示します)。
spi21_default: spi21_default {
group1 {
psels = <NRF_PSEL(SPIM_SCK, 3, 3)>,
<NRF_PSEL(SPIM_MISO, 3, 1)>,
<NRF_PSEL(SPIM_MOSI, 3, 0)>;
};
};
spi21_sleep: spi21_sleep {
group1 {
psels = <NRF_PSEL(SPIM_SCK, 3, 3)>,
<NRF_PSEL(SPIM_MISO, 3, 1)>,
<NRF_PSEL(SPIM_MOSI, 3, 0)>;
low-power-enable;
};
};
};
&gpio3 {
status = "okay";
};
&spi21 {
compatible = "nordic,nrf-spim";
status = "okay";
pinctrl-0 = <&spi21_default>;
pinctrl-1 = <&spi21_sleep>;
pinctrl-names = "default", "sleep";
cs-gpios = <&gpio3 2 GPIO_ACTIVE_LOW>;
bmi270: spi-dev-bmi270@0 {
compatible = "bosch,bmi270";
status = "okay";
reg = <0>;
spi-max-frequency = <DT_FREQ_M(8)>;
};
};
以下に、これら2つの間の必要なポイントツーポイント接続をまとめます。
- 3.3V - P17-1(オレンジ)
- GND - P17-2(茶)
- MOSI - P17-9(グレー)
- MISO - P17-10(緑)
- SPI CS - P17-13(黄)
- SPI CLK - P17-14(紫)
なお、この事例ではケーブルの色は任意です。
(venv) ~/DigiKey_Coffee_Cup/Nordic$ nrfutil sdk-manager toolchain launch --ncs-version v3.3.0-preview2 --shell
次に、シェルを使用して、
(v3.3.0-preview2) ~/DigiKey_Coffee_Cup/Nordic$ west build -p always -b nrf54lm20dk/nrf54lm20b/cpuapp edge-ai/applications/gesture_recognition/
...
[376/376] Linking C executable zephyr/zephyr.elf
Memory region Used Size Region Size %age Used
FLASH: 490200 B 925552 B 52.96%
RAM: 41428 B 511 KB 7.92%
IDT_LIST: 0 GB 32 KB 0.00%
...
そして、Zephyr RTOSフレームワークの通常の手順に従い、書き込み処理に進みます。
(v3.3.0-preview2) ~/DigiKey_Coffee_Cup/Nordic$west flash
...
...
-- 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ターミナルを開くと、このデモでセンサが正しく検出された場合、以下の情報が表示されます。
*** Booting MCUboot v2.3.0-dev-3dfaa012cf34 ***
*** Using nRF Connect SDK v3.3.0-preview2-ede152ec210b ***
*** Using Zephyr OS v4.3.99-4b6df5ff11b1 ***
I: Starting bootloader
I: Primary image: magic=unset, swap_type=0x1, copy_done=0x3, image_ok=0x3
I: Secondary image: magic=unset, swap_type=0x1, copy_done=0x3, image_ok=0x3
I: Boot source: none
I: Image index: 0, Swap type: none
I: Bootloader chainload address offset: 0x10000
I: Image version: v0.0.0
I: Jumping to the first image slot
*** Booting nRF Connect SDK v3.3.0-preview2-ede152ec210b ***
*** Using Zephyr OS v4.3.99-4b6df5ff11b1 ***
[00:00:00.050,671] <inf> fs_nvs: 8 Sectors of 4096 bytes
[00:00:00.050,678] <inf> fs_nvs: alloc wra: 0, fa0
[00:00:00.050,682] <inf> fs_nvs: data wra: 0, 30
[00:00:00.050,761] <inf> bt_sdc_hci_driver: SoftDevice Controller build revision:
ac 6c cb 12 2a 45 63 97 7c ba aa bd 8d 8f d0 9b |.l..*Ec. |.......
c2 c9 23 ea |..#.
[00:00:00.052,910] <inf> bt_hci_core: HW Platform: Nordic Semiconductor (0x0002)
[00:00:00.052,925] <inf> bt_hci_core: HW Variant: nRF54Lx (0x0005)
[00:00:00.052,938] <inf> bt_hci_core: Firmware: Standard Bluetooth controller (0x00) Version 172.52076 Build 1665477138
[00:00:00.053,138] <inf> bt_hci_core: No ID address. App must call settings_load()
[00:00:00.053,153] <inf> ble_hid: Bluetooth initialized
[00:00:00.053,511] <inf> bt_hci_core: HCI transport: SDC
[00:00:00.053,611] <inf> bt_hci_core: Identity: F3:93:F9:A8:5C:40 (random)
[00:00:00.053,630] <inf> bt_hci_core: HCI: version 6.2 (0x10) revision 0x3073, manufacturer 0x0059
[00:00:00.053,648] <inf> bt_hci_core: LMP: version 6.2 (0x10) subver 0x3073
[00:00:00.055,972] <inf> ble_hid: Advertising successfully started
[00:00:00.056,019] <inf> main: nRF Edge AI Gestures Recognition Demo:
[00:00:00.056,029] <inf> main: nRF Edge AI Runtime Version: 2.2.0
[00:00:00.056,047] <inf> main: nRF Edge AI Lab Solution id: 36038
[00:00:22.525,021] <inf> main: Predicted class: DOUBLE THUMB, with probability 76 %
[00:00:53.594,756] <inf> main: Predicted class: DOUBLE THUMB, with probability 82 %
etc etc
[00:00:04.015,501] <inf> main: Predicted class: DOUBLE THUMB, with probability 88 %
[00:00:08.312,211] <inf> main: Predicted class: DOUBLE SHAKE, with probability 84 %
[00:00:09.303,819] <inf> main: Predicted class: ROTATION RIGHT, with probability 89 %
[00:00:09.634,333] <inf> main: Predicted class: ROTATION RIGHT, with probability 92 %
[00:00:16.245,012] <inf> main: Predicted class: DOUBLE THUMB, with probability 100 %
[00:00:17.567,062] <inf> main: Predicted class: DOUBLE SHAKE, with probability 99 %
[00:00:18.889,219] <inf> main: Predicted class: DOUBLE THUMB, with probability 92 %
[00:00:19.880,790] <inf> main: Predicted class: DOUBLE SHAKE, with probability 80 %
[00:00:21.864,775] <inf> main: Predicted class: DOUBLE SHAKE, with probability 91 %
[00:00:23.847,158] <inf> main: Predicted class: DOUBLE THUMB, with probability 91 %
[00:00:24.838,732] <inf> main: Predicted class: DOUBLE THUMB, with probability 98 %
[00:00:25.830,311] <inf> main: Predicted class: DOUBLE THUMB, with probability 80 %
[00:00:26.821,886] <inf> main: Predicted class: DOUBLE THUMB, with probability 98 %
[00:00:30.457,718] <inf> main: Predicted class: DOUBLE SHAKE, with probability 88 %
[00:00:37.068,271] <inf> main: Predicted class: DOUBLE SHAKE, with probability 99 %
[00:00:38.720,966] <inf> main: Predicted class: DOUBLE SHAKE, with probability 83 %
minicomターミナルに以下のようなメッセージが表示され…
[00:00:00.014,050] <err> main: Failed to initialize IMU sensor, error = 2
上記が確認された場合は接続が正しくないため、配線を見直す必要があります。
次回の記事では、このデモを完結させますのでご期待ください。このデモは、この革新的なNordicのIoTプラットフォーム上で、Axon NPUドライバを直接使用して、新しいAxonニューラルプロセッシングユニット(NPU)のジェスチャデモを部分的に完了したものです。Embedded World 2026で受賞したこの新しいNordicのIoT NRF54LM20-DK 開発キットは、DigiKeyで入手可能です。
この記事はスペイン語でこちらからご覧いただけます。
Este articulo esta disponible en español aquí.



