Appareil virtuel Matter

SDK de l'appareil

Les appareils virtuels Matter sont utiles pour développer et tester Matter, et peuvent être commandées à l'aide des Google Home app (GHA), et contrôlé à l'aide de GHA et Google Assistant, comme le Matter physique appareils.

Pour les développeurs d'applications et autres personnes qui doivent tester ou émuler un Matter appareil, mais ne dispose pas des ressources nécessaires pour créer le sien physique ou un appareil Matter virtuel, Google propose le Matter Virtual Device (MVD). MVD est un un outil de bureau Linux ou macOS léger et autonome qui simule différents types d'appareils Matter virtuels et fournit une interface pour contrôler et afficher les états de l'instance Matter appareil.

Contrairement à un appareil Matter physique, MVD ne repose pas sur la technologie BLE (Bluetooth® à basse consommation) ou Thread® pour joindre un maillage Matter. Elle utilise plutôt la connexion réseau Wi-Fi existante de la machine Linux ou macOS hôte pour la mise en service.

Comparaison avec d'autres outils

MVD est différent de Virtual Device Controller (VDC), est une solution autonome, qui combine un appareil virtuel et une interface utilisateur pour le contrôle. En revanche, VDC est utilisé pour contrôler un appareil Matter virtuel distinct, comme celui-ci que nous créons dans la 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. Dans En revanche, MVD contient plusieurs types prédéfinis des appareils virtuels et comprend une UI intégrée pour les exécuter et les contrôler.

Tableau: comparatif des outils Matter virtuels
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

Le MVD est compatible avec les Matter suivants types d'appareils:

Tableau: appareil Matter types compatibles avec MVD
Type d'appareil Matter Cluster(s) d'application Type d'écosystème domestique
Lecteur vidéo de base 0x0006
0x0506
0x0509
Téléviseur
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
Lumière de couleur étendue 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
Pompe à eau
Aspirateur robot 0x0054
0x0055
0x0061
Aspirateur
Climatiseur 0x0006
0x0201
0x0202
Ac
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 ASCII (armored-ASCII)

Exécutez ensuite dpkg pour installer MVD. Package Debian (.deb) :

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 le fichier d'installation fenêtre.

Pour terminer l'installation, sélectionnez l'icône mvd et faites-la glisser vers le dossier Applications:

Installation de macOS

Vérifier l'utilisation des ports

Le module Contrôleur dans MVD utilise le port TCP 33000 pour effectuer des appels RPC à l'appareil virtuel, donc si ce port est déjà utilisé par un autre sur votre ordinateur, assurez-vous de 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 de votre dossier d'applications ou de le 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 utilisé pour distinguer plusieurs les annonces d'appareils ouvrant droit à commission (Valeur par défaut: 3840).
  • Port Matter: port pour Matter la mise en service et la communication à travers et 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 identifiants produit de test 0x8000 à 0x801F sont pris en charge.

Configuration d'un appareil virtuel
écran

Configurer le pare-feu

Linux

Si un pare-feu est en cours d'exécution sur votre ordinateur, arrêtez-le ou autorisez connexions TCP/UDP entrantes sur le port Matter.

Afficher le filtre netfilter actif règles de pare-feu, exécutez la commande suivante:

sudo iptables -L -n

Si vous utilisez ufw, vous pouvez le désactiver avec :

sudo ufw disable

Vous pouvez la réactiver avec :

sudo ufw enable

macOS

Pour configurer ou désactiver le pare-feu sous macOS :

  1. Accédez au menu Apple, puis sélectionnez Paramètres système.
  2. Cliquez sur Réseau dans la liste de la barre latérale.
  3. Cliquez sur Pare-feu.
  4. Basculez le bouton Pare-feu sur Désactivé.

Exécuter votre appareil

Une fois l'appareil configuré, cliquez sur Create device (Créer un appareil). Lorsque l'appareil est l'écran Controller (Contrôleur) s'affiche. Selon le type d'appareil que vous sélectionnée, une ou plusieurs des commandes suivantes peuvent s'afficher:

  • Activé/Désactivé: courant sur la majorité des appareils.
  • Niveau: par exemple, un curseur de réglage du niveau d'une ampoule peut être ajusté luminosité.
  • Couleur: par exemple, une lumière colorée peut disposer de cette commande.
  • Occupancy: le capteur de présence offre cette commande pour simuler la "Occupé" ou "Inoccupé".

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 déconnecté du réseau.
  • Réinitialiser : rétablit la configuration d'usine de l'appareil actuel et efface tous les é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.

Contrôle des appareils virtuels
écran

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 contiennent une intégration Matter ayant le même VID/PID ; que celle que vous avez utilisée pour configurer votre appareil virtuel. Voir guide de création de projet.

  • Vous devez disposer d'un Google Nest Hub compatible avec Litige

  • Vous devez disposer d'un téléphone Android fonctionnant sous Android 8.1 ou version ultérieure, avec GHA 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 l'appareil en service à l'aide de l'GHA, cliquez sur QRCode afin de afficher le code QR de l'appareil, puis suivez les instructions fournies dans l'article Associer un Matter appareil qui expliquer comment embarquer un appareil Matter à l'aide de la GHA Vous pouvez également mettre en service l'appareil à l'aide des Google Home Sample App for Matter

Consultez nos Matter Primaire pour découvrez 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 l'Assistant Google voix. 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 ; ou
  • Contrôlez l'appareil à l'aide du Sample App for Matter lors de la surveillance de l'état sur l'appareil virtuel,ou
  • Contrôlez l'état de l'appareil via MVD lui-même pendant surveiller les changements d'état dans GHA ou Assistant

Tester avec l'appareil

Pour tester avec Assistant, nous vous recommandons d'utiliser un simulateur d'énoncés 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 de l'appareil actuel.
  • Vendor ID (ID du fournisseur) : ID du fournisseur de l'appareil actuel.
  • 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 de communiquer via un réseau IP.
  • Code secret: code utilisé pour mettre l'appareil en service sur le réseau.
  • Configuration Folder (Dossier de configuration) : dossier stocké par l'appareil virtuel. configuration.
  • Commission Information(Informations sur la commission) : indique la ou les structures auxquelles l'appareil a rejoint l'association et ID du 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 s'affiche. le 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 met fin au Application MVD. Si vous avez lancé l'application à partir du terminal, vous pouvez ou 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 demandez une nouvelle fonctionnalité, adressez-vous à votre contact de l'assistance Google.

Cliquez sur le bouton d'aide dans la l'angle supérieur droit de la fenêtre vous permet d'accéder à cette page.

Signaler un bug

Si vous pensez avoir détecté un défaut sur le MVD, vous pouvez signalez un bug en cliquant sur Problème . dans l'angle supérieur droit de la fenêtre.

Envoyer des commentaires

Pour nous envoyer vos commentaires sur ce que vous aimez 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 depuis la page de commentaires Bouton dans la dans le coin supérieur droit de la fenêtre, ou en cliquant sur le bouton ci-dessous.

Envoyez-nous vos commentaires