Urządzenie wirtualne

Sprawa Pakiet SDK urządzenia

Urządzenia wirtualne Matter przydają się do tworzenia i testowania rozwiązań Matter. Można je uruchomić za pomocą Google Home app (GHA) i kontrolować za pomocą GHA i Google Assistant, podobnie jak w przypadku fizycznych urządzeń Matter.

Google oferuje Matter Virtual Device (MVD) deweloperom aplikacji oraz innym firmom, które chcą przetestować lub emulować urządzenie wirtualne Matter, ale nie mają zasobów, aby stworzyć własne fizyczne lub wirtualne urządzenie Matter. MVD to lekkie, niezależne narzędzie na komputery z systemem Linux lub macOS, które symuluje różne typy wirtualnych urządzeń Matter i udostępnia graficzny interfejs użytkownika do sterowania i wyświetlania stanu wirtualnego urządzenia Matter.

W przeciwieństwie do fizycznego urządzenia Matter MVD nie wymaga technologii Bluetooth® Low Energy (BLE) ani Thread® w celu złączenia się z tkaniną Matter. Zamiast tego do uruchamiania wykorzystuje istniejące połączenie sieciowe Wi-Fi hosta z systemem Linux lub macOS.

W porównaniu z innymi narzędziami

MVD różni się od Virtual Device Controller (VDC) tym, że jest autonomicznym rozwiązaniem, które łączy urządzenie wirtualne z interfejsem użytkownika do sterowania nim. Z kolei VDC służy do sterowania osobnym urządzeniem wirtualnym Matter, takim jak to, które stworzyliśmy w Matter Virtual Device Development Environment (MVD-DE).

Być może masz już doświadczenie w ćwiczeniu z programowania MVD-DE. W ramach tego ćwiczenia z programowania utworzysz jeden rodzaj urządzenia wirtualnego – inteligentną żarówkę. MVD zawiera natomiast kilka różnych gotowych urządzeń wirtualnych oraz zintegrowany interfejs do ich uruchamiania i sterowania.

Tabela: porównanie narzędzia wirtualnego Matter
MVD VDC MVD-DE (ćwiczenie z programowania)
Emuluj urządzenie ze standardem Matter
Sterowanie emulowanym urządzeniem Matter
Wymagane nakłady pracy programistyczne
Pobierz mniej niż 100 MB 9 GB 20 GB

Obsługiwane urządzenia

MVD obsługuje te typy urządzeń Matter:

Tabela: Matter obsługiwane typy urządzeń dla MVD
Matter typ urządzenia Klastry aplikacji Typ ekosystemu domowego
Podstawowy odtwarzacz wideo 0x0006
0x0506
0x0509
Telewizor
Temperatura kolorów (jasny) 0x0300
0x0008
0x0006
Słabe
Czujnik kontaktu 0x0045
Czujnik
Przyciemnianie światła 0x0008
0x0006
Słabe
Zamek do drzwi 0x0101
Zablokuj
Rozszerzony jasny kolor 0x0300
0x0008
0x0006
Słabe
Wentylator 0x0202
0x0006
Fan
Czujnik przepływu 0x0404
Czujnik
Standardowy przełącznik 0x003b
Przełącz
Czujnik wilgotności 0x0405
Czujnik
Czujnik światła 0x0400
Czujnik
Czujnik obecności 0x0406
Czujnik
Włącz/wyłącz światło 0x0008
0x0006
Słabe
Przełącznik światła 0x0006
Przełącz
Jednostka wtyczki do włączania i wyłączania 0x0008
0x0006
Gniazdko
Czujnik ciśnienia 0x0403
Czujnik
Pompa 0x0006
0x0200
0x0402
0x0403
0x0404
Nie dotyczy
Odkurzacz automatyczny 0x0054
0x0055
0x0061
Odkurzanie
Klimatyzacja do pomieszczeń 0x0006
0x0201
0x0202
Ac
Czujnik dymu tlenku węgla 0x005C
Dyń
Czujnik dymu tlenku węgla 0x005C
Dyń
Czujnik temperatury 0x0402
Czujnik
Termostat 0x0201
Termostat
Osłony okien 0x0102
Żaluzje

Zainstaluj MVD

MVD działa na komputerach z 64-bitowym procesorem x86 i systemami Debian (11 lub nowszy), Ubuntu (20.04 lub nowszy) i macOS.

Linux

Pobierz pakiet MVD Debian (.deb)

Pobierz plik z podpisem ASCII (.asc)

Następnie uruchom polecenie dpkg, aby zainstalować pakiet MVD Debian (.deb):

sudo dpkg -i mvd_1.4.0_amd64.deb

macOS

Pobierz plik dmg MVD (macOS x86)

Pobierz plik dmg MVD (ARM64 M1)

Następnie kliknij dwukrotnie plik dmg, aby otworzyć okno instalacji.

Aby dokończyć instalację, wybierz i przeciągnij ikonę mvd do folderu Applications:

Instalacja systemu macOS

Sprawdź wykorzystanie portów

Moduł kontrolera w MVD używa portu TCP 33000 do wywoływania RPC urządzenia wirtualnego, więc jeśli ten port jest już używany przez inny proces na Twoim komputerze, zwolnij go.

Aby sprawdzić, czy dowolny proces używa portu 33000:

Linux

sudo fuser -v 33000/tcp

macOS

lsof -i:33000

Możesz zamknąć dowolny proces, używając portu TCP 33000 jednym poleceniem:

Linux

sudo fuser -k 33000/tcp

macOS

lsof -ti:33000 | xargs kill

Uruchom MVD

Linux

W systemie Linux uruchom polecenie MVD z folderu aplikacji lub z terminala:

mvd

macOS

W systemie macOS otwórz MVD za pomocą Launchpada lub uruchom polecenie MVD z terminala:

cd /Applications
open mvd.app

Skonfiguruj urządzenie

Po uruchomieniu pojawi się ekran główny, który umożliwia skonfigurowanie urządzenia wirtualnego:

  • Typ urządzenia: wybierz typ urządzenia (np. Światło, Przełącznik, Czujnik itp.).
  • Nazwa urządzenia: nadaj urządzeniu przyjazną dla użytkownika nazwę.
  • Diskryminator: 12-bitowy numer służący do rozróżniania wielu reklam urządzeń podlegających prowizji. (Domyślnie: 3840).
  • Matter Port: port do uruchamiania i komunikacji Matter przez sieci IP. Matter używa domyślnie portu TCP/UDP 5540, ale możesz skonfigurować urządzenie wirtualne tak, aby używało innego portu, o ile nie korzysta z niego żadna inna usługa.
  • Identyfikator dostawcy: obsługiwany jest tylko testowy identyfikator dostawcy 0xFFF1.
  • Identyfikator produktu: obsługiwane są tylko testowe identyfikatory produktów od 0x8000 do 0x801F.

Ekran konfiguracji urządzenia wirtualnego

Konfigurowanie zapory sieciowej

Linux

Jeśli na komputerze masz włączoną zaporę sieciową, wyłącz ją lub zezwól na połączenia przychodzące TCP/UDP na porcie Matter.

Aby wyświetlić bieżące aktywne reguły zapory sieciowej netfilter, uruchom polecenie:

sudo iptables -L -n

Jeśli używasz parametru „ufw”, możesz go wyłączyć za pomocą tych metod:

sudo ufw disable

Można ją ponownie włączyć za pomocą:

sudo ufw enable

macOS

Aby skonfigurować lub wyłączyć zaporę sieciową w systemie macOS:

  1. Otwórz menu  Apple i wybierz System Settings (Ustawienia systemu).
  2. Kliknij Sieć na liście na pasku bocznym.
  3. Kliknij Zapora sieciowa.
  4. Przesuń przełącznik Zapora sieciowa na Wył.

Uruchamianie urządzenia

Po skonfigurowaniu urządzenia kliknij Utwórz urządzenie. Po utworzeniu urządzenia pojawi się ekran Kontroler. W zależności od wybranego typu urządzenia możesz zobaczyć jedną lub kilka z tych opcji:

  • Wł./Wył.: typowe dla większości urządzeń.
  • Poziom: na przykład oświetlenie może mieć suwak poziomujący do regulacji jasności.
  • Kolor: tę opcję może mieć na przykład kolorowe światło.
  • Obecność: to ustawienie umożliwia symulowanie stanu obecności na urządzeniu.

Wszystkie urządzenia wirtualne mają te elementy sterujące:

  • QRCode: pokazuje kod QR używany do uruchomienia.
  • Restart: powoduje ponowne uruchomienie urządzenia wirtualnego. Urządzenie zostanie na chwilę odłączone od sieci.
  • Resetuj: resetuje bieżące urządzenie do ustawień fabrycznych i usuwa cały stan, w tym uruchomienie, bieżący stan sterowania itp.
  • Usuń: niszczy urządzenie i wraca do ekranu Utwórz urządzenie.

Ekran sterowania urządzeniem wirtualnym

Przekaż urządzenie

Można uruchomić prowizję od razu po utworzeniu urządzenia.

Aby urządzenie mogło zostać udostępnione do użytku, musi spełniać kilka warunków:

  • Musisz mieć projekt w regionie Google Home Developer Console. Ten projekt musi zawierać integrację z funkcją Matter mającą tę samą kombinację identyfikatorów VID/PID co ta użyta do skonfigurowania urządzenia wirtualnego. Więcej informacji znajdziesz w przewodniku po tworzeniu projektów.

  • Musisz mieć Google Nest Hub, który obsługuje sprawę

  • Musisz mieć telefon z Androidem 8.1 lub nowszym i zainstalowanym aplikacją GHA.

  • Telefon z Androidem musi być połączony z tą samą siecią Wi-Fi co centrala.

  • Host musi być połączony z siecią Wi-Fi.

Aby uruchomić urządzenie za pomocą GHA, kliknij QRCode, aby wyświetlić kod QR urządzenia. Następnie postępuj zgodnie z instrukcjami w sekcji Parowanie urządzenia Matter, która wyjaśnia, jak zarejestrować urządzenie Matter za pomocą GHA. Możesz też uruchomić urządzenie za pomocą Google Home Sample App for Matter.

Zapoznaj się z naszym MatterWprowadzeniem, aby dowiedzieć się, jak działa przekazywanie danych Matter.

Steruj urządzeniem

Po zleceniu urządzenia wirtualnego możesz nim sterować za pomocą aplikacji Google Home lub Asystenta Google za pomocą głosu. Możesz:

  • Steruj urządzeniem za pomocą GHA lub Assistant, monitorując zmiany stanu urządzenia wirtualnego.
  • sterować urządzeniem za pomocą Sample App for Matter,monitorując zmiany stanu urządzenia wirtualnego;
  • Steruj stanem urządzenia za pomocą samego interfejsu MVD podczas monitorowania zmian stanu w funkcjach GHA lub Assistant.

Testowanie na urządzeniu

Do testowania za pomocą Assistant zalecamy użycie symulatora wypowiedzi, takiego jak rozszerzenie Google Home Extension for VS Code lub wtyczka Google Home do Android Studio.

Wyświetlanie szczegółów urządzenia

Na ekranie Szczegóły urządzenia są wyświetlane szczegółowe informacje o urządzeniu:

  • Nazwa:przyjazna nazwa nadana urządzeniu.
  • Typ urządzenia: wybrany typ urządzenia.
  • Diskryminator: obecny dyskryminator urządzenia.
  • Identyfikator dostawcy: obecny identyfikator dostawcy urządzenia.
  • Identyfikator produktu: obecny identyfikator produktu urządzenia.
  • Port RPC: port RPC, przez który urządzenie komunikuje się z kontrolerami (GUI).
  • Matter Port: port używany przez bieżące urządzenie do komunikacji przez sieć IP.
  • Kod dostępu: kod PIN używany do zlecenia urządzenia w sieci.
  • Folder konfiguracji: folder, w którym urządzenie wirtualne przechowuje konfigurację.
  • Informacje o prowizji: pokazuje tkaniny, z których korzysta urządzenie, oraz identyfikator węzła urządzenia w tkaninie.

Wyświetl dzienniki urządzenia

Jeśli uruchomiłeś MVD z terminala, dane wyjściowe logów pojawią się w stdout. Dzienniki urządzenia możesz też wyświetlać na karcie Dzienniki urządzenia.

Zatrzymaj urządzenie

Aby zatrzymać i zniszczyć urządzenie, kliknij Usuń.

Zamknij aplikację

Zamknięcie okna sterującego powoduje zniszczenie urządzenia i zakończenie aplikacji MVD. Jeśli aplikację uruchomiono z terminala, możesz ją zamknąć, naciskając w nim Ctrl+C.

Uzyskaj pomoc

Aby uzyskać pomoc dotyczącą usługi MVD, zgłosić błąd lub poprosić o dodanie nowej funkcji, skontaktuj się z zespołem pomocy Google.

Aby przejść do tej strony, kliknij przycisk pomocy w prawym górnym rogu okna.

Zgłoś błąd

Jeśli uważasz, że znajdziesz defekt w pliku MVD, możesz zgłosić błąd, klikając przycisk Problem w prawym górnym rogu okna.

Prześlij opinię

Aby podzielić się z nami swoją opinią na temat usługi MVD lub powiedzieć, jak możemy ulepszyć to narzędzie, wypełnij formularz opinii.

Aby go otworzyć, kliknij przycisk opinii w prawym górnym rogu okna lub przycisk poniżej.

Prześlij nam swoją opinię