Matter 虛擬裝置

裝置 SDK

Matter 虛擬裝置適合用於開發和測試 Matter 解決方案,皆可透過 Google Home app (GHA),並使用 GHAGoogle Assistant,就像實體 Matter 裝置。

適用於需要測試或模擬虛擬服務專員的應用程式開發人員 Matter 部裝置,但缺乏可自行建構的資源 物理或 「虛擬」Matter 裝置, Google 提供 Matter Virtual Device (MVD)MVD是 輕量的獨立 Linux 或 macOS 桌面工具 模擬 和多種類型的虛擬 Matter 裝置 用於控制及顯示 Matter 部裝置。

與實體的 Matter 裝置不同:MVD 不依賴 Bluetooth® 低功耗 (BLE) 或 Thread® 才能加入 Matter 架構。而是使用主機 Linux 或 macOS 機器現有的 Wi-Fi 網路連線 (供調用)。

與其他工具相比

MVD與 其中的 Virtual Device Controller (VDC) 是獨立的解決方案,將虛擬裝置與 及控制資源相反地,VDC 的用途是 操控個別虛擬 Matter 裝置,例如該裝置 這是透過 Matter Virtual Device Development Environment (MVD-DE) 建構而成

您可能已使用過 MVD-DE 程式碼研究室。在本 程式碼研究室,您將建構單一類型的虛擬裝置 (即智慧型燈泡)。於 相對地,MVD 包含多種預先建構的不同 虛擬裝置,並提供用於執行及控制的整合式 UI。

表格:虛擬 Matter 裝置工具比較
MVD VDC MVD-DE (程式碼研究室)
模擬 Matter 裝置
控制模擬的 Matter 裝置
需要開發
下載 小於 100 MB 9 GB 20 GB

支援的裝置

MVD 支援下列 Matter 裝置類型:

表格:Matter 部裝置 MVD 支援的類型
Matter 裝置類型 應用程式叢集 住家生態系統類型
基本影片播放器 0x0006
0x0506
0x0509
電視
色溫 (淺色) 0x0300
0x0008
0x0006
輕度
與感應器聯絡 0x0045
感應器
可調光燈 0x0008
0x0006
輕度
門鎖 0x0101
鎖定
延伸色彩 0x0300
0x0008
0x0006
輕度
電風扇 0x0202
0x0006
風扇
流程感應器 0x0404
感應器
通用開關 0x003b
切換
濕度感應器 0x0405
感應器
光度感應器 0x0400
感應器
活動情形感應器 0x0406
感應器
開/關燈 0x0008
0x0006
輕度
開/關燈開關 0x0006
切換
開啟/關閉外掛程式單元 0x0008
0x0006
插座
壓力感應器 0x0403
感應器
0x0006
0x0200
0x0402
0x0403
0x0404
機器人吸塵器 0x0054
0x0055
0x0061
吸塵器
客房空調 0x0006
0x0201
0x0202
Ac
煙霧警報器 0x005 度
煙霧
煙霧警報器 0x005 度
煙霧
溫度感應器 0x0402
感應器
溫度控制器 0x0201
溫度控制器
窗簾 0x0102
百葉窗

安裝 MVD

MVD 是在執行 Debian 的 64 位元 x86 處理器機器上執行 (11 以上版本)、Ubuntu (20.04 以上版本) 或 macOS。

Linux

下載 MVD Debian (.deb) 套件

下載 armored-ASCII 簽名 (.asc) 檔案

然後執行 dpkg 以安裝 MVD Debian (.deb) 套件:

sudo dpkg -i mvd_1.4.0_amd64.deb

macOS

下載 MVD (macOS x86) dmg 檔案

下載 MVD (ARM64 M1) dmg 檔案

然後按兩下 dmg 檔案開啟安裝檔 視窗。

如要完成安裝,請選取 mvd 圖示並拖曳到 Applications 資料夾:

macOS 安裝

檢查通訊埠使用情形

MVD 中的控制器模組使用 TCP 通訊埠 33000 執行 RPC 呼叫虛擬裝置,因此如果其他通訊埠已在使用中 請務必釋出這個檔案。

如要查看是否有任何程序使用通訊埠 33000,請按照下列步驟操作:

Linux

sudo fuser -v 33000/tcp

macOS

lsof -i:33000

您可以使用單一指令終止使用 TCP 通訊埠 33000 的任何程序:

Linux

sudo fuser -k 33000/tcp

macOS

lsof -ti:33000 | xargs kill

執行 MVD

Linux

在 Linux 中,從應用程式資料夾或從MVD

mvd

macOS

在 macOS 上,使用 Launchpad 開啟 MVD 或執行 從終端機讀取 MVD

cd /Applications
open mvd.app

設定裝置

啟動後會顯示主畫面,供您設定虛擬裝置:

  • 裝置類型:選取裝置類型 (例如燈具、開關、感應器) 依此類推
  • 裝置名稱:為裝置取好記的名稱。
  • 鑑別器:12 位元數值,用於辨別多個 可調式裝置廣告。(預設值:3840)。
  • Matter 通訊埠Matter 的通訊埠 透過 IP 網路Matter 預設使用 TCP/UDP 通訊埠 5540,但 您可以設定虛擬裝置 通訊埠 (前提是其他服務都無法使用)。
  • 供應商 ID:僅支援測試供應商 ID 0xFFF1
  • 產品 ID:僅限測試產品 ID 0x80000x801F 支援。

虛擬裝置設定
螢幕

設定防火牆

Linux

如果您的電腦有執行防火牆,請將它關閉或允許 Matter 通訊埠上的連入 TCP/UDP 連線。

如要查看目前啟用的網路篩選器 防火牆規則,執行:

sudo iptables -L -n

如果您使用的是 `ufw`,可以透過以下方式停用:

sudo ufw disable

且可透過以下方式重新啟用:

sudo ufw enable

macOS

如要在 macOS 上設定或停用防火牆:

  1. 前往  Apple 選單並選擇「System Settings」
  2. 按一下側欄清單中的「網路」
  3. 按一下「防火牆」
  4. 將「防火牆」的切換鈕設為「關閉」

執行裝置

裝置設定完成後,按一下「Create device」。當裝置處於停用狀態時 「Controller」畫面就會出現。視您的裝置類型而定 您可能會看到下列一或多個控制項:

  • 開啟/關閉:適用於大多數裝置。
  • 等級:舉例來說,燈具可以調整亮度滑桿,以便調整亮度 亮度。
  • 顏色:舉例來說,色光可以有這個控制項。
  • 活動情形:活動情形感應器提供這項控制選項,可模擬 佔用或無人使用的狀態

所有虛擬裝置都具備下列控制項:

  • QRCode:顯示用於調校的 QR code。
  • 重新啟動:重新啟動虛擬裝置。裝置已中斷連線 才不會中斷
  • 重設:將目前的裝置恢復原廠設定並清除所有狀態,包括 調試、目前的控制狀態等
  • 刪除:刪除裝置並返回「Create device」(建立裝置) 畫面。

虛擬裝置控制
螢幕

調試裝置

裝置一經建立即可佣金。

以下是啟動裝置測試的幾項先決條件:

  • 您在「Google Home Developer Console」中必須有專案。這項專案必須 包含的 Matter 整合項目具有相同 VID/PID 也就是設定虛擬裝置時使用的網路。詳情請見 專案建立指南

  • 你必須擁有支援 Matter

  • 您必須擁有搭載 Android 8.1 以上版本的 Android 手機,並 「GHA」已安裝。

  • Android 手機必須與中樞裝置連上相同的 Wi-Fi 網路。

  • 主機電腦必須連上 Wi-Fi 網路。

如要使用 GHA 調控裝置,請按一下「QRCode」QRCode, 顯示裝置的 QR code,然後按照 配對 Matter 裝置, 說明如何使用Matter開始使用 GHA。您也可以使用 Google Home Sample App for Matter

請參閱我們的Matter 入門 進一步瞭解Matter調試的運作方式。

控制裝置

委託虛擬裝置後,可以透過 Google Home 應用程式或 Google 助理 ( 語音。 你可以採取下列其中一種做法:

  • 透過GHA或 監控狀態變更的時間為 Assistant,監控日期為 虛擬裝置
  • 使用 監控狀態時為 Sample App for Matter 變更虛擬裝置上的變更
  • 在以下期間透過「MVD」本身控制裝置狀態 監控 GHA 中的狀態變更,或 Assistant

使用裝置進行測試

如要測試 Assistant,建議使用語句 模擬工具,例如 適用於 VS Code 的 Google Home 擴充功能Android Studio 專用的 Google Home 外掛程式

查看裝置詳細資料

「裝置詳細資料」畫面會顯示裝置詳細資訊:

  • 名稱:為裝置指定的易記名稱。
  • 裝置類型:選取的裝置類型。
  • 鑑別器:目前的裝置鑑別器。
  • 供應商 ID:目前的裝置供應商 ID。
  • 產品 ID:目前的裝置產品 ID。
  • RPC 通訊埠:裝置與控制器 (GUI) 通訊的 RPC 通訊埠。
  • Matter 通訊埠:目前裝置用於 透過 IP 網路進行通訊
  • 密碼:透過網路調用裝置的 PIN 碼。
  • Configuration Folder (設定資料夾):虛擬裝置儲存的資料夾 此外還會從 0 自動調整資源配置 您完全不必調整資源調度設定
  • 佣金資訊:顯示裝置連接的布料。 架構中裝置的節點 ID。

查看裝置記錄

如果從終端機啟動 MVD,記錄輸出就會顯示 在 stdout。 此外,您也可以前往「裝置記錄」分頁查看裝置記錄。

停止裝置

如要停止並刪除裝置,請按一下「刪除」

終止應用程式

如果關閉控制視窗,系統就會刪除裝置並終止 MVD 應用程式。如果從終端機啟動,您可以 也會在終端機中輸入 Ctrl-C 終止應用程式。

取得說明

如要取得 MVD 相關協助、回報錯誤,或是前往 申請新功能,請聯絡您的 Google 支援聯絡人。

點選頁面右側的說明 按鈕 點選視窗右上角的按鈕即可前往該頁面。

回報錯誤

如果您認為在「MVD」中有瑕疵,您可以 點選「問題」圖示 回報錯誤 按鈕。

提供意見

想與我們分享你喜歡「MVD」的心得或如何 請填寫意見回饋表單,協助我們提升您的使用體驗。

你可以使用意見回饋開啟這份表單 「」按鈕 ,或點選下方按鈕。

提供意見回饋