Virtuelle Matter-Geräte sind nützlich zum Entwickeln und Testen von Matter-Lösungen und können mit dem Google Home app (GHA) in Betrieb genommen und mit GHA und Google Assistant gesteuert werden, genau wie physische Matter-Geräte.
Für App-Entwickler und andere, die ein virtuelles Matter-Gerät testen oder emulieren müssen, aber nicht über die Ressourcen zum Erstellen eines eigenen physischen oder virtuellen Matter-Geräts verfügen, bietet Google das Matter Virtual Device (MVD) an. MVD ist ein einfaches, eigenständiges Linux- oder macOS-Desktoptool, das verschiedene Arten von virtuellen Matter-Geräten simuliert und eine grafische Benutzeroberfläche zur Steuerung und Anzeige des Status des virtuellen Matter-Geräts bietet.
Im Gegensatz zu einem physischen Matter-Gerät verwendet MVD für die Verbindung mit einem Matter-Fabric nicht Bluetooth® Low Energy (BLE) oder Thread®. Stattdessen wird für die Inbetriebnahme die vorhandene WLAN-Netzwerkverbindung des Host-Linux- oder macOS-Computers verwendet.
Im Vergleich zu anderen Tools
Das MVD unterscheidet sich von Virtual Device Controller (VDC) insofern, als es eine eigenständige Lösung ist, die ein virtuelles Gerät mit einer UI für seine Steuerung kombiniert. Im Gegensatz dazu wird die VDC verwendet, um ein separates virtuelles Matter-Gerät zu steuern, z. B. das, das wir in Matter Virtual Device Development Environment (MVD-DE) erstellen.
Möglicherweise haben Sie schon mit dem Codelab zu MVD-DE gearbeitet. In diesem Codelab bauen Sie eine einzelne Art von virtuellem Gerät – eine intelligente Glühbirne. Im Gegensatz dazu enthält das MVD mehrere verschiedene vordefinierte virtuelle Geräte und eine integrierte UI zur Ausführung und Steuerung dieser Geräte.
MVD | VDC | MVD-DE (Codelab) | |
---|---|---|---|
Matter-Gerät emulieren | |||
Emulierte Matter-Geräte steuern | |||
Erforderlicher Entwicklungsaufwand | |||
Herunterladen | weniger als 100 MB | 9 GB | 20 GB |
Unterstützte Geräte
MVD unterstützt die folgenden Matter-Gerätetypen:
Matter Gerätetyp | Anwendungscluster | Art des Smart-Home-Systems |
---|---|---|
Einfacher Videoplayer |
0 × 0006 0 × 0506 0 × 0509 |
TV |
Farbtemperaturlicht |
0x0300 0x0008 0x0006 |
Leicht |
Kontaktsensor |
0x0045 |
Sensor |
Dimmbares Licht |
0x0008 0x0006 |
Leicht |
Türschloss |
0x0101 |
Sperren |
Erweitertes Farblicht |
0x0300 0x0008 0x0006 |
Leicht |
Lüfter |
0x0202 0x0006 |
Lüfter |
Durchflusssensor |
0x0404 |
Sensor |
Generischer Schalter |
0x003b |
Wechseln |
Luftfeuchtigkeitssensor |
0x0405 |
Sensor |
Beleuchtungssensor |
0x0400 |
Sensor |
Anwesenheitssensor |
0x0406 |
Sensor |
An-/Aus-Licht |
0x0008 0x0006 |
Leicht |
An-/Aus-Lichtschalter |
0x0006 |
Wechseln |
Ein/Aus-Steckdose |
0x0008 0x0006 |
Steckdose |
Drucksensor |
0x0403 |
Sensor |
Pumpe |
0x0006 0x0200 0x0402 0x0403 0x0404 |
– |
Staubsaugerroboter |
0x0054 0x0055 0x0061 |
Staubsauger |
Raumklimaanlage |
0 × 0006 0 × 0201 0 × 0202 |
AC |
Rauch- und Kohlenmonoxidmelder |
0 x 005 °C |
Rauch |
Temperatursensor |
0x0402 |
Sensor |
Thermostat |
0x0201 |
Thermostat |
Fensterabdeckung |
0x0102 |
Jalousien |
MVD installieren
MVD läuft auf Maschinen mit 64-Bit-x86-Prozessor und Debian (11 oder höher), Ubuntu (20.04 oder höher) oder macOS.
Linux
Lade das MVD-Debian-Paket (.deb) herunter
Asc-Datei (Ascored-ASCII-Signatur) herunterladen
Führen Sie dann dpkg
aus, um das Debian-Paket (.deb) MVD zu installieren:
sudo dpkg -i mvd_1.4.0_amd64.deb
macOS
MVD-Datei (macOS x86) herunterladen
MVD (ARM64 M1) dmg-Datei herunterladen
Doppelklicken Sie dann auf die Datei dmg
, um das Installationsfenster zu öffnen.
Wählen Sie zum Abschließen der Installation das Symbol mvd
aus und ziehen Sie es in den Ordner Applications
:
Portnutzung prüfen
Das Controller-Modul in MVD verwendet den TCP-Port 33000 für RPC-Aufrufe an das virtuelle Gerät. Wenn dieser Port also bereits von einem anderen Prozess auf dem Computer verwendet wird, müssen Sie ihn freigeben.
So finden Sie heraus, ob ein Prozess Port 33000 verwendet:
Linux
sudo fuser -v 33000/tcp
macOS
lsof -i:33000
Sie können jeden Prozess über TCP-Port 33000 mit einem einzigen Befehl beenden:
Linux
sudo fuser -k 33000/tcp
macOS
lsof -ti:33000 | xargs kill
MVD ausführen
Linux
Führen Sie unter Linux MVD über den Anwendungsordner oder das Terminal aus:
mvd
macOS
Verwenden Sie unter macOS Launchpad, um MVD zu öffnen, oder führen Sie MVD über das Terminal aus:
cd /Applications
open mvd.app
Gerät konfigurieren
Beim Start wird der Hauptbildschirm angezeigt, auf dem Sie ein virtuelles Gerät konfigurieren können:
- Gerätetyp: Wähle den Gerätetyp aus, z. B. Licht, Schalter oder Sensor.
- Gerätename: Geben Sie dem Gerät einen nutzerfreundlichen Namen.
- Diskriminator: Eine 12-Bit-Zahl, die verwendet wird, um zwischen mehreren Commissionablen Geräte-Advertisings zu unterscheiden. (Standardeinstellung:
3840
). - Matter-Port: Ein Port für die Matter-Inbetriebnahme und die Kommunikation über IP-Netzwerke. Matter verwendet standardmäßig den TCP/UDP-Port 5540. Sie können das virtuelle Gerät aber auch so konfigurieren, dass ein anderer Port verwendet wird, solange er von keinem anderen Dienst verwendet wird.
- Anbieter-ID: Nur die Testanbieter-ID
0xFFF1
wird unterstützt. - Produkt-ID: Es werden nur die Testprodukt-IDs
0x8000
bis0x801F
unterstützt.
Firewall konfigurieren
Linux
Wenn auf Ihrem Computer eine Firewall ausgeführt wird, fahren Sie sie herunter oder lassen Sie eingehende TCP/UDP-Verbindungen über den Port Matter zu.
Führen Sie folgenden Befehl aus, um die aktuellen aktiven netfilter-Firewallregeln anzusehen:
sudo iptables -L -n
Wenn Sie „ufw“ verwenden, kann es folgendermaßen deaktiviert werden:
sudo ufw disable
Außerdem lässt sie sich mit folgenden Methoden wieder aktivieren:
sudo ufw enable
macOS
So konfigurieren oder deaktivieren Sie die Firewall unter macOS:
- Öffne das Apple-Menü und wähle Systemeinstellungen aus.
- Klicken Sie in der Seitenleiste auf Netzwerk.
- Klicken Sie auf Firewall.
- Stellen Sie den Schalter für Firewall auf Aus.
Gerät ausführen
Nachdem das Gerät konfiguriert wurde, klicken Sie auf Gerät erstellen. Wenn das Gerät erstellt wurde, wird der Bildschirm Controller angezeigt. Je nach ausgewähltem Gerätetyp werden eines oder mehrere der folgenden Steuerelemente angezeigt:
- Ein/Aus: Wird bei den meisten Geräten verwendet.
- Pegel: Eine Lampe könnte zum Beispiel einen Schieberegler für die Helligkeit haben.
- Farbe: Dieses Steuerelement könnte beispielsweise eine Farblampe haben.
- Anwesenheit: Der Anwesenheitssensor ermöglicht dieses Steuerelement, um zu simulieren, ob jemand anwesend oder nicht anwesend ist.
Alle virtuellen Geräte haben die folgenden Steuerelemente:
- QRCode: Zeigt den für die Inbetriebnahme verwendeten QR-Code an.
- Neu starten: Das virtuelle Gerät wird neu gestartet. Das Gerät wurde kurz vom Netzwerk getrennt.
- Zurücksetzen: Das aktuelle Gerät wird auf die Werkseinstellungen zurückgesetzt und alle Status, einschließlich der Inbetriebnahme, des aktuellen Steuerungsstatus usw., werden gelöscht.
- Löschen: Das Gerät wird gelöscht und der Bildschirm Gerät erstellen wird wieder angezeigt.
Gerät in Betrieb nehmen
Das Gerät kann unmittelbar nach seiner Erstellung in Betrieb genommen werden.
Für die Inbetriebnahme des Geräts müssen einige Voraussetzungen erfüllt sein:
Sie müssen ein Projekt in Google Home Developer Console haben. Dieses Projekt muss eine Matter-Integration mit derselben VID/PID-Kombination enthalten, die du beim Einrichten deines virtuellen Geräts verwendet hast. Weitere Informationen finden Sie im Leitfaden zur Projekterstellung.
Sie benötigen einen Google Nest Hub, der Matter unterstützt
Du benötigst ein Android-Smartphone mit Android 8.1 oder höher und GHA muss installiert sein.
Das Android-Smartphone muss mit demselben WLAN wie der Hub verbunden sein.
Der Hostcomputer muss mit dem WLAN verbunden sein.
Wenn Sie das Gerät mit GHA in Betrieb nehmen möchten, klicken Sie auf QRCode, um den QR-Code des Geräts aufzurufen. Folgen Sie dann der Anleitung unter Matter-Gerät koppeln. Dort wird erläutert, wie Sie ein Matter-Gerät mit GHA einrichten. Sie können das Gerät auch mit dem Google Home Sample App for Matter in Betrieb nehmen.
Informationen zur Funktionsweise der Matter-Inbetriebnahme finden Sie in der Matter-Primer.
Gerät steuern
Nachdem Sie ein virtuelles Gerät in Betrieb genommen haben, können Sie es mit der Google Home App oder mit Google Assistant per Sprachbefehl steuern. Sie haben dann folgende Möglichkeiten:
- Das Gerät über GHA oder Assistant steuern, während Statusänderungen auf dem virtuellen Gerät überwacht werden, oder
- Sie können das Gerät mit Sample App for Matter steuern und Statusänderungen auf dem virtuellen Gerät überwachen.
- Sie können den Gerätestatus über MVD selbst steuern und Statusänderungen in GHA oder Assistant im Blick behalten.
Mit dem Gerät testen
Zum Testen mit Assistant empfehlen wir einen Äußerungssimulator wie die Google Home-Erweiterung für VS Code oder das Google Home-Plug-in für Android Studio.
Gerätedetails ansehen
Auf dem Bildschirm Gerätedetails werden detaillierte Geräteinformationen angezeigt:
- Name:Der Anzeigename des Geräts.
- Device Type: Der ausgewählte Gerätetyp.
- Diskriminator: Der aktuelle Gerätediskriminator.
- Anbieter-ID: Die aktuelle Anbieter-ID des Geräts.
- Produkt-ID: Die aktuelle Produkt-ID des Geräts.
- RPC-Port: Der RPC-Port, über den das Gerät mit Controllern (GUIs) kommuniziert.
- Matter-Port: Der Port, der vom aktuellen Gerät für die Kommunikation über das IP-Netzwerk verwendet wird.
- Sicherheitscode: Die PIN, mit der das Gerät über das Netzwerk in Betrieb genommen wurde.
- Konfigurationsordner: Der Ordner, in dem das virtuelle Gerät die Konfiguration speichert.
- Provisionsinformationen: Zeigt die mit dem Gerät verbundenen Fabrics und die Knoten-ID des Geräts in der Fabric an.
Geräteprotokolle ansehen
Wenn Sie MVD über das Terminal gestartet haben, wird die Logausgabe auf stdout
angezeigt.
Sie können Geräteprotokolle auch auf dem Tab Geräteprotokolle ansehen.
Beenden Sie das Gerät.
Wenn Sie das Gerät anhalten und löschen möchten, klicken Sie auf Löschen.
Die App beenden
Durch das Schließen des Steuerfensters wird das Gerät gelöscht und die Anwendung MVD beendet. Wenn Sie die Anwendung über das Terminal gestartet haben, können Sie die Anwendung auch beenden, indem Sie im Terminal Strg + C eingeben.
Hilfe aufrufen
Wenn Sie Hilfe zu MVD benötigen, einen Fehler melden oder eine neue Funktion anfordern möchten, wenden Sie sich an Ihren Ansprechpartner beim Google-Support.
Durch Klicken auf die Hilfe-Schaltfläche
in der oberen rechten Ecke des Fensters gelangen Sie zu dieser Seite.Programmfehler melden
Wenn Sie der Ansicht sind, dass Sie einen Defekt in MVD gefunden haben, können Sie einen Fehler melden, indem Sie rechts oben im Fenster auf die Schaltfläche „Problem“ klicken.
Feedback geben
Wenn Sie uns mitteilen möchten, was Ihnen an MVD gefällt oder wie wir das Tool verbessern können, füllen Sie unser Feedbackformular aus.
Das Formular kann über die Feedback-Schaltfläche
in der oberen rechten Ecke des Fensters oder durch Klicken auf die Schaltfläche unten gestartet werden.