Compartir a través de


USB NCM en el sistema operativo de fábrica

Nota

finddevice ahora está en github.

USB NCM (modelo de control de red) es una característica predeterminada del sistema operativo factory. Proporciona un dispositivo de sistema operativo factory conectado a un equipo host a través de USB una dirección IP local de vínculo (169.254.0.0/16) en el equipo host. Si varios dispositivos del sistema operativo Factory están conectados al mismo equipo host, se les proporcionan direcciones IP locales de vínculo únicas. Esto permite que un equipo host se comunique simultáneamente con cualquier número de dispositivos del sistema operativo de fábrica conectados USB.

Requisitos importantes para la compatibilidad con USB NCM

  • El equipo host también debe admitir USB NCM. Actualización de mayo de 2019 de Windows 10 (compilación 18362) y compatibilidad posterior con hosts NCM USB sin necesidad de ninguna característica o controlador opcional de Windows.
  • La característica WCOS_DEVICEPORTAL se establece en la imagen del sistema operativo de fábrica para que el código de ejemplo de detección de dispositivos NCM USB funcione.

Comunicación con el dispositivo del sistema operativo de fábrica mediante USB NCM

Una vez establecida la conexión USB NCM, puede comunicarse con el dispositivo del sistema operativo de fábrica mediante su dirección IP localhost desde el equipo host como si el dispositivo del sistema operativo de fábrica estuviera conectado a la red local del equipo host a través de Ethernet. Por ejemplo, desde el equipo host podría:

  • Use el open-device <NCM link-local IP Address> cmdlet de TShell (connect-using-tshell.md#open-device-connecting-tshell-to-target-device) para conectarse al dispositivo de destino con TShell.
  • Conexión al dispositivo de destino a través de SSH
  • Conexión al dispositivo de destino mediante la aplicación Factory Orchestrator o la API de cliente

WSK incluye un archivo ejecutable de .NET Core 3.1 de ejemplo (finddevice.exe) y código fuente que puede ejecutar en el equipo host para detectar automáticamente las direcciones IP locales de vínculo de cualquier dispositivo del sistema operativo de fábrica conectado USB. Ejecute finddevice.exe -? para ver la lista completa de argumentos admitidos por el programa.

Combinar el finddevice.exe código fuente o ejecutable con un script de PowerShell mediante cmdlets de TShell o un programa de .NET Core que realiza llamadas API de cliente de Factory Orchestrator permite detectar mediante programación dispositivos del sistema operativo de fábrica conectados USB, establecer una conexión con los dispositivos y, a continuación, usar esas conexiones para interactuar mediante programación con los dispositivos conectados.

El archivo ejecutable y el código fuente creados previamente se encuentran en: WSK\Program Files\Windows Kits\10\WSKSamples\UsbNcmFindDevice

Solucionar los problemas de las conexiones

Si ejecuta finddevice.exe y no encuentra ningún dispositivo conectado, compruebe lo siguiente:

  • Asegúrese de que ha cumplido los requisitos enumerados anteriormente.
  • Compruebe que el dispositivo aparece en Administrador de dispositivos en el equipo host.
    • El dispositivo debe aparecer en Adaptadores de red
    • El nombre del dispositivo será "Dispositivo host UsbNcm"
  • El firewall del equipo host puede estar bloqueando la comunicación entre el host y el dispositivo:
    • Creación de una regla para permitir la comunicación desde finddevice.exe
    • Habilitación de la regla para los tipos de red de dominio, privado y público