Per un progetto demo con Kinect, la mia collega Dorangela Daniele ed io abbiamo iniziato a giocare un po' con il recente Windows Embedded Standard 8 CTP. Ho già avuto modo di provare che sia Kinect SDK 1.0 Beta 2 e Kinect SDK 1.0 RTM funzionano senza problemi in Windows 8 Consumer Preview, così eravamo abbastanza sicuri che funzionassero bene anche in WES8.
Usando IBW, Dora ha installato WES8 su due dispositivi embedded: un Asus Eee Top 1602 e un Advantech AIMB-212. Al momento, nella versione CTP, non ci sono i modelli "Application Compatibility" o "Kinect for Windows Embedded" con cui partire per creare una nuova immagine. In aggiunta, non è ancora in funzione il meccanismo di risoluzione delle dipendenze automatico. Per questo, ha dovuto creare l'immagine partendo da zero: per essere sicuri di includere tutti i componenti richiesti durante la fase di installazione, ha selezionato praticamente tutti i moduli, inclusi i pre-requisiti di Kinect SDK (.NET Framework 4.0, DirectX runtime), Internet Explorer e Metro UI.
Dopo che il setup è stato completato con successo e tutti i driver sono stati installati manualmente (i driver per Windows 8 non esistono ancora, così abbiamo usato quelli per Windows 7, che possono essere scaricati dai rispettivi siti dei produttori), ha installato i runtime Visual C++ 10 e ha provato a lanciare il setup di Kinect SDK 1.0 Beta 2. Purtroppo, mancava ancora qualcosa al sistema e il setup falliva…
Per capire che cosa mancava, Dora ha creato un nuovo answer file per WES7 in ICE, usando il modello "Kinect for Windows". Quindi, package per package, ha confrontato quelli inclusi con i moduli elencati nel file unattend.xml, preso dall'immagine WES8 installata.
Questi sono alcuni screenshot che mostrano TUTTI i moduli installati da IBW:
e queste erano le componenti mancanti:
Microsoft-Windows-Embedded-DeviceUX-Package31bf3856ad364e35x86~~6.2.8250.0.cab
Microsoft-Windows-Embedded-INF-ksfilter31bf3856ad364e35x86~~6.2.8250.0.cab
Microsoft-Windows-Embedded-INF-wdmaudio31bf3856ad364e35x86~~6.2.8250.0.cab
Microsoft-Windows-Embedded-INF-wdma-usb31bf3856ad364e35x86~~6.2.8250.0.cab
Microsoft-Windows-Embedded-INF-winusb31bf3856ad364e35x86~~6.2.8250.0.cab
Microsoft-Windows-Embedded-MediaPlayer-Package31bf3856ad364e35x86~~6.2.8250.0.cab
che sono state aggiunte all'immagine WES8 usando DISM.
Dopo averle aggiunte, lanciando nuovamente il setup del Kinect SDK, l'installazione è avvenuta con successo.
Abbiamo avuto alcuni problemi nell'abilitare Kinect sul dispositivo Advantech, probabilmente a causa dei driver della scheda grafica integrata. Questi, invece, sono gli applicativi di esempio di Kinect in funzione in WES8 sull'Asus Eee Top:
Le prestazioni di Kinect non sono proprio ottimali, a causa dell'hardware utilizzato, tuttavia Windows Embedded Standard 8 e la sua interfaccia Metro sono veramente veloci e fluidi!
Se avete domande/suggerimenti o se avete fatto esperimenti con WES8, condividete! E tornate nelle prossime settimane per aggiornamenti e altri progetti con la prossima versione di Windows Embedded Standard.