Skip to main content

Seeed Studio XIAO nRF54L15 Matter

はじめに

Nordic Semiconductor の nRF54L15 は、IoT 向けに設計された次世代の超低消費電力ワイヤレス SoC です。Matter、Thread、Zigbee、Bluetooth LE、NFC など複数のプロトコルをサポートしており、相互運用性が高く将来性のあるスマートホームデバイスを開発できます。

Connectivity Standards Alliance(CSA)が推進する統一接続規格として Matter が普及する中、nRF54L15 は Matter アプリケーションの検証と開発を行うための堅牢な開発プラットフォームを提供します。高い性能と低消費電力、統合されたマルチプロトコル無線により、コンシューマ向けスマートホーム製品だけでなく、産業用 IoT デバイスにも適しています。

本ドキュメントでは、nRF54L15 向け Nordic SDK に含まれる Matter サンプルアプリケーションを順に解説します。これらのサンプルは、デバイスのオンボーディング、セキュアな通信、Apple HomeKit、Google Home、Amazon Alexa など一般的なエコシステムとの連携といった主要機能を実演します。

前提条件

XIAO nRF54L15 上で Matter アプリケーションの開発を始める前に、以下のハードウェアおよびソフトウェアコンポーネントが準備済みであることを確認してください。

ハードウェア

  • Seeed Studio XIAO nRF54L15 ボード
  • Matter ネットワークに接続するための対応 Matter Hub(例:Amazon - Echo Dot
  • Matter 対応デバイスを管理・操作するための Matter Controller(例:Amazon Alexa App)
Seeed Studio XIAO nRF54L15Seeed Studio XIAO nRF54L15 Sense

ソフトウェア

tip

サンプルを実行する前に、XIAO nRF54L15 が nRF Connect SDK で設定済みであることを確認してください。まだの場合は、このWikiガイドを参照してください。

Matter サンプルのクイックスタート

Matter ルーチンを作成する

VSCode 用 nRF Connect 拡張機能で、Create New Application → Copy Example → 「matter」と入力 → Matter Thermostat を選択します。

書き込みが完了すると、サンプルは自動的に Bluetooth® LE アドバタイジングを開始し、Matter 対応 Thread ネットワークへのコミッショニングの準備を行います。サンプルは LED を使用して接続状態を表示します。

このサンプルは次のいずれかのモードで動作します。

  • 温度センサーシミュレーションモード - このモードでは、サーモスタットサンプルがシミュレートされた温度測定値を生成し、ターミナルに出力します。これはデフォルトモードであり、サンプルはシミュレートされた温度値を提供します。(ここではデフォルトでこのモードを使用します)

  • 実温度センサーモード - このモードでは、サーモスタットサンプルがリモートの Matter 温度センサーにバインドされ、実際の温度測定値を取得します。このモードでは外部センサーとの統合が必要です。



tip
  • SDK バージョンは必ず 3.0.2 を使用してください。これより古いバージョンではエラーが発生する可能性があります。

  • 現在サポートされているルーチンは 2 種類のみです(Matter Thermostat と Matter Light Bulb)。今後、順次ルーチンが追加される予定です。

開発ボードの設定

ボードディレクトリ内に次の 2 つのファイルを作成し、それぞれ以下の名前を付けます。

sysbuild/mcuboot/boards ディレクトリに移動し、次の 2 つのファイルを追加します。

パーティションと DFU を有効化

Sysbuild 設定

プロジェクトのビルド

  • Add Build Configuration ウィンドウを開きます。
  • SDK フィールドで、必要なバージョンを選択します(例:nRF Connect SDK v3.0.2)。
  • Toolchain フィールドで、対応するバージョンを選択します。
  • Board target:xiao_nrf54l15/nrf54l15/cpuapp

West でのフラッシュ書き込み

  • nRF terminal を開きます。
  • west flash コマンドを入力するだけでデバイスに書き込めます。赤枠で示されているパスは、コンパイルされた .elf ファイルの場所を表しています。同じパスを使用して、J-Link デバッガでの書き込みに適した対応する .hex ファイルを見つけることもできます。

Matter デバイスを追加する

ファームウェアを XIAO nRF54L15 にビルドして書き込んだら、nRF Serial Terminal ツールを使用してデバッグログを確認し、デバイスコミッショニング用の QR コードを取得できます。

ステップ 1. Manager Toolchains を開き、Terminal Tools を起動します。

ステップ 2. サイドバーのツールバーから nRF Serial Terminal を選択し、シリアルポートにアクセスします。

ステップ 3. ポップアップメニューから、XIAO nRF54L15 に対応するシリアルポートを選択します。

ステップ 4. ターミナルが開くと、ログにコミッショニング用 QR コードリンクが出力されます。このリンクをコピーしてブラウザで開き、Matter デバイスの QR コードを生成します。

ステップ 5. Matter 対応プラットフォームでこの QR コードをスキャンし、デバイスを追加します。

Matter Hub の設定

Alexa App をダウンロード

Alexa App で Matter デバイスを追加する

  • Home へ移動:Alexa App を開き、右上の “+” ボタンをタップします。
  • Add Device:メニューから “Device” を選択します。
  • デバイスタイプを選択:デバイス一覧から “Matter” を選択します。
  • QR コードをスキャン:Matter セットアップ画面で “Scan QR Code” をタップし、デバイス上の QR コードをスキャンします(または数値コードを入力することもできます)。
  • デバイス名の変更:セットアップ後にデバイスに「Thermostat」などの名前を付け、Update Name をタップします。
  • デバイスがリストに表示される:追加が完了すると、Devices リストに新しい Thermostat が表示されます。
  • デバイスの操作:Thermostat のコントロールページを開き、温度(例:Cool to 79°F、Heat to 68°F)やモード(例:Auto)を調整します。

プロジェクトディレクトリ概要

default_zap/

  • thermostat.zap
    • Matter サーモスタットアプリケーションのクラスタおよび属性設定を定義する ZAP 設定ファイル。
  • zap-generated/
    • .zap 設定に基づき ZAP ツールから自動生成されたソースファイル。

temperature_measurement/

  • sensor.cpp / sensor.h
    • 温度センサー向けの低レベルドライバ抽象化。
    • 生の温度値の読み取りを処理します。
  • temp_sensor_manager.cpp / temp_sensor_manager.h
    • センサーデータ収集を管理します。
    • 上位コンポーネント向けに処理済みの温度値を提供します。
    • temperature_manager.cpp / temperature_manager.h
    • 温度制御ロジックを統括します。
    • Matter 属性(例:現在温度、設定温度)とのインターフェースを提供します。

アプリケーションレイヤ

  • app_task.cpp / app_task.h
    • メインアプリケーションタスクループを定義します。
    • 初期化、イベント処理、および Matter スタックとの通信を調整します。
  • main.cpp
    • アプリケーションのエントリポイント。
    • ハードウェア、Matter スタックを初期化し、アプリケーションタスクを開始します。
    • chip_project_config.h
    • Matter スタック向けのプロジェクト固有設定。
    • クラスタ定義、属性ストレージサイズ、機能トグルを含みます。

Matter 統合

  • thermostat.matter
    • サーモスタット向けにクラスタ、属性、エンドポイントを記述する Matter デバイス定義ファイル。
  • zcl_callbacks.cpp
    • Zigbee Cluster Library(ZCL)のコールバック関数を実装します。
    • 属性変更、コマンド(例:設定温度の更新)、レポーティングを処理します。

参考資料 & リソース

Matter が初めての場合は、以下のリソースが Matter エコシステム内で作業するための基礎知識と開発サポートを提供します。

  • Quick-Start Guides:Matter の基本概念とエコシステムの主要コンポーネントをカバーする、Matter の基礎を学ぶための理想的な出発点です。
  • Matter Developer Journey:必要なツール、リソース、ベストプラクティスを含む、Matter 開発プロセス全体を通した包括的なガイドです。
  • Matter Specifications:Matter プロトコルおよびそのコンポーネントに関する技術仕様です。プロトコルの機能と動作の詳細を理解するための主要なリソースです。
  • The Device Data Model - Google Home Developers:Matter エコシステム内でデバイスの機能と能力の表現を標準化するデバイスデータモデルについての詳細な解説です。

技術サポート & 製品ディスカッション

弊社製品をお選びいただきありがとうございます。弊社は、製品をできるだけスムーズにご利用いただけるよう、さまざまなサポートを提供しています。お好みやニーズに応じて選択いただける複数のコミュニケーションチャネルをご用意しています。

Loading Comments...