Virtuelle Matter-Geräte sind nützlich zum Entwickeln und Testen von Matter-Lösungen. Sie können mit Google Home app (GHA) in Betrieb genommen und wie physische Matter-Geräte über GHA und Google Assistant gesteuert werden.
Für App-Entwickler und andere, die ein virtuelles Matter-Gerät testen oder emulieren müssen, aber nicht die Ressourcen zum Erstellen eines eigenen physischen oder virtuellen Matter-Geräts haben, bietet Google die 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 zum Steuern und Anzeigen des Status des virtuellen Matter-Geräts bietet.
Im Gegensatz zu einem physischen Matter-Gerät verlässt sich MVD nicht auf Bluetooth® Low Energy (BLE) oder Thread®, um eine Verbindung mit einem Matter-Fabric herzustellen. Stattdessen wird für die Inbetriebnahme die vorhandene WLAN-Verbindung des Host-Linux- oder macOS-Computers verwendet.
Im Vergleich zu anderen Tools
MVD unterscheidet sich von Virtual Device Controller (VDC) insofern, als sie eine eigenständige Lösung darstellt, die ein virtuelles Gerät mit einer UI zur Steuerung kombiniert. Im Gegensatz dazu wird mit VDC ein separates virtuelles Matter-Gerät gesteuert, z. B. das, das wir in der Matter Virtual Device Development Environment (MVD-DE) erstellen.
Möglicherweise haben Sie bereits mit dem Codelab „MVD-DE“ gearbeitet. In diesem Codelab erstellen Sie eine einzige Art virtuelles Gerät – eine intelligente Glühbirne. Im Gegensatz dazu enthält MVD mehrere verschiedene vorkonfigurierte virtuelle Geräte und eine integrierte UI zum Ausführen und Steuern.
MVD | VDC | MVD-DE (Codelab) | |
---|---|---|---|
Matter-Gerät emulieren | |||
Ein emuliertes Matter-Gerät 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 | Heimsystem-Typ |
---|---|---|
Einfacher Videoplayer |
0 × 0006 0 × 0506 0 × 0509 |
Fernsehen |
Farbtemperatur-Licht |
0 × 0300 0 × 0008 0 × 0006 |
Leicht |
Kontaktsensor |
0x0045 |
Sensor |
Dimmbares Licht |
0x0008 0x0006 |
Leicht |
Türschloss |
0x0101 |
Sperren |
Erweiterte Farbbeleuchtung |
0 × 0300 0 × 0008 0 × 0006 |
Leicht |
Lüfter |
0x0202 0x0006 |
Lüfter |
Durchflusssensor |
0x0404 |
Sensor |
Allgemeiner Wechsel |
0x003b |
Wechseln |
Luftfeuchtigkeitssensor |
0x0405 |
Sensor |
Lichtsensor |
0 × 0400 |
Sensor |
Anwesenheitssensor |
0x0406 |
Sensor |
Ein-/Aus-Licht |
0x0008 0x0006 |
Leicht |
Ein-/Aus-Lichtschalter |
0x0006 |
Wechseln |
Ein/Aus-Plug-in-Gerät |
0x0008 0x0006 |
Steckdose |
Drucksensor |
0x0403 |
Sensor |
Pumpe |
0 × 0006 0 × 0200 0 × 0402 0 × 0403 0 × 0404 |
– |
Staubsaugerroboter |
0 × 0054 0 × 0055 0 × 0061 |
Staubsauger |
Raumklimaanlage |
0 × 0006 0 × 0201 0 × 0202 |
Konto |
Rauch- und Kohlenmonoxidmelder |
0x005C |
Rauch |
Rauch- und Kohlenmonoxidmelder |
0x005C |
Rauch |
Temperatursensor |
0x0402 |
Sensor |
Thermostat |
0x0201 |
Thermostat |
Fensterabdeckungen |
0x0102 |
Jalousien |
MVD installieren
MVD läuft auf 64-Bit-x86-Prozessormaschinen, auf denen Debian (11 oder höher), Ubuntu (20.04 oder höher) oder macOS ausgeführt wird.
Linux
MVD-Debian-Paket (.deb) herunterladen
Armored-ASCII-Signaturdatei (ASC) herunterladen
Führen Sie dann dpkg
aus, um das Debian-Paket MVD (.deb) zu installieren:
sudo dpkg -i mvd_1.4.0_amd64.deb
macOS
MVD (macOS x86)-dmg-Datei herunterladen
MVD (ARM64 M1)-dmg-Datei 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:
![macOS-Installation](https://developers.home.google.com/static/tools/images/matter-virtual-device-macos-install.png?authuser=3&hl=de)
Portnutzung prüfen
Das Controller-Modul in MVD verwendet den TCP-Port 33000, um RPC-Aufrufe an das virtuelle Gerät durchzuführen. Wenn dieser Port also bereits von einem anderen Prozess auf Ihrem Computer verwendet wird, müssen Sie ihn freigeben.
So stellen Sie fest, ob ein Prozess Port 33000 verwendet:
Linux
sudo fuser -v 33000/tcp
macOS
lsof -i:33000
Sie können jeden Prozess über den TCP-Port 33000 mit einem einzigen Befehl beenden:
Linux
sudo fuser -k 33000/tcp
macOS
lsof -ti:33000 | xargs kill
MVD ausführen
Linux
Unter Linux führen Sie MVD über Ihren 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ählen Sie 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, mit der mehrere Anzeigen für provisionspflichtige Geräte unterschieden werden. (Standardeinstellung:
3840
). - Port Matter: Ein Port für die Matter-Inbetriebnahme und Kommunikation über IP-Netzwerke. Matter verwendet standardmäßig den TCP/UDP-Port 5540, aber Sie können das virtuelle Gerät so konfigurieren, dass es einen anderen Port verwendet, solange er von keinem 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, fahren Sie sie entweder 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 anzeigen zu lassen:
sudo iptables -L -n
Wenn Sie `ufw` verwenden, kann es deaktiviert werden mit:
sudo ufw disable
Und es kann wieder aktiviert werden mit:
sudo ufw enable
macOS
So konfigurieren oder deaktivieren Sie die Firewall unter macOS:
- Öffnen Sie das Apple-Menü und wähle Systemeinstellungen aus.
- Klicken Sie in der Liste in der Seitenleiste auf Netzwerk.
- Klicken Sie auf Firewall.
- Stellen Sie den Schalter für Firewall auf Aus.
Bediene dein Gerät
Nachdem das Gerät konfiguriert wurde, klicken Sie 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:
- Ein/Aus: Diese Option wird den meisten Geräten zugewiesen.
- Pegel: Beispielsweise könnte eine Lampe einen Lautstärkeregler haben, um die Helligkeit anzupassen.
- Farbe: Ein farbiges Licht kann beispielsweise über dieses Steuerelement verfügen.
- Anwesenheit: Der Anwesenheitssensor bietet diese Einstellung, um zu simulieren, ob jemand anwesend ist oder nicht.
Alle virtuellen Geräte haben folgende Steuerelemente:
- QRCode: Zeigt den QR-Code an, der für die Inbetriebnahme verwendet wurde.
- Neu starten: Das virtuelle Gerät wird neu gestartet. Das Gerät wird kurz vom Netzwerk getrennt.
- Zurücksetzen: Setzt das aktuelle Gerät auf die Werkseinstellungen zurück und löscht den gesamten Status, einschließlich Inbetriebnahme, aktuellen Steuerungsstatus usw.
- Löschen: Zerstört das Gerät und kehrt zum Bildschirm Gerät erstellen zurück.
Gerät in Betrieb nehmen
Das Gerät kann direkt 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 Kombination aus VID und PID wie beim Einrichten des virtuellen Geräts enthalten. Weitere Informationen finden Sie im Leitfaden zur Projekterstellung.
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 mit dem GHA in Betrieb nehmen möchtest, klicke auf QRCode, um den QR-Code des Geräts anzuzeigen. Folge dann der Anleitung unter Matter-Gerät koppeln, in der erklärt wird, wie ein Matter-Gerät mit GHA eingerichtet wird. Sie können das Gerät auch mit der Google Home Sample App for Matter in Betrieb nehmen.
In der Matter-Primer 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 Google Assistant per Sprachbefehl steuern. Sie haben dann folgende Möglichkeiten:
- Sie können das Gerät über GHA oder Assistant steuern, während Statusänderungen auf dem virtuellen Gerät überwacht werden, oder
- Das Gerät mit dem 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 überwachen.
Mit dem Gerät testen
Zum Testen mit Assistant empfehlen wir die Verwendung eines Äußerungssimulators 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.
- Vendor ID (Anbieter-ID): Die aktuelle Gerätehersteller-ID.
- Produkt-ID: Die aktuelle Produkt-ID des Geräts.
- RPC-Port: Der RPC-Port, über den das Gerät mit den Controllern kommuniziert (GUI).
- 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 wird.
- Konfigurationsordner: Der Ordner, in dem das virtuelle Gerät die Konfiguration speichert.
- Provisionsinformationen: Zeigt die Stoffe an, mit denen das Gerät verbunden ist, und die Knoten-ID des Geräts im Netzwerk.
Geräteprotokolle ansehen
Wenn Sie MVD über das Terminal gestartet haben, wird die Logausgabe unter stdout
angezeigt.
Sie können Geräteprotokolle auch auf dem Tab Geräteprotokolle einsehen.
Gerät anhalten
Klicken Sie auf Löschen, um das Gerät anzuhalten und zu löschen.
App beenden
Durch das Schließen des Steuerfensters wird das Gerät zerstört und die Anwendung MVD beendet. Wenn Sie die Anwendung über das Terminal gestartet haben, können Sie sie auch beenden, indem Sie Ctrl-C in das Terminal 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.
Wenn Sie oben rechts auf die Hilfe-Schaltfläche
klicken, gelangen Sie zu dieser Seite.Programmfehler melden
Wenn du der Meinung bist, dass du einen Defekt im MVD gefunden hast, kannst du einen Fehler melden, indem du oben rechts im Fenster auf die Schaltfläche (Problem) klickst.
Feedback geben
Wenn du uns mitteilen möchtest, was dir an MVD gefällt oder wie wir das Tool verbessern können, fülle bitte 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 aufgerufen werden.