Les appareils virtuels Matter sont utiles pour développer et tester des solutions Matter. Ils peuvent être mis en service à l'aide de Google Home app (GHA), et contrôlés à l'aide de GHA et Google Assistant, tout comme les appareils Matter physiques.
Pour les développeurs d'applications et les autres utilisateurs qui doivent tester ou émuler un appareil Matter virtuel, mais qui ne disposent pas des ressources nécessaires pour créer leur propre appareil Matter physique ou virtuel, Google propose Matter Virtual Device (MVD). MVD est un outil de bureau Linux ou macOS autonome et léger qui simule différents types d'appareils Matter virtuels et fournit une interface utilisateur graphique permettant de contrôler et d'afficher les états de l'appareil Matter virtuel.
Contrairement à un appareil Matter physique, MVD ne s'appuie pas sur le Bluetooth® à basse consommation (BLE) ni sur Thread® pour rejoindre un tissu Matter. À la place, il utilise la connexion réseau Wi-Fi existante de la machine hôte Linux ou macOS pour la mise en service.
Comparaison avec d'autres outils
MVD diffère de Virtual Device Controller (VDC) en ce sens qu'il s'agit d'une solution autonome, qui combine un appareil virtuel avec une interface utilisateur pour le contrôler. En revanche, VDC permet de contrôler un appareil Matter virtuel distinct, comme celui que nous avons créé dans Matter Virtual Device Development Environment (MVD-DE).
Vous avez peut-être déjà suivi l'atelier de programmation MVD-DE. Dans cet atelier de programmation, vous allez créer un seul type d'appareil virtuel : une ampoule connectée. En revanche, MVD contient plusieurs appareils virtuels prédéfinis et inclut une interface utilisateur intégrée pour les exécuter et les contrôler.
MVD | VDC | MVD-DE (atelier de programmation) | |
---|---|---|---|
Émuler un appareil Matter | |||
Contrôler un appareil Matter émulé | |||
Tâches de développement requises | |||
Télécharger | Moins de 100 Mo | 9 GB | 20 Go |
Appareils compatibles
MVD est compatible avec les types d'appareils Matter suivants:
Type d'appareil Matter | Cluster(s) d'application | Type d'écosystème domestique |
---|---|---|
Lecteur vidéo de base |
0x0006 0x0506 0x0509 |
Télévision |
Température de couleur Lumière |
0x0300 0x0008 0x0006 |
Léger |
Capteur de contact |
0x0045 |
Capteur |
Lumière à intensité variable |
0x0008 0x0006 |
Léger |
Serrure |
0x0101 |
Verrouiller |
Éclairage de couleur étendu |
0x0300 0x0008 0x0006 |
Léger |
Ventilateur |
0x0202 0x0006 |
Ventilateur |
Capteur de débit |
0x0404 |
Capteur |
Bouton générique |
0x003b |
Bouton bascule |
Capteur d'humidité |
0x0405 |
Capteur |
Capteur de lumière |
0x0400 |
Capteur |
Détecteur de présence |
0x0406 |
Capteur |
Voyant Marche/Arrêt |
0x0008 0x0006 |
Léger |
Interrupteur Marche/Arrêt |
0x0006 |
Bouton bascule |
Boîtier enfichable Marche/Arrêt |
0x0008 0x0006 |
Prise |
Capteur de pression |
0x0403 |
Capteur |
Pompe |
0x0006 0x0200 0x0402 0x0403 0x0404 |
N/A |
Aspirateur robot |
0x0054 0x0055 0x0061 |
Aspirateur |
Climatiseur |
0x0006 0x0201 0x0202 |
Ac |
Détecteur de fumée et de monoxyde de carbone |
0x005C |
Fumée |
Détecteur de fumée et de monoxyde de carbone |
0x005C |
Fumée |
Capteur de température (Temperature Sensor) |
0x0402 |
Capteur |
Thermostat |
0x0201 |
Thermostat |
Revêtements de fenêtres |
0x0102 |
Stores |
Installer MVD
MVD s'exécute sur des machines x86 64 bits exécutant Debian (11 ou version ultérieure), Ubuntu (20.04 ou version ultérieure) ou macOS.
Linux
Télécharger le package MVD Debian (.deb)
Télécharger le fichier de signature armored-ASCII (.asc)
Exécutez ensuite dpkg
pour installer le package Debian (.deb) MVD:
sudo dpkg -i mvd_1.4.0_amd64.deb
macOS
Téléchargez le fichier MVD (macOS x86)
Téléchargez le fichier MVD (ARM64 M1)
Double-cliquez ensuite sur le fichier dmg
pour ouvrir la fenêtre d'installation.
Pour terminer l'installation, sélectionnez l'icône mvd
et faites-la glisser vers le dossier Applications
:
![Installation de macOS](https://developers.home.google.com/static/tools/images/matter-virtual-device-macos-install.png?authuser=0&hl=fr)
Vérifier l'utilisation des ports
Le module de contrôleur dans MVD utilise le port TCP 33000 pour effectuer des appels RPC vers l'appareil virtuel. Par conséquent, si ce port est déjà utilisé par un autre processus sur votre ordinateur, veillez à le libérer.
Pour savoir si un processus utilise le port 33000:
Linux
sudo fuser -v 33000/tcp
macOS
lsof -i:33000
Vous pouvez arrêter n'importe quel processus à l'aide du port TCP 33000 avec une seule commande:
Linux
sudo fuser -k 33000/tcp
macOS
lsof -ti:33000 | xargs kill
Exécuter le MVD
Linux
Sous Linux, exécutez MVD à partir du dossier de votre application ou du terminal:
mvd
macOS
Sous macOS, utilisez Launchpad pour ouvrir MVD ou exécutez MVD à partir du terminal:
cd /Applications
open mvd.app
Configurer votre appareil
L'écran principal s'affiche au démarrage et vous permet de configurer un appareil virtuel:
- Device Type (Type d'appareil) : sélectionnez le type d'appareil (par exemple, Light, Switch, Sensor, etc.).
- Device Name (Nom de l'appareil) : attribuez un nom convivial à l'appareil.
- Discriminateur: nombre de 12 bits permettant de distinguer entre plusieurs annonces d'appareils ouvrant droit à commission. (Valeur par défaut:
3840
). - Port Matter: port de mise en service Matter et de communication via des réseaux IP. Matter utilise le port TCP/UDP 5540 par défaut, mais vous pouvez configurer l'appareil virtuel pour qu'il utilise un autre port, à condition qu'aucun autre service ne l'utilise.
- ID de fournisseur: seul l'ID de fournisseur de test
0xFFF1
est accepté. - ID produit: seuls les ID produit de test
0x8000
à0x801F
sont acceptés.
Configurer le pare-feu
Linux
Si un pare-feu est en cours d'exécution sur votre ordinateur, arrêtez-le ou autorisez les connexions TCP/UDP entrantes sur le port Matter.
Pour afficher les règles de pare-feu netfilter actives actuelles, exécutez la commande suivante:
sudo iptables -L -n
Si vous utilisez "ufw", vous pouvez le désactiver avec:
sudo ufw disable
Et il peut être réactivé avec:
sudo ufw enable
macOS
Pour configurer ou désactiver le pare-feu sous macOS:
- Accédez au menu Apple, puis sélectionnez Paramètres système.
- Cliquez sur Réseau dans la liste de la barre latérale.
- Cliquez sur Pare-feu.
- Basculez le bouton Pare-feu sur Désactivé.
Exécutez votre appareil
Une fois l'appareil configuré, cliquez sur Create device (Créer un appareil). Une fois l'appareil créé, l'écran Controller (Contrôleur) s'affiche. Selon le type d'appareil que vous avez sélectionné, une ou plusieurs des commandes suivantes peuvent s'afficher:
- Activé/Désactivé: courant sur la majorité des appareils.
- Level (Niveau) : par exemple, une lumière peut être dotée d'un curseur de niveau pour régler la luminosité.
- Couleur: par exemple, une lumière colorée peut disposer de cette commande.
- Occupancy (Occupancy) : le capteur d'occupation offre cette commande pour simuler l'état d'occupation de l'appareil.
Tous les appareils virtuels disposent des commandes suivantes:
- QRCode: affiche le code QR utilisé pour la mise en service.
- Redémarrer: redémarre l'appareil virtuel. L'appareil est brièvement déconnecté du réseau.
- Réinitialiser: réinitialise l'appareil actuel et supprime tous ses états, y compris la mise en service, l'état des commandes actuelles, etc.
- Supprimer: détruit l'appareil et revient à l'écran Créer un appareil.
Mettre votre appareil en service
L'appareil est ouvrant droit à commission dès sa création.
Deux prérequis sont nécessaires pour la mise en service de l'appareil:
Vous devez avoir un projet dans Google Home Developer Console. Ce projet doit contenir une intégration Matter ayant la même combinaison VID/PID que celle que vous avez utilisée pour configurer votre appareil virtuel. Pour en savoir plus, consultez le guide de création de projet.
Vous devez disposer d'un Google Nest Hub compatible avec Matter.
Vous devez disposer d'un téléphone Android équipé d'Android 8.1 ou version ultérieure, sur lequel GHA est installé.
Le téléphone Android doit être connecté au même réseau Wi-Fi que le hub.
La machine hôte doit être connectée au réseau Wi-Fi.
Pour mettre en service l'appareil à l'aide du GHA, cliquez sur QRCode pour afficher le code QR de l'appareil, puis suivez les instructions de la section Associer un appareil Matter, qui expliquent comment intégrer un appareil Matter à l'aide de GHA. Vous pouvez également mettre en service l'appareil à l'aide de Google Home Sample App for Matter.
Consultez notre Matter Primer pour découvrir le fonctionnement de la mise en service de Matter.
Contrôler l'appareil
Après avoir mis en service un appareil virtuel, vous pouvez le contrôler à l'aide de l'application Google Home ou de l'Assistant Google par commande vocale. Vous avez alors deux possibilités :
- contrôler l'appareil via GHA ou Assistant tout en surveillant les changements d'état sur l'appareil virtuel ;
- contrôler l'appareil à l'aide de Sample App for Matter tout en surveillant les changements d'état de l'appareil virtuel ;
- Contrôlez l'état de l'appareil via MVD lui-même lorsque l'état de la surveillance change dans GHA ou Assistant.
Tester avec l'appareil
Pour effectuer un test avec Assistant, nous vous recommandons d'utiliser un simulateur d'énoncé, tel que l'extension Google Home pour VS Code ou le plug-in Google Home pour Android Studio.
Afficher les détails de l'appareil
L'écran Détails de l'appareil affiche des informations détaillées sur l'appareil:
- Nom:nom convivial attribué à l'appareil.
- Device Type (Type d'appareil) : type d'appareil sélectionné.
- Discriminateur: discriminateur actuel de l'appareil.
- Vendor ID (ID du fournisseur) : ID actuel du fournisseur de l'appareil.
- Identifiant produit: identifiant produit actuel de l'appareil.
- Port RPC: port RPC permettant à l'appareil de communiquer avec les contrôleurs (IUG).
- Port Matter: port utilisé par l'appareil actuel pour communiquer via le réseau IP.
- Code secret: code utilisé pour mettre l'appareil en service sur le réseau.
- Dossier de configuration: dossier dans lequel l'appareil virtuel stocke la configuration.
- Informations sur la commission: indique la ou les structures que l'appareil a rejointes et l'ID de nœud de l'appareil dans la structure.
Afficher les journaux de l'appareil
Si vous avez lancé MVD à partir du terminal, la sortie du journal apparaît sur stdout
.
Vous pouvez également consulter les journaux de l'appareil dans l'onglet Journaux de l'appareil.
Arrêter l'appareil
Pour arrêter et détruire l'appareil, cliquez sur Supprimer.
Arrêter l'application
La fermeture de la fenêtre de contrôle détruit l'appareil et arrête l'application MVD. Si vous avez lancé l'application à partir du terminal, vous pouvez également arrêter l'application en saisissant Ctrl-C dans le terminal.
Obtenir de l'aide
Pour obtenir de l'aide concernant MVD, signaler un bug ou demander une nouvelle fonctionnalité, contactez l'assistance Google.
Cliquez sur le bouton d'aide
en haut à droite de la fenêtre pour accéder à cette page.Signaler un bug
Si vous pensez avoir détecté un défaut dans MVD, vous pouvez signaler un bug en cliquant sur le bouton "Issue" (Problème) en haut à droite de la fenêtre.
Envoyer des commentaires
Pour nous faire part de vos commentaires sur ce que vous appréciez concernant MVD ou sur la façon dont nous pouvons améliorer votre expérience avec l'outil, remplissez notre formulaire de commentaires.
Vous pouvez lancer le formulaire à l'aide du bouton d'envoi de commentaires
situé en haut à droite de la fenêtre, ou en cliquant sur le bouton ci-dessous.