Controlador virtual do dispositivo

Mantenha tudo organizado com as coleções Salve e categorize o conteúdo com base nas suas preferências.

SDK do dispositivo

O Virtual Device Controller é um app para computador que fornece uma interface gráfica do usuário para controlar e exibir os estados do Matter devices. The app provides a visual representation of your virtual device, as well as the controls for the Matter clusters supported by the device.

O app usa um cliente RPC para se comunicar com o servidor RPC do dispositivo virtual, enviando solicitações que refletem suas ações (alternar energia, escurecer, clarear) e pesquisar uma vez a cada segundo para recuperar o estado.

Dispositivos com suporte

Atualmente, o controlador de dispositivo virtual oferece suporte aos seguintes tipos de dispositivo Matter:

Tipo de dispositivo Matter Cluster(s) de aplicativo Tipo de ecossistema domiciliar
Sensor de contato Estado booleano Sensor
Luz escurecida Ativar/desativar
Controle de nível
Iluminação
Luz de cor estendida Ativar/desativar
Controle de nível
Controle de cores
Iluminação
Sensor de fluxo Medição de fluxo Sensor
Sensor de umidade Medição de umidade relativa Sensor
Sensor de iluminação Medição de iluminação Sensor
Sensor de ocupação Detecção de presença Sensor
Acender/desligar luz Ligado/Desligado Iluminação
Tomada Ativar/desativar
Controle de nível
Tomada
Sensor de pressão Medição de pressão Sensor
Alto-falante Ativar/desativar
Controle de nível
Apresentador
Switch Ligado/Desligado Switch
Sensor de temperatura Medição de temperatura Sensor

Configurar o controlador de dispositivo virtual

O controlador de dispositivo virtual é fornecido como parte de uma imagem do Docker pré-configurada disponível no Hub do Docker. Para fazer a instalação, execute:

user@host> docker pull us-docker.pkg.dev/nest-matter/docker-repo/virtual-device-image:latest

Essa operação pode levar alguns minutos para ser concluída.

Executar o controlador de dispositivo virtual

  1. Inicie o contêiner do Docker:

    user@host> xhost local:1000
    user@host> docker run -it --ipc=host --net=host -e DISPLAY --name matter-container us-docker.pkg.dev/nest-matter/docker-repo/virtual-device-image:latest
    

    Depois de iniciar o contêiner, você verá uma saída de diagnóstico seguida por uma mensagem confirmando que a configuração do contêiner está correta e, por fim, o prompt do shell do contêiner:

    Environment looks good, you are ready to go!
    
  2. Crie uma segunda instância da sessão do terminal:

    user@host> docker exec -it matter-container /bin/bash
    
  3. Para um dispositivo virtual Matter, quando o dispositivo estiver em execução, inicie o controlador de dispositivo virtual, transmitindo o argumento --s e a porta IP usada pelo dispositivo:

    $ electron main.js --s=localhost:33000
    

    Para um dispositivo físico, inicie o controlador de dispositivo virtual, transmitindo o argumento --d seguido pela porta serial do dispositivo:

    $ electron main.js --d=/dev/ttyUSB0
    

Se você iniciar o controlador sem fornecer argumentos, o padrão será a opção de soquete de rede usando a porta 33000 do localhost.

Quando o controlador conseguir se conectar ao dispositivo, uma tela mostrará o estado do dispositivo:

Interface gráfica do usuário do dispositivo virtual

Mostrar o código QR do dispositivo

O app Virtual Device Controller também pode ser usado para recuperar o código QR como parte do fluxo de comissionamento do dispositivo. Clique no ícone de código QR ao lado da imagem do dispositivo para exibir o código QR:

Controlador de dispositivos virtuais mostrando o código QR do dispositivo

Use este código QR para encomendar seu dispositivo.

Parar o controlador de dispositivo virtual

Para interromper o controlador de dispositivo virtual, pressione Control-Q com a tela do controlador em foco ou pressione Control-C na sessão do terminal em que você iniciou o app.

Feedback

Para enviar sua opinião ou seu feedback sobre como podemos melhorar sua experiência com o controlador de dispositivo virtual, preencha nosso formulário de feedback.

Envie seu feedback