Ambiente di sviluppo Matter Virtual Device Development

SDK 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 dispositivi Matter virtuali. L'app fornisce una rappresentazione visiva del 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 azioni (potere di commutazione, dimmerazione, luminosità) e sondaggi una volta al secondo per recuperare lo stato.

Dispositivi supportati

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

Matter tipo di dispositivo Cluster applicazioni Tipo di ecosistema domestico
Sensore di contatto Stato booleano Sensore
Luce dimmerabile On/Off
Controllo del livello
Luce
Chiaro a colori esteso On/Off
Controllo del livello
Controllo del colore
Luce
Sensore di flusso Misurazione del flusso Sensore
Sensore di umidità Misurazione dell'umidità relativa Sensore
Sensore di luminosità Misurazione della luminosità Sensore
Sensore di presenza Monitoraggio dell'occupazione Sensore
Luce accesa/spenta ON/OFF Luce
Presa elettrica On/Off
Controllo del livello
Outlet
Sensore di pressione Misurazione della pressione Sensore
Altoparlante On/Off
Controllo del livello
Vivavoce
Cambia ON/OFF Cambia
Sensore di temperatura Misurazione della temperatura Sensore

Configurare l'ambiente di sviluppo dei dispositivi virtuali Matter

MVD-DE è un'immagine Docker preconfigurata disponibile sul Docker Hub. Per installarla, esegui questo comando:

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 dei 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, dal prompt della shell del container:

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

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

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

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

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

Se avvii VDC senza fornire argomenti, il valore predefinito sarà l'opzione del socket di rete utilizzando la porta localhost 33000.

Quando VDC sarà in grado di connettersi al dispositivo, verrà visualizzata una schermata che mostra lo stato del dispositivo:

Interfaccia utente grafica del dispositivo virtuale

Mostra il codice QR del dispositivo

VDC può essere utilizzato anche per recuperare il codice QR nell'ambito della procedura 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 di dispositivi virtuali che mostra il codice QR del dispositivo

Puoi usare questo codice QR per mettere in servizio il dispositivo.

Interrompi l'ambiente di sviluppo dei dispositivi virtuali Matter

Per arrestare MVD-DE, premi Ctrl + Q con lo schermo del dispositivo VDC in primo piano oppure premi Ctrl + C nella sessione del terminale in cui hai avviato l'app.

Feedback

Per inviare la tua opinione o fornire un feedback su come migliorare la tua esperienza con MVD-DE, compila il modulo di feedback.

Inviaci il tuo feedback