Ambiente di sviluppo Matter Virtual Device Development

SDK del dispositivo

Matter Virtual Device Development Environment (MVD-DE) è un container Docker in cui puoi creare il tuo Matter Virtual Device (MVD) e utilizzare l'app desktop Virtual Device Controller (VDC) per fornire una Graphic User Interface per controllare e visualizzare gli stati dei tuoi dispositivi Matter virtuali. L'app fornisce una rappresentazione visiva del tuo dispositivo virtuale, nonché i controlli per i cluster Matter supportati dal dispositivo.

L'app utilizza un client RPC per comunicare con il server RPC del dispositivo virtuale, inviando richieste che riflettono le tue azioni (attivazione/disattivazione, attenuazione, luminosità) e esecuzione di sondaggi una volta al secondo per recuperare lo stato.

Dispositivi supportati

Attualmente, l'MVD-DE supporta i seguenti Matter tipi di dispositivi:

Matter tipo di dispositivo Cluster di applicazioni Tipo di ecosistema domestico
Sensore a contatto Stato booleano Sensore
Luce dimmerabile Controllo a livello
On/Off
Luce
Colore chiaro esteso On/Off
Controllo livello
Controllo colore
Luce
Sensore di flusso Misurazione del flusso Sensore
Sensore di umidità Misurazione umidità relativa Sensore
Sensore di illuminazione Misurazione dell'illuminazione Sensore
Sensore di presenza Rilevamento della presenza di persone Sensore
Luce Acceso/Spento ON/OFF Luce
Presa elettrica Controllo a livello
On/Off
Presa
Sensore di pressione Misurazione della pressione Sensore
Altoparlante Controllo a livello
On/Off
Altoparlante
Cambia ON/OFF Cambia
Sensore di temperatura Misurazione della temperatura Sensore

Configura l'ambiente di sviluppo di dispositivi virtuali Matter

MVD-DE è un'immagine Docker preconfigurata disponibile nell'hub Docker. Per installarlo, esegui:

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

Questa operazione potrebbe richiedere alcuni minuti.

Esegui l'ambiente di sviluppo dispositivi virtuali Matter

  1. Avvia il container 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
    

    Dopo aver avviato il container, dovresti vedere un output di diagnostica seguito da un messaggio che conferma che la configurazione del container è corretta e, infine, la richiesta della shell del container:

    Environment looks good, you are ready to go!
    
  2. Crea una seconda istanza di sessione del terminale:

    user@host> docker exec -it matter-container /bin/bash
    
  3. Per un dispositivo Matter virtuale, quando il dispositivo è in esecuzione, avvia VDC, passando l'argomento --s e la porta IP utilizzata dal dispositivo:

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

    Per un dispositivo fisico, avvia VDC, passando l'argomento --d seguito dalla porta seriale del dispositivo:

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

Se avvii VDC senza fornire argomenti, verrà utilizzata per impostazione predefinita l'opzione socket di rete utilizzando la porta localhost 33000.

Quando VDC riesce a connettersi al tuo dispositivo, verrà visualizzata una schermata che mostra lo stato del dispositivo:

Interfaccia utente grafica del dispositivo virtuale

Mostrare il codice QR del dispositivo

VDC può essere utilizzato anche per recuperare il codice QR nell'ambito del flusso di messa in servizio del dispositivo. Fai clic sull'icona del codice QR accanto all'immagine del dispositivo per visualizzare il codice QR per questo dispositivo:

Controller del dispositivo virtuale che mostra il codice QR del dispositivo

Puoi utilizzare questo codice QR per la messa in servizio del dispositivo.

Arresta l'ambiente di sviluppo di dispositivi virtuali Matter

Per interrompere MVD-DE, premi Ctrl + Q con lo schermo di VDC attivo oppure premi Ctrl + C nella sessione del terminale in cui hai avviato l'app.

Feedback

Per inviare le tue opinioni o il tuo feedback su come possiamo migliorare la tua esperienza con MVD-DE, compila il nostro modulo di feedback.

Inviaci il tuo feedback