Matter を使ってみる

Google Home デベロッパー プログラムは、デバイス メーカーがスマートホーム デバイスを Google Home エコシステムに接続できるようにするプログラムです。スマートホーム アクションのローカル フルフィルメント パスが拡張され、Google Home app (GHA) を使用してセットアップする Matter 対応デバイスを追加し、Google AssistantGHA、または Google Nest Hub (2nd gen) などのスマートディスプレイを使用して、デバイスを制御できるようになりました。

このドキュメントでは、Matter 対応プラットフォームの構築と Google Home エコシステムへの統合を開始する方法について説明します。

免責条項

Matter ドキュメントに記載されている手順については、次の点に注意してください。

  • 開発に使用するアカウントには、テスト用に Matter 対応のハブを 1 つだけ接続することをおすすめします。複数の Matter 対応ハブが同時に接続されるか、テスト中に同じストラクチャに接続されると、予期しない動作が発生する可能性があります。
  • すべての手順は、Ubuntu 20.04 を実行する Linux マシンを使用して、Matter サンプルのビルドとフラッシュを行うことを前提としています。なお、これらのサンプルは Google でテスト済みです。macOS マシンもサポートされていますが、Linux が推奨されます。この手順では、必要に応じて Mac 固有の手順が説明されています。

スマートホーム アクションの構築方法

Google Home エコシステムと統合する Matter 対応デバイスを作成するには、Matter 対応開発ボードと Matter SDK を使用します。

まずは、Codelab を受講するのが最も簡単な方法です。次の Codelab の少なくとも 1 つを実施することをおすすめします。

その後、サポート対象デバイスのリストで、統合しようとしているデバイスが Google Home エコシステムでサポートされていることを確認します。次に、デベロッパー チェックリストに目を通し、プロジェクトの作成からリリースまでの開発フロー全体を把握してください。

サポートされているデバイス デベロッパー チェックリスト

定義

このドキュメント全体で使用される用語は次のとおりです。

ボーダー ルーター
Thread 対応デバイス用の汎用 Thread ボーダー ルーターを実装するハブ。
ハブ
サポートされている Google Nest デバイス(Google Nest Hub (2nd gen) など)。Matter 対応デバイスを AssistantGHA、スマートディスプレイなどの他のサーフェスから操作するには、ハブが必要です。
Matter 対応デバイス
Matter 対応のビルドアプリまたはサンプルアプリがフラッシュされたデバイスまたは開発ボード。
モバイル デバイス
ペア設定に使用するテストスマートフォン。現在、これは Android スマートフォンです。

前提条件

Matter 開発に推奨される IDE 拡張機能

Matter 対応デバイスを Google Home エコシステムと完全に統合するには、デベロッパーは次のものが必要です。

  1. Thread をサポートする Google ハブ。Thread 対応デバイスのボーダー ルーターとして、またスマートホーム インテントをルーティングするローカル フルフィルメント パスとして機能します。
  2. 次の最小要件を満たすモバイル デバイス(テストスマートフォン)
    • Android O(8.1、API レベル 27 以降)
    • iOS(v16.5 以降)
    • BLE 機能
  3. Matter 対応デバイスのベンダー ID(VID)プロダクト ID(PID)
  4. Matter 対応デバイスこのデバイスは、Google Home エコシステムでサポートされている Matter デバイスタイプのいずれかである必要があります。また、次のようになります。
    • Matter 対応のファームウェアを使用した独自の製品。
    • エンドツーエンド検証に使用する、次のいずれかの Matter デバイス。
表: Matter シリコン ベンダーの例
ベンダー プラットフォーム Thread のサポート ガイド
Bouffalo Lab BL602
BL702
エスプレッシフ ESP32 OTA テスト
北欧半導体 nRF52840 DK OTA テスト
NXP IOTZTB-DK006 開発キット
Realtek Ameba D シリーズ
シリコンラボ EFR32MG24 開発キット
EFR32MG Zigbee および Thread スターター キット
テリンク TLSR9518
テキサス・インストゥルメンス CC2652R7 LaunchPad 開発キット

ベンダー ID

デフォルトでは、CSA によって割り当てられた VID のいずれかをテスト目的で使用できます。0xFFF10xFFF20xFFF30xFFF4 のいずれかを選択します。

統合の認定とリリースを可能にするために製品版 VID を使用するには、まず Google による検証を受けて、CSA から発行されたものであることを確認する必要があります。

この VID は、デバイスのファームウェアに実装する必要があります。

Matter デバイスは、特定のベンダー ID とデバイスタイプのシナリオでのみ、Google Home エコシステムでペア設定できます。

  • テスト用 VID は、一般ユーザー向けデバイスでは使用できません。
  • 製品版 VID は Connectivity Standards Alliance (Alliance) から発行されたものである必要があります。Google Home Developer Console で VID を使用するには、その VID の所有者であることを Google が検証します。その後、その VID の統合を作成できます。
  • 開発やフィールド トライアルで使用する場合は、対応する VID と PID の組み合わせのプロジェクトと統合を Developer Console に作成する必要があります。デバイスのコミッショニングを行うユーザーは、プロジェクトのメンバーであるか、フィールド トライアル ユーザーのリストに含まれている必要があります。
  • 一般ユーザーが利用できるプロダクトは、Alliance によって認定されたものに限られます。
表: ベンダー ID(VID)とデバイスタイプのペア設定のシナリオ
どのようなユーザーがデバイスを Google Home エコシステムにコミッショニングできますか?
VID タイプ VID の認定とコンソールの統合ステータス 本番環境
(一般ユーザー)
開発
(デベロッパー、フィールド トライアル ユーザー)
テスト Developer Console に統合なし(認定不可)
テスト 統合が Developer Console に存在します(認定できません)
本番環境 認定なし。統合は Developer Console に存在しません。
本番環境 認定なし。統合は Developer Console に存在します。
本番環境 Alliance DCL で認定済み。Developer Console には統合機能がない。
本番環境 Alliance DCL で認定済みで、Developer Console に統合されている

商品 ID

デバイスに関する情報は、Matter 基本情報クラスタから読み取られます。デバイスのファームウェアでエンコードされたプロダクト ID は、Play Console で Matter 統合のプロダクト ID と一致する必要があります。

サポートされていない機能

一部の Matter クラスタはまだユーザーに公開されていませんが、システムによって使用される可能性があります。ほとんどの場合、これらのクラスタを介して公開された属性はエンドユーザーに表示されません。

Table: Matter clusters not exposed to users in the Google Home ecosystem
Cluster Type Clusters
Core
  • Binding ¹
  • Label
  • Fixed Label
  • User Label
  • Actions
  • Group Key
  • Localization Configuration
  • Time Format Localization
  • Unit Localization
  • Power Source Configuration
  • Power Source
  • Diagnostics clusters (Diagnostic Logs, General Diagnostics, Software Diagnostics, Thread Network Diagnostics, Wi-Fi Network Diagnostics, Ethernet Network Diagnostics)
  • Time Synchronization
  • Mode Select
Application
  • Groups and Scenes are not directly supported. Equivalent functionality is available via Routines.
  • All Media clusters. Equivalent functionality is available via Google Cast.

1 これがオン/オフスイッチに与える影響については、オン/オフのスイッチをご覧ください。