Matter ; APIs da página inicial
Os dispositivos virtuais Matter são úteis para desenvolver e testar soluções Matter. Eles podem ser ativados usando o Google Home app (GHA) e controlados com GHA e Google Assistant, assim como os dispositivos físicos Matter.
Para desenvolvedores de apps e outras pessoas que precisam testar ou emular um dispositivo virtual Matter, mas não têm recursos para criar um dispositivo físico ou virtual Matter, o Google oferece o Matter Virtual Device (MVD). O MVD é uma ferramenta independente e leve para computadores Linux ou macOS que simula diferentes tipos de dispositivos virtuais Matter e oferece uma interface gráfica do usuário para controlar e mostrar os estados do dispositivo virtual Matter.
Ao contrário de um dispositivo Matter físico, o MVD não depende do Bluetooth® de baixa energia (BLE) ou do Thread® para participar de uma estrutura Matter. Em vez disso, ele usa a conexão de rede Wi-Fi da máquina host Linux ou macOS para o provisionamento.
Em comparação com outras ferramentas
OMVD difere doVirtual Device Controller (VDC) pois é uma solução autossuficiente, que combina um dispositivo virtual com uma interface de usuário para controlá-lo. Em contraste, o VDC é usado para controlar um dispositivo virtual Matter separado.
O MVD contém vários dispositivos virtuais pré-construídos diferentes e inclui uma interface de usuário integrada para executá-los e controlá-los.
Dispositivos compatíveis
O MVD suporta os seguintes tipos de dispositivos Matter:
| Matter Tipo de dispositivo | Cluster(s) de Aplicação | Tipo de ecossistema doméstico |
|---|---|---|
| Purificador de ar |
0x0202 0x0006 0x0071 |
Purificador de ar |
| Sensor de qualidade do ar |
0x005b 0x0402 0x0405 0x040c 0x040d 0x042a 0x042d 0x042e |
Sensor |
| Player de vídeo básico |
0x0006 0x0506 0x0509 |
Televisão |
| Luz de temperatura de cor |
0x0300 0x0008 0x0006 |
Luz |
| Sensor de contato |
0x0045 |
Sensor |
| Luz dimerizável |
0x0008 0x0006 |
Luz |
| Unidade de tomada com intensidade regulável |
0x0006 0x0008 |
Saída |
| Lava-louças |
0x0006 0x0059 0x0056 0x0060 |
Lava-louças |
| Trava da porta |
0x0101 |
Bloqueio |
| Luz colorida estendida |
0x0300 0x0008 0x0006 |
Light |
| Ventilador |
0x0202 0x0006 |
Fan |
| Sensor de fluxo |
0x0404 |
Sensor |
| Switch genérico |
0x003b |
Switch |
| Sensor de umidade |
0x0405 |
Sensor |
| Máquina de lavar roupas |
0x0006 0x0051 0x0053 0x0056 0x0060 |
Lavadora |
| Sensor de luz |
0x0400 |
Sensor |
| Sensor de presença |
0x0406 |
Sensor |
| Luz de ativação/desativação |
0x0008 0x0006 |
Light |
| Interruptor de luz liga/desliga |
0x0006 |
Switch |
| Unidade de plug-in liga/desliga |
0x0008 0x0006 |
Outlet |
| Sensor de pressão |
0x0403 |
Sensor |
| Bomba |
0x0006 0x0200 0x0402 0x0403 0x0404 |
Pump |
| Robô aspirador |
0x0054 0x0055 0x0061 |
Aspirador de pó |
| Ar-condicionado de ambiente |
0x0006 0x0201 0x0202 |
Ar-condicionado |
| Alarme de fumaça/monóxido de carbono |
0x005C |
Detector de monóxido de carbono
Detector de fumaça |
| Sensor de temperatura |
0x0402 |
Sensor |
| Termostato |
0x0201 |
Termostato |
| Cortina |
0x0102 |
Persianas |
Instalar MVD
O MVD é executado em máquinas com processador x86 de 64 bits que usam Debian
(13 Trixie ou mais recente), Ubuntu (20.04 Noble Numbat ou mais recente) ou macOS.
Linux
Faça o download do pacote Debian (.deb) do MVD
Faça o download do arquivo de assinatura ASCII blindada (.asc)
Em seguida, execute dpkg para instalar o pacote Debian (.deb) MVD:
sudo dpkg -i mvd_1.7.0_amd64.debmacOS
Baixar o arquivo dmg do MVD (macOS x86)
Baixe o arquivo dmg do MVD (ARM64 M1)
Em seguida, clique duas vezes no arquivo dmg para abrir a janela de instalação.
Para concluir a instalação, selecione e arraste o ícone mvd para a pasta Applications:
Verificar o uso da porta
O módulo de controlador em MVD usa a porta TCP 33000 para fazer chamadas de RPC ao dispositivo virtual. Portanto, se essa porta já estiver em uso por outro processo no seu computador, libere-a.
Para verificar se algum processo está usando a porta 33000:
Linux
sudo fuser -v 33000/tcpmacOS
lsof -i:33000É possível encerrar qualquer processo usando a porta TCP 33000 com um único comando:
Linux
sudo fuser -k 33000/tcpmacOS
lsof -ti:33000 | xargs killExecutar MVD
Linux
No Linux, execute MVD na pasta de aplicativos ou no terminal:
mvdmacOS
No macOS, use o Launchpad para abrir MVD ou execute MVD no terminal:
cd /Applicationsopen mvd.app
Configurar o dispositivo
A tela principal aparece ao iniciar e permite configurar um dispositivo virtual:
- Tipo de dispositivo: selecione o tipo de dispositivo (por exemplo, luz, interruptor, sensor e assim por diante).
- Nome do dispositivo: dê um nome fácil de usar para o dispositivo.
- Discriminador: um número de 12 bits usado para discernir entre vários anúncios de dispositivos
comissionáveis. (Padrão:
3840). - Matter Porta: uma porta para Matter comissionamento e comunicação por redes IP. O Matter usa a porta TCP/UDP 5540 por padrão, mas é possível configurar o dispositivo virtual para usar uma porta diferente, desde que nenhum outro serviço esteja usando.
- ID do fornecedor: apenas o ID do fornecedor de teste
0xFFF1é aceito. - ID do produto: apenas IDs de produtos de teste
0x8000a0x801Fsão aceitos.
Configurar seu firewall
Linux
Se você tiver um firewall em execução no computador, desative-o ou permita conexões TCP/UDP de entrada na porta Matter.
Para conferir as regras de firewall netfilter ativas atuais, execute:
sudo iptables -L -nSe você estiver usando o `ufw`, ele poderá ser desativado com:
sudo ufw disableE pode ser reativado com:
sudo ufw enablemacOS
Para configurar ou desativar o firewall no macOS:
- Vá ao menu Apple e escolha Ajustes do sistema.
- Clique em Rede na lista da barra lateral.
- Clique em Firewall.
- Mova a chave do Firewall para a posição Desativado.
Executar o dispositivo
Depois que o dispositivo estiver configurado, clique em Criar dispositivo. Quando o dispositivo for criado, a tela Controlador vai aparecer. Dependendo do tipo de dispositivo selecionado, você poderá ver um ou mais dos seguintes controles:
- Ligado/Desligado: Comum à maioria dos dispositivos.
- Nível: Por exemplo, uma luz pode ter um controle deslizante de nível para ajustar o brilho.
- Cor: Por exemplo, uma luz colorida poderia ter esse controle.
- Ocupação: O sensor de ocupação oferece este controle para simular o estado ocupado ou desocupado.
Todos os dispositivos virtuais possuem os seguintes controles:
- QRCode: Mostra o código QR usado para o comissionamento.
- Reboot: Reinicia o dispositivo virtual. O dispositivo é desconectado da rede brevemente.
- Reset: Restaura as configurações de fábrica do dispositivo atual e apaga todos os estados, incluindo o comissionamento, o estado dos controles atuais e assim por diante.
- Excluir: Destrói o dispositivo e retorna à tela Criar dispositivo.
Características específicas do fabricante
Características específicas do fabricante (MS) são suportadas pelas APIs Home para Android e fornecem funcionalidades adicionais além das características padrão em Matter. Para testar um dispositivo com um recurso MS, MVD permite que você interaja com os recursos na seção chamada Clusters personalizados (veja a imagem acima).
Configure seu dispositivo
O dispositivo pode ser colocado em funcionamento assim que for criado.
Existem alguns pré-requisitos para colocar o dispositivo em funcionamento:
Você deve ter um projeto em Google Home Developer Console. Este projeto deve conter uma integração Matter que tenha a mesma combinação VID/PID que você usou na configuração do seu dispositivo virtual. Consulte o guia de criação de projetos para obter detalhes.
Você precisa ter um Google Nest Hub que seja compatível com o Matter
Você precisa ter um telefone Android com Android 8.1 ou posterior, com GHA instalado.
O smartphone Android precisa estar conectado à mesma rede Wi-Fi que o hub.
O computador host deve estar conectado à rede Wi-Fi.
Para comissionar o dispositivo usando o GHA, clique em QRCode para exibir o código QR do dispositivo e, em seguida, siga as instruções em Emparelhar um dispositivo Matter que explicam como integrar um dispositivo Matter usando o GHA. Você também pode ativar o dispositivo usando oGoogle Home Sample App for Matter.
Consulte nosso Matter Primer para aprender como funciona o Matter Commissioning.
Controlar o dispositivo
Depois de comissionar um dispositivo virtual, você pode controlá-lo usando o app Google Home ou o Google Assistente por voz. Você pode fazer o seguinte:
- Controle o dispositivo usando GHA ou Assistant enquanto monitora as mudanças de estado no dispositivo virtual ou
- Controle o dispositivo usando o Sample App for Matter enquanto monitora as mudanças de estado no dispositivo virtual ou
- Controle o estado do dispositivo usando o próprio MVD enquanto monitora as mudanças de estado em GHA ou Assistant.
Testar com o dispositivo
Para testar com Assistant, recomendamos usar um simulador de expressão, como a Extensão do Google Home para VS Code ou o plug-in do Google Home para Android Studio.
Ver detalhes do dispositivo
A tela Detalhes do dispositivo mostra informações detalhadas sobre o dispositivo:
- Nome:o nome amigável dado ao dispositivo.
- Tipo de dispositivo: o tipo de dispositivo selecionado.
- Discriminador: o discriminador do dispositivo atual.
- ID do fornecedor: o ID do fornecedor do dispositivo atual.
- ID do produto: o ID do produto do dispositivo atual.
- Porta RPC: a porta RPC que o dispositivo usa para se comunicar com os controladores (GUI).
- Porta Matter: a porta usada pelo dispositivo atual para se comunicar pela rede IP.
- Código de acesso: O PIN usado para ativar o dispositivo através da rede.
- Pasta de configuração: a pasta em que o dispositivo virtual armazena a configuração.
- Informações de comissionamento: mostra os fabrics a que o dispositivo se conectou e o ID do nó do dispositivo no fabric.
Acessar os registros de dispositivos
Se você iniciou o MVD no terminal, a saída do registro vai aparecer
em stdout.
Também é possível acessar os registros de dispositivos na guia Registros de dispositivos.
Parar o dispositivo
Para interromper e destruir o dispositivo, clique em Excluir.
Encerrar o app
Fechar a janela de controle destrói o dispositivo e encerra o aplicativo MVD. Se você iniciou o app pelo terminal, também pode encerrá-lo digitando Ctrl-C no terminal.
Ajuda
Para obter ajuda com MVD, para relatar um bug ou para solicitar um novo recurso, entre em contato com seu representante de suporte do Google.
Clicar no botão de ajuda no canto superior direito da janela leva você a esta página.
Informar um bug
Se você acha que encontrou um defeito no MVD, você pode registrar um bug clicando no botão Problema no canto superior direito da janela.
Enviar feedback
Para enviar suas opiniões sobre o que você gosta em MVD ou como podemos melhorar sua experiência com a ferramenta, preencha nosso Formulário de Feedback.
O formulário pode ser iniciado pelo botão de feedback no canto superior direito da janela, ou clicando no botão abaixo.
Você também pode fornecer feedback com a pesquisa que aparece na parte inferior quando você está usando MVD.