Matter-virtuelle Geräte sind nützlich für die Entwicklung und Prüfung von Matter-Lösungen. Sie können wie physische Matter-Geräte über die Google Home app (GHA) in Betrieb genommen und mit GHA und Google Assistant gesteuert werden.
Für App-Entwickler und andere Nutzer, die ein virtuelles Matter-Gerät testen oder emulieren möchten, aber nicht die Ressourcen haben, um ein eigenes physisches oder virtuelles Matter-Gerät zu erstellen, bietet Google den Matter Virtual Device (MVD) an. MVD ist ein schlankes eigenständiges Linux- oder macOS-Desktop-Tool, das verschiedene Arten von virtuellen Matter-Geräten simuliert und eine grafische Benutzeroberfläche zum Steuern und Anzeigen der Status des virtuellen Matter-Geräts bietet.
Im Gegensatz zu einem physischen Matter-Gerät benötigt MVD weder Bluetooth® Low Energy (BLE) noch Thread®, um sich mit einem Matter-Fabric zu verbinden. Stattdessen wird die vorhandene WLAN-Netzwerkverbindung des Linux- oder macOS-Hostcomputers für die Inbetriebnahme verwendet.
Im Vergleich zu anderen Tools
Der MVD unterscheidet sich von Virtual Device Controller (VDC) dadurch, dass es sich um eine eigenständige Lösung handelt, die ein virtuelles Gerät mit einer Benutzeroberfläche zur Steuerung kombiniert. Im Gegensatz dazu wird die VDC verwendet, um ein separates virtuelles Matter-Gerät zu steuern, z. B. das, das wir in der Matter Virtual Device Development Environment (MVD-DE) erstellen.
Möglicherweise haben Sie bereits mit dem MVD-DE-Codelab gearbeitet. In diesem Codelab erstellen Sie einen einzelnen virtuellen Gerätetyp: eine intelligente Glühbirne. Im Gegensatz dazu enthält die MVD mehrere vorkonfigurierte virtuelle Geräte und eine integrierte Benutzeroberfläche zum Ausführen und Steuern dieser Geräte.
MVD | VDC | MVD-DE (Codelab) | |
---|---|---|---|
Matter-Gerät emulieren | |||
Emuliertes Matter-Gerät steuern | |||
Erforderlicher Entwicklungsaufwand | |||
Herunterladen | kleiner als 100 MB sind. | 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 |
---|---|---|
Luftreiniger |
0x0202 0x0006 0x0071 |
Luftreiniger |
Luftqualitätssensor |
0x005b 0x0402 0x0405 0x040c 0x040d 0x042a 0x042d 0x042e |
Sensor |
Einfacher Videoplayer |
0x0006 0x0506 0x0509 |
Fernseher |
Lampe mit Farbtemperatur |
0x0300 0x0008 0x0006 |
Leicht |
Kontaktsensor |
0x0045 |
Sensor |
Dimmbares Licht |
0x0008 0x0006 |
Leicht |
Türschloss |
0x0101 |
Sperren |
Erweiterte Farbbeleuchtung |
0x0300 0x0008 0x0006 |
Leicht |
Lüfter |
0x0202 0x0006 |
Lüfter |
Durchflusssensor |
0x0404 |
Sensor |
Generischer Schalter |
0x003b |
Wechseln |
Luftfeuchtigkeitssensor |
0x0405 |
Sensor |
Lichtsensor |
0x0400 |
Sensor |
Anwesenheitssensor |
0x0406 |
Sensor |
Ein-/Aus-Lampe |
0x0008 0x0006 |
Leicht |
Ein-/Aus-Lichtschalter |
0x0006 |
Wechseln |
Ein-/Aus-Stecker |
0x0008 0x0006 |
Steckdose |
Drucksensor |
0x0403 |
Sensor |
Pumpe |
0x0006 0x0200 0x0402 0x0403 0x0404 |
Wasserpumpe |
Staubsaugerroboter |
0x0054 0x0055 0x0061 |
Staubsauger |
Raumklimaanlage |
0x0006 0x0201 0x0202 |
Ac |
Rauch- und Kohlenmonoxidmelder |
0x005C |
Rauch |
Temperatursensor |
0x0402 |
Sensor |
Thermostat |
0x0201 |
Thermostat |
Fensterdekoration |
0x0102 |
Jalousien |
MVD installieren
MVD läuft auf 64-Bit-x86-Prozessormaschinen mit Debian (11 oder höher), Ubuntu (20.04 oder höher) oder macOS.
Linux
MVD-Debian-Paket (.deb) herunterladen
Armor-ASCII-Signaturdatei (.asc) herunterladen
Führen Sie dann dpkg
aus, um das Debian-Paket (.deb) MVD zu installieren:
sudo dpkg -i mvd_1.5.0_amd64.deb
macOS
DMG-Datei für MVD (macOS x86) herunterladen
MVD-Datei (ARM64 M1) als DMG herunterladen
Doppelklicken Sie dann auf die Datei dmg
, um das Installationsfenster zu öffnen.
Wählen Sie das Symbol mvd
aus und ziehen Sie es in den Ordner Applications
, um die Installation abzuschließen:
Portnutzung prüfen
Das Controller-Modul in MVD verwendet den TCP-Port 33000, um RPC-Aufrufe an das virtuelle Gerät zu senden. Wenn dieser Port bereits von einem anderen Prozess auf Ihrem Computer verwendet wird, müssen Sie ihn freigeben.
So prüfen Sie, ob ein Prozess den Port 33000 verwendet:
Linux
sudo fuser -v 33000/tcp
macOS
lsof -i:33000
Sie können jeden Prozess, der den TCP-Port 33000 verwendet, 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 aus dem Ordner „Programme“ oder über das Terminal aus:
mvd
macOS
Öffnen Sie unter macOS MVD über das Launchpad oder führen Sie MVD über das Terminal aus:
cd /Applications
open mvd.app
Gerät konfigurieren
Der Hauptbildschirm wird beim Starten angezeigt und Sie können ein virtuelles Gerät konfigurieren:
- Gerätetyp: Wählen Sie den Gerätetyp aus (z. B. Lampe, Schalter, Sensor usw.).
- Gerätename: Geben Sie dem Gerät einen nutzerfreundlichen Namen.
- Diskriminator: Eine 12-Bit-Zahl, mit der zwischen mehreren abrechenbaren Geräteanzeigen unterschieden wird. (Standard:
3840
). - Matter-Port: Ein Port für die Matter-Inbetriebnahme und Kommunikation über IP-Netzwerke. Matter verwendet standardmäßig den TCP/UDP-Port 5540. Sie können das virtuelle Gerät jedoch so konfigurieren, dass ein anderer Port verwendet wird, sofern dieser nicht von einem anderen Dienst verwendet wird.
- Anbieter-ID: Es wird nur die Testanbieter-ID
0xFFF1
unterstützt. - Produkt-ID: Es werden nur Testprodukt-IDs von
0x8000
bis0x801F
unterstützt.
Firewall konfigurieren
Linux
Wenn auf Ihrem Computer eine Firewall ausgeführt wird, deaktivieren Sie sie oder lassen Sie eingehende TCP/UDP-Verbindungen über den Port Matter zu.
So rufen Sie die aktuell aktiven netfilter-Firewallregeln auf:
sudo iptables -L -n
Wenn Sie „ufw“ verwenden, können Sie es mit folgendem Befehl deaktivieren:
sudo ufw disable
Sie können sie mit folgenden Methoden wieder aktivieren:
sudo ufw enable
macOS
So konfigurieren oder deaktivieren Sie die Firewall unter macOS:
- Öffnen Sie das Apfel-Menü und wählen Sie Systemeinstellungen aus.
- Klicken Sie in der Seitenleiste auf Netzwerk.
- Klicken Sie auf Firewall.
- Stellen Sie den Schalter für die Firewall auf Aus.
Gerät ausführen
Klicken Sie nach der Konfiguration des Geräts auf Gerät erstellen. Nachdem das Gerät erstellt wurde, wird der Bildschirm Controller angezeigt. Je nach ausgewähltem Gerätetyp werden möglicherweise eines oder mehrere der folgenden Steuerelemente angezeigt:
- An/Aus: Diese Option ist bei den meisten Geräten üblich.
- Stufen: Eine Lampe kann beispielsweise einen Schieberegler für die Helligkeit haben.
- Farbe: Diese Einstellung kann beispielsweise für eine Lampe mit Farbwechsel verwendet werden.
- Belegung: Mit dieser Einstellung des Belegungssensors können Sie den belegten oder unbelegten Zustand simulieren.
Alle virtuellen Geräte haben die folgenden Steuerelemente:
- QRCode: Der für die Inbetriebnahme verwendete QR-Code.
- Neu starten: Das virtuelle Gerät wird neu gestartet. Die Verbindung des Geräts zum Netzwerk wird kurz unterbrochen.
- Zurücksetzen: Das aktuelle Gerät wird auf die Werkseinstellungen zurückgesetzt und der gesamte Status wird gelöscht, einschließlich Inbetriebnahme, aktueller Steuerstatus usw.
- Löschen: Das Gerät wird gelöscht und Sie kehren zum Bildschirm Gerät erstellen zurück.
Gerät in Betrieb nehmen
Das Gerät kann sofort nach der Erstellung in Betrieb genommen werden.
Für die Inbetriebnahme des Geräts gelten einige Voraussetzungen:
Sie benötigen ein Projekt in Google Home Developer Console. Dieses Projekt muss eine Matter-Integration mit derselben VID/PID-Kombination enthalten, die Sie bei der Einrichtung Ihres virtuellen Geräts verwendet haben. Weitere Informationen finden Sie im Leitfaden zum Erstellen von Projekten.
Sie benötigen einen Google Nest Hub, der Matter unterstützt.
Sie benötigen ein Android-Smartphone mit Android 8.1 oder höher und installierter GHA.
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 der GHA in Betrieb nehmen möchten, klicken Sie auf QRCode, um den QR-Code des Geräts anzuzeigen. Folgen Sie dann der Anleitung unter Matter-Gerät koppeln, um ein Matter-Gerät mit der GHA einzurichten. Sie können das Gerät auch über Google Home Sample App for Matter in Betrieb nehmen.
In unserem MatterPrimer erfahren Sie, wie die Matter-Inbetriebnahme funktioniert.
Gerät steuern
Nachdem Sie ein virtuelles Gerät in Betrieb genommen haben, können Sie es über die Google Home App oder per Sprachbefehl mit Google Assistant steuern. Du hast folgende Möglichkeiten:
- Sie können das Gerät über GHA oder Assistant steuern und gleichzeitig Statusänderungen am virtuellen Gerät beobachten.
- Sie können das Gerät über die Sample App for Matter steuern und Statusänderungen am virtuellen Gerät beobachten oder
- Sie können den Gerätestatus über MVD steuern und Statusänderungen in GHA oder Assistant beobachten.
Mit dem Gerät testen
Für Tests mit Assistant empfehlen wir einen Sprachsimulator 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.
- Gerätetyp: Der ausgewählte Gerätetyp.
- Diskriminator: Der aktuelle Gerätediskriminator.
- Anbieter-ID: Die aktuelle Geräteanbieter-ID.
- Produkt-ID: Die aktuelle Produkt-ID des Geräts.
- RPC-Port: Der RPC-Port, über den das Gerät mit Controllern (GUI) kommuniziert.
- Matter-Port: Der Port, über den das aktuelle Gerät über ein IP-Netzwerk kommuniziert.
- Sicherheitscode: Die PIN, mit der das Gerät über das Netzwerk in Betrieb genommen wird.
- Konfigurationsordner: Ordner, in dem das virtuelle Gerät die Konfiguration speichert.
- Informationen zur Inbetriebnahme: Zeigt die Fabrics an, mit denen das Gerät verbunden ist, und die Knoten-ID des Geräts in der Fabric.
Geräteprotokolle ansehen
Wenn Sie MVD über das Terminal gestartet haben, wird die Logausgabe auf stdout
angezeigt.
Sie können sich auch Geräteprotokolle auf dem Tab Geräteprotokolle ansehen.
Gerät anhalten
Klicken Sie auf Löschen, um das Gerät zu stoppen und zu zerstören.
App beenden
Wenn Sie das Steuerfenster schließen, wird das Gerät zerstört und die MVD-Anwendung beendet. Wenn Sie die Anwendung über das Terminal gestartet haben, können Sie sie auch beenden, indem Sie Strg-C in das Terminal eingeben.
Hilfe
Wenn Sie Hilfe mit MVD benötigen, einen Fehler melden oder eine neue Funktion anfordern möchten, wenden Sie sich an Ihren Google-Supportmitarbeiter.
Wenn Sie rechts oben im Fenster auf die Hilfeschaltfläche
klicken, gelangen Sie zu dieser Seite.Fehler melden
Wenn Sie der Meinung sind, dass Sie einen Fehler in der MVD gefunden haben, können Sie einen Fehler melden, indem Sie oben rechts im Fenster auf die Schaltfläche „Problem melden“ 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 bitte unser Feedback-Formular aus.
Sie können das Formular über die Schaltfläche „Feedback“
rechts oben im Fenster oder über die Schaltfläche unten öffnen.