Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Matter を Remo nano ではじめよう

Matter を Remo nano ではじめよう

Nature Matter Kaigi での発表資料です
https://nature.connpass.com/event/289464/

Hideaki Tai

July 19, 2023
Tweet

More Decks by Hideaki Tai

Other Decks in Technology

Transcript

  1. ⾃⼰紹介 - ⽥井 秀昭 - ハードウェア + メディアテクノロジーを楽しんでいる⼈ - Arduino

    / 回路 -> 光‧⾳‧ロボティクス‧ウェアラブル - Nature SWE (FW) <- Rhizomatiks HW <- 電機メーカー HW - HP / GitHub / Twitter
  2. Matter でデバイスをコミッショニング (ペアリング) する - Commissionee の電源を⼊れてアドバ タイズを⾶ばす (コミッショニング可能 な状態にする)

    - Commissioner に QR コードや Manual Pairing Code を読み込ませる - コミッショニング開始 → Done! Commissionee Nature Remo nano Commissioner Apple HomePod, Google Nest 等のスマートスピーカー など Manual Pairing Code Nature Remo nano の背⾯に 印字されている 11 桁の数字 出典: Nature Remo nanoに登録した家電をホームアプリに追加する( Matter連携する)
  3. コミッショニングの⽬的 - Commissioner が Commissionee を Node として Fabric に追加する⼿順

    - 正当な Matter 対応品かどうか、デバイ ス認証を⾏う - Fabric と呼ばれる Matter の通信を⾏う ためのネットワークを形成する Node Matter 上での Nature Remo nano の こと Fabric Commissioner と Commissionee と の間に形成される Matter 通信可能な ネットワーク 出典: https://developer.nordicsemi.com/nRF_Connect_SDK/doc/latest/nrf/protocols/matter/overview/commissioning.html
  4. コミッショニングの流れ (BLE‧WiFi の例) - Commissionee がアドバタイズ開始 - Commissioner に QR

    / Manual Pairing Code を渡す - ↑ の内部にある Discriminator を使っ てアドバタイズからデバイスを発⾒ - ↑ の内部にある Passcode を使って PASE Session を確⽴する PASE Passcode-Authenticated Session Establishment (BLE) BLE WiFi 出典: https://developer.nordicsemi.com/nRF_Connect_SDK/doc/latest/nrf/protocols/matter/overview/commissioning.html
  5. QR Code Manual Paring Code 概要 Payload Version 必須 (3

    bit) 必須 (1 bit) バージョン Vendor ID / Product ID 必須 任意 デバイスの追加情報を取得するために使⽤する Custom Flow 必須 不要 Commissioning 時に必要な追加ステップの指⽰を⾏う Discovery Capabilities Bitmask 必須 任意 Device Discovery 時に利⽤可能な⽅法を⽰すビットマスク Discriminator 必須 (16 bit) 必須 (上位 4 bit) Device Discovery 時の区別に使⽤する Device 固有の値 (Advertising Packet と⼀致する必要がある) Passcode 必須 必須 Commissioning 時の暗号化通信 (PASE) 確⽴⽤ の Device 固有の secret (8 桁⼗進数 / 27 bit で動的 or 静的) TLV Data 任意 任意 任意の追加のデータ Onboarding Payload (QR Code, Manual Pairing Code)
  6. コミッショニングの流れ (BLE‧WiFi の例: PASE) - デバイスの情報を取得 - DAC‧CD の検証 (Matter

    認証) - NOC のインストール - Operational Network (WiFi) の設定 - デバイスが DNS-SD を開始 (WiFi 上で のアドバタイズ) DAC Device Attestation Certificate CD Certification Declaration NOC Node Operational Certificate DNS-SD DNS-Based Service Discovery BLE WiFi 出典: https://developer.nordicsemi.com/nRF_Connect_SDK/doc/latest/nrf/protocols/matter/overview/commissioning.html
  7. - DNS-SD から WiFi 上で再度デバイスを 発⾒する - NOC を利⽤して WiFi

    上で CASE Session が確⽴される - コミッショニング Complete! CASE Certificate Authenticated Session Establishment BLE WiFi コミッショニングの流れ (BLE‧WiFi の例: CASE) 出典: https://developer.nordicsemi.com/nRF_Connect_SDK/doc/latest/nrf/protocols/matter/overview/commissioning.html
  8. Matter のアーキテクチャ - Matter は Open Source な SDK として

    提供されている - WiFi‧Ethernet‧Thread をサポートし IPv6 Transoprt 上で MRP を使⽤して通 信が⾏われる - 設定時には BLE 上で BTP を使⽤した通 信も⾏われる MRP Message Reliability Protocol: デバイ ス制御に使⽤。再送制御‧到達確認‧ 重複排除を UDP ベースで実現 BTP Bluetooth Transport Protocol: 設定 時のみ使⽤。Segmentation / Reassembly 対応 出典: https://developers.home.google.com/matter/primer?hl=ja
  9. Matter の基本的な構成要素 (Node, Endpoint) - コミッショニングにより、Commissionee が Node として Matter

    の Fabric に追加される - Node は Endpoint の集合で構成される - 各 Endpoint には Device Type List がある Node Matter 上の Nature Remo nano Endpoint Remo nano に登録された家電など ex.) 照明、エアコンなど Device Type Endpoint の家電の種類 ex.) OnOff Light, Thermostat など 出典: https://developers.home.google.com/matter/primer/device-data-model?hl=ja
  10. Matter の基本的な構成要素 (Endpoint, Cluster) - Endpoint 0 は全ての Node で必

    須の情報を持つ Root Node - Endpoint は Cluster (個別の機 能) の組み合わせで構成される Cluster 各家電が持つ機能 ex.) OnOff, Thermostat など 調光可能な照明 (Endpoint) - OnOff - Level Control ⾊温度も調整可能な照明 - OnOff - Level Control - Color Control 出典: https://developers.home.google.com/matter/primer/device-data-model?hl=ja
  11. Matter の基本的な構成要素 (Attribute, Command) - Cluster は Attribute (変数) と

    Command (操作) を持つ - Attribute を制御することで家電 を操作する - Attribute は直接 Read/Write する か、Command を介して操作する Attribute Cluster が持つデータ ex.) OnOff の状態など Command Attribute を良い感じに操作 する指令 ex.) Toggle (OnOff Cluster) など 出典: https://developers.home.google.com/matter/primer/device-data-model?hl=ja
  12. 余談) Cluster のいろいろな活⽤⽅法 Basic Information Node の基本的な情報を管理する ex.) Vendor Name/ID、Product

    Name/ID、各種 Version など Bridged Device Basic Information Basic Information と同様の情報を Bridged Device で管理する General Commissioning Commissioning に関連する汎⽤的な機能を提供する ex.) ArmFailSafe, CommissioningComplete など Network Commissioning Wi-Fi/Ethernet/Thread での Commissioning のインタフェースを提供する ex.) ScanNetworks, AddOrUpdateWiFiNetworks, ConnectNetwork など Administrator Commissioning Commissioning 可能な状態にするためのインタフェースを提供する ex.) OpenCommissioningWindow など Node Operational Credentials NOC (Node Operational Credentials) の追加や削除を管理する ex.) AttestationRequest, AddNOC, RemoveFabric など 家電としての機能だけでなく、さまざまな場⾯で Cluster が活⽤されている
  13. Remo nano は Aggregator Device Type (Bridge) Matter が直接サポートしていないデバイスを Matter

    と Bridge するための Device Type 出典: Matter-1.0-Core-Specification Section 9.12.4.1 ※こちらの図は Zigbee の例であり Remo nano とは異なります
  14. Remo nano は Matter と IR の Bridge Remo nano

    は IR (⾚外線) デバイスと Matter の Bridge なので Matter に直接対応していない IR デバイスを Matter で操作できるようになる
  15. Remo nano は Matter と IR の Bridge Remo nano

    IR 家電 ⾚外線 出典: Matter-1.0-Core-Specification Section 9.12.1
  16. Aggregator Device Type (Bridge) の Endpoint の構成 - EP1 は

    Aggregator (Bridge) に必須な Endpoint - EP1 の PartsList に全ての Bridged Device の Endpoint の情報を持っている - 左図では EP 11-13 が Bridge された Non-Matter な IR 家電を表す Endpoint となる (Bridged Device) - Bridged Device の Device Type List に は Bridged Node が追加される ex.) 照明 ex.) エアコン ex.) テレビ 出典: Matter-1.0-Core-Specification Section 9.12.2
  17. お役⽴ちドキュメント集 - Matter のすべてを知りたい - Matter の仕様書のダウンロード - Matter の

    SDK をビルドする - Matter の概要をつかみたい - Google Matter ⼊⾨ガイド - Nordic の Matter Protocol 解説 - Nature Engineering Blog - Matterのデバイス認証 - Androidが勝⼿にMatterを検出しちゃうのどうしたらいいの? - Matter における TLV エンコーディング - Matter の Cluster についての紹介 - Matterでやりたかったけどできなかったこと - Nature 開発者コミュニティもありますよ! - Nature 開発者コミュニティをはじめました