Virtuelles Gerät

Matter ; Home APIs

Virtuelle Matter-Geräte eignen sich gut für die Entwicklung und das Testen von Matter-Lösungen und können wie physische Matter-Geräte mit Google Home app (GHA) in Betrieb genommen und mit GHA und Google Assistant gesteuert werden.

App-Entwickler und andere, die ein virtuelles Matter-Gerät testen oder emulieren müssen, aber nicht die Ressourcen haben, ein eigenes physisches oder virtuelles Matter-Gerät zu entwickeln, können das Matter Virtual Device (MVD) von Google nutzen. 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 ist für MVD keine Bluetooth® Low Energy-Verbindung (BLE) oder Thread® erforderlich, um einem Matter-Netzwerk beizutreten. Stattdessen nutzt es die bestehende WLAN-Netzwerkverbindung des Host-Rechners (Linux oder macOS) zur Inbetriebnahme.

Im Vergleich zu anderen Tools

Der MVD unterscheidet sich vom Virtual Device Controller (VDC) dadurch, dass er eine in sich geschlossene Lösung darstellt, die ein virtuelles Gerät mit einer Benutzeroberfläche zur Steuerung dieses Geräts kombiniert. Im Gegensatz dazu wird das VDC verwendet, um ein separates virtuelles Matter-Gerät zu steuern.

Das MVD enthält mehrere verschiedene vorgefertigte virtuelle Geräte und eine integrierte Benutzeroberfläche, über die sie ausgeführt und gesteuert werden können.

Unterstützte Geräte

Der MVD unterstützt die folgenden Matter Gerätetypen:

Tabelle: Matter-Gerätetypen, die für MVD unterstützt werden
Matter Gerätetyp Anwendungscluster Typ des Smart-Home-Ökosystems
Luftreiniger 0x0202
0x0006
0x0071
Luftreiniger
Luftqualitätssensor 0x005b
0x0402
0x0405
0x040c
0x040d
0x042a
0x042d
0x042e
Sensor
Einfacher Videoplayer 0x0006
0x0506
0x0509
Fernsehen
Farbtemperatur des Lichts 0x0300
0x0008
0x0006
Leicht
Kontaktsensor 0x0045
Sensor
Dimmbares Licht 0x0008
0x0006
Leicht
Dimmbare Plug-in-Einheit 0x0006
0x0008
Steckdose
Geschirrspülmaschine 0x0006
0x0059
0x0056
0x0060
Geschirrspülmaschine
Türschloss 0x0101
Sperren
Extended Color Light 0x0300
0x0008
0x0006
Leicht
Lüfter 0x0202
0x0006
Lüfter
Durchflusssensor 0x0404
Sensor
Allgemeiner Schalter 0x003b
Wechseln
Luftfeuchtigkeitssensor 0x0405
Sensor
Waschmaschine 0x0006
0x0051
0x0053
0x0056
0x0060
Unterlegscheibe
Lichtsensor 0x0400
Sensor
Anwesenheitssensor 0x0406
Sensor
Licht an/aus 0x0008
0x0006
Leicht
Ein/Aus-Lichtschalter 0x0006
Wechseln
Ein/Aus-Plug-in-Einheit 0x0008
0x0006
Steckdose
Drucksensor 0x0403
Sensor
Pumpe 0x0006
0x0200
0x0402
0x0403
0x0404
Pumpe
Saugroboter 0x0054
0x0055
0x0061
Staubsauger
Raumklimaanlage 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

Laden Sie die Datei mit der Signatur „armored-ASCII“ (.asc) herunter

Führen Sie anschließend dpkg aus, um das MVD Debian (.deb)-Paket zu installieren:

sudo dpkg -i mvd_1.7.0_amd64.deb

macOS

Laden Sie die MVD (macOS x86) DMG-Datei herunter

Laden Sie die MVD (ARM64 M1) DMG-Datei herunter

Doppelklicken Sie anschließend auf die Datei dmg, um das Installationsfenster zu öffnen.

Um die Installation abzuschließen, wählen Sie das Symbol mvd aus und ziehen Sie es in den Ordner Applications:

macOS-Installation

Portnutzung prüfen

Das Controller-Modul in MVD verwendet den TCP-Port 33000 für RPC-Aufrufe an das virtuelle Gerät. Falls dieser Port bereits von einem anderen Prozess auf Ihrem Computer verwendet wird, stellen Sie sicher, dass er freigegeben wird.

Um zu prüfen, ob ein Prozess 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

Unter Linux führen Sie MVD aus Ihrem Anwendungsordner oder im Terminal aus:

mvd

macOS

Unter macOS öffnen Sie MVD mit Launchpad oder führen MVD über das Terminal aus:

cd /Applications
open mvd.app

Konfigurieren Sie Ihr Gerät

Beim Start erscheint der Hauptbildschirm, auf dem Sie ein virtuelles Gerät konfigurieren können:

  • Gerätetyp: Wählen Sie den Gerätetyp aus, z. B. „Lampe“, „Schalter“ oder „Sensor“.
  • Gerätename: Geben Sie dem Gerät einen benutzerfreundlichen Namen.
  • Discriminator (Unterscheidungsmerkmal): Eine 12-Bit-Zahl, die zur Unterscheidung zwischen mehreren Anzeigen für provisionsfähige Geräte verwendet wird. (Standard: 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. Du kannst das virtuelle Gerät aber so konfigurieren, dass es einen anderen Port verwendet, 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 bis 0x801F unterstützt.

Konfigurationsbildschirm für virtuelle Geräte

Firewall konfigurieren

Linux

Wenn auf Ihrem Computer eine Firewall ausgeführt wird, schließen Sie sie oder lassen Sie eingehende TCP-/UDP-Verbindungen über den Port Matter zu.

Führen Sie Folgendes aus, um die aktuell aktiven netfilter-Firewallregeln aufzurufen:

sudo iptables -L -n

Wenn Sie `ufw` verwenden, kann es mit folgendem Befehl deaktiviert werden:

sudo ufw disable

Sie kann mit folgendem Befehl wieder aktiviert werden:

sudo ufw enable

macOS

So konfigurieren oder deaktivieren Sie die Firewall unter macOS:

  1. Klicken Sie auf das  Apple-Menü und wählen Sie Systemeinstellungen aus.
  2. Klicken Sie in der Seitenleiste auf Netzwerk.
  3. Klicken Sie auf Firewall.
  4. Schalten Sie den Schalter für Firewall in die Position Aus.

Starten Sie Ihr Gerät

Wenn das Gerät konfiguriert ist, klicken Sie auf Gerät erstellen. Wenn das Gerät erstellt wird, erscheint der Bildschirm Controller. Je nach Gerätetyp werden Ihnen möglicherweise eines oder mehrere der folgenden Steuerelemente angezeigt:

  • Ein/Aus: Bei den meisten Geräten üblich.
  • Stufe: Eine Lampe kann beispielsweise einen Schieberegler für die Helligkeit haben.
  • Farbe: Beispielsweise könnte eine Farbleuchte diese Steuerung haben.
  • Belegung: Der Belegungssensor bietet diese Steuerung, um den belegten oder unbelegten Zustand zu simulieren.

Alle virtuellen Geräte haben die folgenden Steuerelemente:

  • QRCode: Zeigt den für die Inbetriebnahme verwendeten QR‑Code an.
  • Reboot: Startet das virtuelle Gerät neu. Das Gerät wird kurz vom Netzwerk getrennt.
  • Zurücksetzen: Das aktuelle Gerät wird auf die Werkseinstellungen zurückgesetzt und alle Statusinformationen werden gelöscht, einschließlich der Inbetriebnahme, des aktuellen Steuerungsstatus usw.
  • Löschen: Das Gerät wird gelöscht und Sie kehren zum Bildschirm Gerät erstellen zurück.

Steuerungsbildschirm für virtuelle Geräte

Herstellerspezifische Merkmale

Herstellerspezifische (MS) Merkmale werden von den Home APIs für Android unterstützt und bieten zusätzliche Funktionen über die Standardmerkmale in Matter hinaus. Um ein Gerät mit einem MS-Merkmal zu testen, können Sie mit MVD mit den Merkmalen im Abschnitt Custom Clusters interagieren (siehe Abbildung oben).

Gerät einrichten

Das Gerät kann in Betrieb genommen werden, sobald es erstellt wurde.

Für die Inbetriebnahme des Geräts müssen einige Voraussetzungen erfüllt sein:

Um das Gerät mit dem GHA in Betrieb zu nehmen, klicken Sie auf QRCode, um den QR-Code des Geräts anzuzeigen, und folgen Sie dann den Anweisungen unter Kopieren eines Matter-Geräts, in denen erklärt wird, wie ein Matter-Gerät mit dem GHA verbunden wird. Sie können das Gerät auch mit dem Google Home Sample App for Matter in Betrieb nehmen.

Matter Weitere Informationen zur Funktionsweise der Matter-Inbetriebnahme

Gerät steuern

Nachdem Sie ein virtuelles Gerät in Betrieb genommen haben, können Sie es über die Google Home App oder Google Assistant per Sprachbefehl steuern. Du hast folgende Möglichkeiten:

  • Das Gerät über GHA oder Assistant steuern und gleichzeitig Statusänderungen auf dem virtuellen Gerät überwachen.
  • Steuere das Gerät über Sample App for Matter und beobachte gleichzeitig Statusänderungen auf dem virtuellen Gerät.
  • Gerätestatus über MVD steuern und Statusänderungen in GHA oder Assistant beobachten.

Mit dem Gerät testen

Zum Testen mit Assistant empfehlen wir die Verwendung eines Äußerungssimulators wie Google Home Extension für VS Code oder Google Home Plugin für Android Studio.

Gerätedetails ansehen

Auf dem Bildschirm Gerätedetails werden detaillierte Geräteinformationen angezeigt:

  • Name: Der dem Gerät zugewiesene Benutzername.
  • Gerätetyp: Der ausgewählte Gerätetyp.
  • Diskriminator: Der aktuelle Gerätediskriminator.
  • Vendor ID: Die aktuelle Geräte-Vendor-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, der vom aktuellen Gerät zur Kommunikation über das IP-Netzwerk verwendet wird.
  • Sicherheitscode: Die PIN, die zum Inbetriebnehmen des Geräts über das Netzwerk verwendet wird.
  • Konfigurationsordner: Der Ordner, in dem das virtuelle Gerät die Konfiguration speichert.
  • Inbetriebnahmedaten: Hier werden die Fabrics angezeigt, denen das Gerät beigetreten ist, sowie die Knoten-ID des Geräts im Fabric.

Geräte-Logs ansehen

Wenn Sie MVD über das Terminal gestartet haben, wird die Logausgabe auf stdout angezeigt. Sie können sich die Gerätelogs auch auf dem Tab Gerätelogs ansehen.

Gerät stoppen

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 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 zu MVD benötigen, einen Fehler melden oder eine neue Funktion anfordern möchten, wenden Sie sich an Ihren Google-Supportkontakt.

Wenn Sie oben rechts im Fenster auf die Schaltfläche „Hilfe“  klicken, werden Sie zu dieser Seite weitergeleitet.

Fehler melden

Wenn Sie einen Fehler in MVD gefunden haben, können Sie ihn melden, indem Sie oben rechts 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 Feedback-Formular aus.

Das Formular kann über die Schaltfläche „Feedback“  oben rechts im Fenster oder über die Schaltfläche unten aufgerufen werden.

Feedback geben

Sie können auch über die Umfrage Feedback geben, die unten eingeblendet wird, wenn Sie MVD verwenden.