Virtuelle Matter-Geräte sind nützlich für die Entwicklung und das Testen von Matter-Lösungen. Sie können mit der 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 die Ressourcen haben, um ein eigenes physisches oder virtuelles Matter-Gerät zu erstellen, bietet Google das Matter Virtual Device (MVD) an. MVD ist ein einfaches, 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 kein Bluetooth® Low Energy (BLE) oder Thread®, um einer Matter-Fabric beizutreten. Stattdessen wird die vorhandene WLAN-Verbindung des Linux- oder macOS-Hostcomputers für die Inbetriebnahme verwendet.
Im Vergleich zu anderen Tools
Das MVD unterscheidet sich vom Virtual Device Controller (VDC) dadurch, dass es eine eigenständige Lösung ist, die ein virtuelles Gerät mit einer Benutzeroberfläche zur Steuerung kombiniert. Im Gegensatz dazu wird der VDC verwendet, um ein separates virtuelles Matter-Gerät zu steuern.
MVD enthält mehrere verschiedene vordefinierte virtuelle Geräte und eine integrierte Benutzeroberfläche, um sie auszuführen und zu steuern.
Unterstützte Geräte
MVD unterstützt die folgenden Matter-Gerätetypen:
| Matter Gerätetyp | Anwendungscluster | Art des Smart-Home-Ökosystems |
|---|---|---|
| Luftreiniger |
0x0202 0x0006 0x0071 0x0072 |
Luftreiniger |
| Luftqualitätssensor |
0x005b 0x0402 0x0405 0x040c 0x040d 0x042a 0x042b 0x042c 0x042d 0x042e 0x042f 0x0413 0x0415 |
Sensor |
| Einfacher Videoplayer |
0x0006 0x0506 0x0509 |
Fernseher |
| Farbtemperaturlicht |
0x0300 0x0008 0x0006 |
Hell |
| Kontaktsensor |
0x0045 |
Sensor |
| Dimmbare Lampe |
0x0008 0x0006 |
Hell |
| Dimmbare Steckereinheit |
0x0006 0x0008 |
Outlet |
| Geschirrspülmaschine |
0x0006 0x0059 0x0056 0x0060 |
Geschirrspüler |
| Türschloss |
0x0101 |
Sperren |
| Erweiterte Farblichtquelle |
0x0300 0x0008 0x0006 |
Hell |
| Lüfter |
0x0202 0x0006 |
Lüfter |
| Durchflusssensor |
0x0404 |
Sensor |
| Allgemeiner Schalter |
0x003b |
Wechseln |
| Feuchtigkeitssensor |
0x0405 |
Sensor |
| Waschmaschine |
0x0006 0x0051 0x0053 0x0056 0x0060 |
Waschmaschine |
| Lichtsensor |
0x0400 |
Sensor |
| Anwesenheitssensor |
0x0406 |
Sensor |
| Licht ein/aus |
0x0008 0x0006 |
Hell |
| Ein/Aus-Lichtschalter |
0x0006 |
Wechseln |
| Ein/Aus-Steckereinheit |
0x0008 0x0006 |
Outlet |
| Drucksensor |
0x0403 |
Sensor |
| Pumpe |
0x0006 0x0200 0x0402 0x0403 0x0404 |
Pumpe |
| Saugroboter |
0x0054 0x0055 0x0061 |
Staubsauger |
| Raumklimagerät |
0x0006 0x0201 0x0202 |
Klimaanlage |
| Rauch- und Kohlenmonoxidmelder |
0x005C |
Kohlenmonoxidmelder
Rauchmelder |
| Temperatursensor |
0x0402 |
Sensor |
| Thermostat |
0x0201 |
Thermostat |
| Fensterdekoration |
0x0102 |
Jalousien |
MVD installieren
MVD wird auf 64-Bit-x86-Prozessormaschinen mit Debian (13 Trixie oder höher), Ubuntu (20.04 Noble Numbat oder höher) oder macOS ausgeführt.
Linux
MVD-Debian-Paket (.deb) herunterladen
ASCII-Signaturdatei (.asc) herunterladen
Führen Sie dann dpkg aus, um das Debian-Paket (.deb) MVD zu installieren:
sudo dpkg -i mvd_1.7.0_amd64.debmacOS
MVD-DMG-Datei (macOS x86) herunterladen
MVD-DMG-Datei (ARM64 M1) 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, 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 Port 33000 verwendet:
Linux
sudo fuser -v 33000/tcpmacOS
lsof -i:33000Sie können alle Prozesse, die den TCP-Port 33000 verwenden, mit einem einzigen Befehl beenden:
Linux
sudo fuser -k 33000/tcpmacOS
lsof -ti:33000 | xargs killMVD ausführen
Linux
Führen Sie unter Linux MVD über den Ordner „Anwendungen“ oder über das Terminal aus:
mvdmacOS
Öffnen Sie unter macOS MVD über das Launchpad oder führen Sie MVD im Terminal aus:
cd /Applicationsopen 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 zur Unterscheidung zwischen mehreren Anzeigen von Geräten verwendet wird, die in Betrieb genommen werden können. (Standard:
3840) - Matter-Port: Ein Port für die Inbetriebnahme und Kommunikation von Matter ü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
0xFFF1unterstützt. - Produkt-ID: Es werden nur die Testprodukt-IDs
0x8000bis0x801Funterstü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.
Führen Sie den folgenden Befehl aus, um die aktuell aktiven Netfilter-Firewallregeln aufzurufen:
sudo iptables -L -nWenn Sie „ufw“ verwenden, können Sie es so deaktivieren:
sudo ufw disableUnd so lässt sich die Funktion wieder aktivieren:
sudo ufw enablemacOS
So konfigurieren oder deaktivieren Sie die Firewall unter macOS:
- Öffnen Sie das Apple-Menü und wählen Sie Systemeinstellungen aus.
- Klicken Sie in der Seitenleiste auf Netzwerk.
- Klicken Sie auf Firewall.
- Stelle den Schalter für Firewall auf Aus.
Gerät ausführen
Klicken Sie nach der Konfiguration des Geräts auf Gerät erstellen. Wenn 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:
- Ein/Aus: Bei den meisten Geräten vorhanden.
- Level: Eine Lampe könnte beispielsweise einen Schieberegler zum Anpassen der Helligkeit haben.
- Farbe: Diese Einstellung kann beispielsweise für eine farbige Lampe verfügbar sein.
- Anwesenheit: Der Anwesenheitssensor bietet diese Einstellung, um den Status „Anwesend“ oder „Abwesend“ zu simulieren.
Alle virtuellen Geräte haben die folgenden Steuerelemente:
- QRCode: Zeigt den QR-Code an, der für die Inbetriebnahme verwendet wird.
- Neustart: Startet das virtuelle Gerät neu. Das Gerät wird kurzzeitig vom Netzwerk getrennt.
- Zurücksetzen: Das aktuelle Gerät wird auf die Werkseinstellungen zurückgesetzt und alle Statusdaten werden gelöscht, einschließlich Inbetriebnahme, aktueller Steuerungsstatus usw.
- Löschen: Das Gerät wird gelöscht und Sie kehren zum Bildschirm Gerät erstellen zurück.
Herstellerspezifische Attribute
Herstellerspezifische (MS) Attribute werden von den Home APIs für Android unterstützt und bieten zusätzliche Funktionen, die über die Standardattribute in Matter hinausgehen. Wenn du ein Gerät mit einem MS-Merkmal testen möchtest, kannst du in MVD im Abschnitt Benutzerdefinierte Cluster mit den Merkmalen interagieren (siehe Abbildung oben).
Gerät in Betrieb nehmen
Das Gerät kann sofort nach der Erstellung in Betrieb genommen werden.
Für die Inbetriebnahme des Geräts müssen einige Voraussetzungen erfüllt sein:
Sie benötigen ein Projekt in Google Home Developer Console. Dieses Projekt muss eine Matter-Integration enthalten, die dieselbe VID/PID-Kombination hat wie die, die du beim Einrichten deines virtuellen Geräts verwendet hast. Weitere Informationen finden Sie im Leitfaden zum Erstellen von Projekten.
Du benötigst einen Google Nest Hub, der Matter unterstützt.
Sie benötigen ein Android-Smartphone mit Android 8.1 oder höher, auf dem GHA installiert ist.
Das Android-Smartphone muss mit demselben WLAN wie der Hub verbunden sein.
Der Hostcomputer muss mit dem WLAN verbunden sein.
Wenn du das Gerät über die GHA in Betrieb nehmen möchtest, klicke auf QRCode, um den QR-Code des Geräts aufzurufen. Folge dann der Anleitung unter Matter-Gerät koppeln, in der erklärt wird, wie du ein Matter-Gerät über die GHA hinzufügst. Du kannst das Gerät auch mit dem Google Home Sample App for Matter in Betrieb nehmen.
In unserer Matter-Einführung erfahren Sie, wie die Matter-Inbetriebnahme funktioniert.
Gerät steuern
Nachdem du ein virtuelles Gerät in Betrieb genommen hast, kannst du es über die Google Home App oder per Sprachbefehl mit Google Assistant steuern. Du hast folgende Möglichkeiten:
- Steuern Sie das Gerät über GHA oder Assistant, während Sie Statusänderungen auf dem virtuellen Gerät überwachen, oder
- Steuern Sie das Gerät mit dem Sample App for Matter und überwachen Sie gleichzeitig Statusänderungen auf dem virtuellen Gerät.
- Gerätestatus über MVD selbst steuern und Statusänderungen in GHA oder Assistant beobachten.
Mit dem Gerät testen
Für Tests mit Assistant empfehlen wir die Verwendung eines Äußerungssimulators wie der Google Home-Erweiterung für VS Code oder des Google Home-Plug-ins 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 Diskriminator des Geräts.
- 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 (GUI) kommuniziert.
- Matter-Port: Der Port, der vom aktuellen Gerät für die Kommunikation über das IP-Netzwerk verwendet wird.
- Passcode: Die PIN, die zum Einrichten des Geräts über das Netzwerk verwendet wird.
- Konfigurationsordner: Der Ordner, in dem das virtuelle Gerät die Konfiguration speichert.
- Commission Information(Informationen zur Inbetriebnahme): Zeigt die Fabrics an, denen das Gerät beigetreten 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 unter stdout angezeigt.
Sie können sich Geräteprotokolle auch auf dem Tab Geräteprotokolle ansehen.
Gerät anhalten
Klicken Sie auf Löschen, um das Gerät zu beenden und zu löschen.
App beenden
Wenn Sie das Steuerungsfenster schließen, wird das Gerät gelöscht und die MVD-Anwendung beendet. Wenn Sie die Anwendung über das Terminal gestartet haben, können Sie sie auch beenden, indem Sie im Terminal Strg + C eingeben.
Hilfe
Wenn Sie Hilfe zu MVD benötigen, einen Fehler melden oder eine neue Funktion anfordern möchten, wenden Sie sich an Ihren Google-Supportkontakt.
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 den Button „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 bitte unser Feedbackformular aus.
Das Formular kann über die Feedback-Schaltfläche rechts oben im Fenster oder durch Klicken auf die Schaltfläche unten aufgerufen werden.
Sie können auch Feedback über die Umfrage geben, die unten eingeblendet wird, wenn Sie MVD verwenden.