Notas de la versión de la compilación 17763.253

Número de compilación 17763.253. Febrero de 2019.

© 2019 Microsoft Corporation. Todos los derechos reservados.

Importante

Si usas la actualización de octubre de 2018, usa esta versión en su lugar. Encontramos que hay problemas conocidos que afectan a los usuarios de la actualización de octubre de 2018.

En este documento se proporciona la información más reciente y de otro tipo que complementa la documentación incluida con Windows 10 IoT Core.

Gracias por descargar Windows 10 IoT Core. Windows 10 IoT Core es la versión de Windows 10 destinada al desarrollo de dispositivos de uso insertado o dedicado, y es también la elección de la comunidad de fabricantes. Los paquetes de esta versión contienen las herramientas y el contenido necesarios para instalar Windows 10 IoT Core en la plataforma Minnowboard Max basada en procesadores Intel Atom, Raspberry Pi 2 o 3 basada en Broadcom 2836 o 2837, y DragonBoard 410c basada en procesadores de la serie Snapdragon 400 de Qualcomm.

Declaración de privacidad

La declaración de privacidad para esta versión del sistema operativo Windows se puede consultar aquí.

Pegue el vínculo de redireccionamiento en la ventana del explorador para revisar los términos y condiciones vinculados.

Novedades de esta compilación

  • Correcciones de errores generales

Información adicional

  • La versión 2120.0.0.0 de BSP es la usada para la imagen en DragonBoard.

Problemas conocidos de esta compilación

  • La implementación del controlador F5 de Visual Studio no funciona en IoT Core.

  • Los dispositivos que se han instalado a través de NOOBS no pueden ejecutar la herramienta bcdedit para habilitar al depurador de kernel. Esto se puede lograr con la siguiente solución alternativa:

    • Montar la tarjeta SD en su PC
    • Busque el número de partición de la unidad EFIESP con diskpart o Disk Management (supongamos que es "M:")
    • Ejecute el comando "bcdedit /store M:\EFI\Microsoft\boot\bcd /set {default} debug yes"
    • Desmonte la tarjeta SD.
    • Ahora debería poder conectar el depurador como de costumbre.
  • En ocasiones, se interrumpirá la PSSession al enviar comandos a dispositivos IoT.

  • RPi3 no empareja BT + BTLE con el Bluetooth incorporado.

  • No se puede conectar a Internet a través de la conexión Wi-Fi con SoftAp de Up2.

  • La configuración de control de brillo no se conserva en IoT durante la cancelación.

Problemas generales conocidos de IoT Core y soluciones

Para Raspberry Pi

Resolución de pantalla de Raspberry Pi si se desconecta el monitor

Puede que Raspberry Pi no mantenga la resolución de pantalla si se desconecta el monitor. El EDID del monitor se usa para establecer la resolución del sistema cuando hay uno conectado. Cuando se desconecta, el firmware de Raspberry Pi establece de forma predeterminada lo que está en config.txt en la raíz de la tarjeta SD.

Rendimiento de vídeo de Raspberry Pi

El rendimiento de la reproducción de vídeo en la plataforma de Raspberry Pi no está optimizado.  Es posible que el rendimiento que muestren los elementos animados del usuario, incluidos los menús desplegables basados en XAML, no sea el óptimo.

Compatibilidad de Raspberry Pi con la cámara

La compatibilidad con los dispositivos periféricos de cámara es limitada. El dispositivo PiCam conectado directamente al bus de la cámara incorporada no es compatible, ya que las limitaciones de la plataforma para admitir cámaras web USB modernas D3D generan flujos de datos muy exigentes en la controladora de host USB.  Incluso cuando se usa con cámaras web con valores de resolución bajos, se requerirá un ajuste preciso adicional y una lógica de control especializada del USB.

Compatibilidad de Raspberry Pi3 con Bluetooth

El controlador Bluetooth integrado de Raspberry Pi3 solo admite dispositivos con un ancho de banda bajo.

Uso y acceso de los puertos serie en RPi2

Raspberry Pi 2 es compatible con el transporte en serie para la comunicación a través de UART PL011.  Esto se establece de manera predeterminada en escenarios de depuración del kernel.  Un controlador de dispositivo o de aplicación puede usar UART PL011 para enviar y recibir datos con el controlador de dispositivo PL011 si se desactiva el depurador mediante el comando siguiente:

bcedit /set debug off 

Se han deshabilitado los puntos de interrupción de datos en Raspberry Pi2

Por el momento no hay ninguna solución al respecto.

Deshabilitación de los adaptadores incorporados para Raspberry Pi3

Raspberry Pi 3 tiene Bluetooth incorporado, que debe estar deshabilitado para usar otra llave. Para deshabilitar el Bluetooth incorporado, abra una sesión de telnet/ssh y ejecute:

reg add hklm\system\controlset001\services\BtwSerialH5Bus /v Start /t REG_DWORD /d 4 

También puede deshabilitar la red Wi-Fi con el siguiente comando:

reg add hklm\system\controlset001\services\bcmsdh43xx /v Start /t REG_DWORD /d 4 

Para DragonBoard

Apagado de DragonBoard 410c

En DragonBoard, la placa no se apagará con un comando de apagado. El sistema se reiniciará. Para apagar la placa, desconecte la alimentación.

DragonBoard y windbg

Los controladores GPIO/I2C/SPI/UART se deshabilitarán cuando se conecta a DragonBoard con windbg.

Conector de auriculares y micrófono de DragonBoard

El BSP de Dragonboard tiene controladores para el conector de auriculares y de micrófono, pero no tiene estos conectores en la placa.

El SPI de DragonBoard se ejecuta a 4,8 Mhz

El SPI de DragonBoard omitirá la velocidad solicitada y siempre se ejecutará a 4,8 Mhz.

Modo de espera conectado de DragonBoard

El modo de espera conectado no está habilitado en Qualcomm DragonBoard de manera predeterminada. Para habilitar el modo en espera conectado en DragonBoard, la siguiente clave del Registro debe establecerse en "1":

HKLM\System\Controlset001\Control\Power\CsEnabled=DWORD:1 

Nota:

No todas las plataformas admiten el modo de espera conectado. Esto podría no funcionar en todas las plataformas.

Para MinnowBoard

Arranque de MinnowBoard Max y actualización de firmware

MinnowBoard Max no arrancará a menos que la versión del firmware sea .092 o posterior. La versión mínima recomendada del firmware es "MinnowBoard Max 0.92 de 32 bits". Las actualizaciones de firmware pueden descargarse desde aquí.

Compatibilidad con los periféricos de MinnowBoard

La imagen de Windows 10 IoT Core incluida en esta lista es compatible con los periféricos que se exponen en la placa MinnowBoard Max. Posteriormente, Intel® proporcionará soporte técnico del conjunto completo de características de los procesadores Baytrail, incluidos los procesadores Intel Celeron™ J1900/N2930/N2807 e Intel Atom™ E38XX.

Para todas las plataformas

Acceso a documentos públicos

Se ha realizado un cambio en las API subyacentes para el acceso a archivos, que requiere que una aplicación especifique el acceso a broadFileSystem con el fin de acceder al directorio de documentos públicos.

El fragmento de archivo .XML debe tener este aspecto:

<Package
  xmlns="http://schemas.microsoft.com/appx/manifest/foundation/windows10"
  xmlns:mp="http://schemas.microsoft.com/appx/2014/phone/manifest"
  xmlns:uap="http://schemas.microsoft.com/appx/manifest/uap/windows10"
  xmlns:rescap="http://schemas.microsoft.com/appx/manifest/foundation/windows10/restrictedcapabilities"
  IgnorableNamespaces="uap mp rescap">
--snip--
  <Capabilities>
    <uap:Capability Name="removableStorage" />
    <uap:Capability Name="picturesLibrary" />
    <rescap:Capability Name="broadFileSystemAccess" />
 </Capabilities>

</Package>

El puntero del mouse desaparece durante la depuración

En algunos casos, el puntero del mouse no es visible después de implementar o depurar aplicaciones con Visual Studio. El puntero del mouse debe reaparecer si cambia el foco con el teclado (Tabulador).

Aplicaciones de servidor con SoftAP

Cuando se usa SoftAP, los clientes no podrán acceder al contenido que exponen las aplicaciones UAP.
Para exponer las aplicaciones UAP a través de SoftAP, deben realizarse los cambios siguientes desde la consola en el dispositivo:

reg add hklm\system\currentcontrolset\services\mpssvc\parameters /v IoTInboundLoopbackPolicy /t REG_DWORD /d 1 
checknetisolation loopbackexempt -a -n=<AppID for SoftAP App> 
checknetisolation loopbackexempt -a -n=<AppID for Additional App>  

Por ejemplo:

checknetisolation loopbackexempt -a -n=IoTOnboardingTask-uwp_1w720vyc4ccym

Reboot

Conflicto del controlador de sensor en FFU precompiladas

Hay un conflicto del controlador de sensor en las FFU proporcionadas. El marco del sensor remoto instala controladores para la brújula, el magnetómetro, el acelerómetro y el giroscopio. Las API de UWP que proporcionan acceso a estos controladores desde una aplicación suponen que solo hay uno instalado. Si vas a desarrollar un controlador para un dispositivo adjuntado físicamente, el controlador remoto de las FFU que proporciona Microsoft entrará en conflicto.

Solución: el controlador en conflicto se puede quitar mediante la conexión al dispositivo a través de SSH o PowerShell y mediante la herramienta devcon.exe para quitar el controlador del sensor remoto escribiendo "devcon.exe quitar @"ROOT\REMOTESENSORDRIVER*". El controlador de sensor remoto no afecta a las FFU que crea el fabricante de equipo original.

Nombre de usuario y contraseña predeterminados del administrador

El nombre de usuario y la contraseña predeterminados del administrador están codificados de forma rígida en la imagen de Windows 10 IoT Core. Esto supone un riesgo de seguridad para el dispositivo y no debe exponerse a una conexión a Internet abierta hasta que se haya cambiado la contraseña.

Controles de volumen

Los controles de volumen del hardware para micrófonos y altavoces USB, que dependen del sistema de Windows para cambiar el volumen del sistema no son compatibles actualmente con Windows 10 IoT Core.

Teclados USB

Es posible que algún teclado y mouse USB no funcionen en IoT Core. Use otro teclado o mouse. Encontrarás una lista de dispositivos periféricos validados en esta documentación.

Orientación de la pantalla

El establecimiento de la orientación en "Vertical" puede que no se respete en una aplicación universal.

Adaptadores de referencia con plantillas de AllJoyn

El intento de agregar referencias a proyectos de adaptador AllJoyn puede producir errores al usar versiones específicas del SDK. Para resolver estos errores, cambie la plataforma de destino de Visual Studio para que coincida con la versión actual del SDK y, luego, vuelva a cargar el proyecto.

Limitaciones de Wi-Fi Direct en IoTCore

  • El dispositivo IoTCore debe ser el dispositivo que se conecta. No funcionará como dispositivo de publicidad con otro dispositivo que inicie la conexión.
  • Se debe usar el emparejamiento avanzado. La aplicación de ejemplo muestra cómo usar las API de emparejamiento avanzadas para emparejar los dispositivos antes de la conexión.
  • No todos los adaptadores inalámbricos son compatibles con Wi-Fi Direct. Hemos probado y validado el funcionamiento del "adaptador de red Realtek RTL8188EU Wireless Lan 802.11n USB 2.0", pero puede que otros adaptadores no sean compatibles.

Modo de unidad no predeterminado

En Raspberry Pi y DragonBoard, el cambio de un modo de unidad no predeterminado a otro puede producir un problema en la patilla GPIO. SOLUCIÓN ALTERNATIVA: establezca el modo de unidad una vez al principio de la aplicación.

Aplicación en ejecución

La aplicación de inicio predeterminada podría entrar en conflicto consigo misma cuando también se implementa desde Visual Studio. SOLUCIÓN ALTERNATIVA: cambie la aplicación de inicio predeterminada a una aplicación distinta de la que desea implementar.

Puede que se bloquee la línea de código BackgroundMediaPlayer.MessageReceivedFromForeground

La siguiente línea de código puede bloquearse: "BackgroundMediaPlayer.MessageReceivedFromForeground += OnMessageReceivedFromForeground;". Para evitar el bloqueo, agregue este código para que se ejecute primero: "var player = BackgroundMediaPlayer.Current;".

Compatibilidad con la autenticación de Azure Active Directory

La biblioteca de autenticación de Azure Active Directory no funciona en Windows 10 IoT Core.

Administración del shell de los bloqueos de la aplicación

La infraestructura del shell de IoT Core supervisa las aplicaciones de tipo APPX que se ejecutan en el dispositivo en busca de bloqueos y, cuando estos se producen, reinicia esas aplicaciones. Si los bloqueos continúan en las aplicaciones reiniciadas, el shell empleará un __failfast, es decir, un proceso crítico del sistema que provoca una comprobación de errores y un reinicio en un intento de recuperación. Se usan una lógica y un control comparables para las tareas en segundo plano y las aplicaciones de primer plano en una configuración con encabezado. A continuación, se muestra la lógica de reintento y el manejo de bloqueos:

Software\Microsoft\Windows NT\CurrentVersion\Winlogon\IoTShellExtension\CBTConfig  (or ForegroundAppConfig for headed) 
Qword:"FailureResetIntervalMs" – length of time app has to run successfully to reset failures seen to 0. – default is 0x00000000000493E0 == 5 minutes 
Qword:"BaseRetryDelayMs"  -- wait time coefficient.  Default is 0xa. 
Dword:"MaxFailureCount". Default is 10 
DWord:"FallbackExponentNumerator", default is 31. 
Dword:"FallbackExponentDenominator", default is 20 
Fallback_exponent = FallbackExponentNumerator / FallbackExponentDenominator; // default is 1.55 

Cuando se detecta un bloqueo de la aplicación:

if time_since_last_crash > failureresetinterval then crashes_seen = 1 

else ++crashes_seen; 

if crashes_seen > MaxFailureCount then __failfast; 

else  

delay = (dword) ((float)BaseRetryDelayMs * (crashes_seen ** Fallback_exponent)) 

Espere el retraso y reinicie la aplicación.

Sincronización de la hora

Si se producen errores en la sincronización de la hora o se agota el tiempo de espera, puede deberse a un servidor horario lejano o inaccesible. Se puede hacer lo siguiente para agregar servidores de hora locales o adicionales.

  1. Desde una línea de comandos en el dispositivo (p. ej., SSH, PowerShell) w32tm /config /syncfromflags:manual /manualpeerlist:"0.windows.time.com 1.pool.ntp.org 2.something else, ..."

  2. También puedes realizar estas adiciones en el Registro mediante un script de arranque o un paquete de configuración de tiempo de ejecución personalizado, incluido como parte del proceso de creación de imagen si es necesario. Para obtener información, consulte:

Inicio del servidor FTP

El servidor FTP ya no se ejecuta de manera predeterminada al inicio.

Para ejecutar una vez: inicie sesión con SSH\PS y ejecute este comando para iniciar FTP:

start ftpd.exe 

Para ejecutarse en cada arranque, los usuarios deben crear una tarea del programador: Iniciar sesión con SSH\PS y crear una tarea del programador:

schtasks /create /tn "IoTFTPD" /tr ftpd.exe /ru system /sc onstart 
Schtasks /run /tn “IoTFTPD”