Notes de publication pour la build 17763.253

Numéro de build 17763.253. Février 2019.

© Microsoft Corporation 2019. Tous droits réservés.

Important

Si vous utilisez la mise à jour d’octobre 2018, utilisez cette version à la place. Nous avons constaté que des problèmes connus affectent les utilisateurs de la mise à jour d’octobre 2018.

Ce document fournit des informations de dernière minute ou autres qui complètent la documentation fournie avec Windows 10 IoT Standard.

Merci d’avoir téléchargé Windows 10 IoT Standard. Windows 10 IoT Standard est la version de Windows 10 destinée au développement d’appareils intégrés ou dédiés, et proposée à la communauté de créateurs. Les packages de cette version contiennent les outils et le contenu nécessaires à l’installation de Windows 10 IoT Standard sur une plateforme MinnowBoard Max basée sur des processeurs Intel Atom, une plateforme Raspberry Pi 2/3 basée sur des processeurs Broadcom 2836/2837 ou un plateforme DragonBoard 410c basée sur des processeurs Qualcomm Snapdragon série 400.

Déclaration de confidentialité

La déclaration de confidentialité de cette version du système d’exploitation Windows est accessible ici.

Vous pouvez consulter les termes liés en collant le lien de transfert dans la fenêtre de votre navigateur.

Nouveautés de cette build

  • Corrections de bogues généraux

Informations supplémentaires

  • La version BSP utilisée pour notre image DragonBoard est 2120.0.0.0.

Problèmes connus dans cette build

  • Le déploiement du pilote F5 à partir de Visual Studio ne fonctionne pas sur IoT Standard.

  • Les appareils installés via NOOBS ne peuvent pas exécuter l’outil bcdedit pour activer le débogueur du noyau. Vous pouvez effectuer cette opération avec la solution de contournement suivante :

    • Monter le carte SD sur votre PC
    • Recherchez le numéro de partition du lecteur EFIESP avec disquepart ou Gestion des disques (dis-le « M : »)
    • Exécutez la commande « bcdedit /store M :\EFI\Microsoft\boot\bcd /set {default} debug yes »
    • Démonter le carte SD.
    • Vous devez maintenant être en mesure de connecter le débogueur comme d’habitude
  • Il peut arriver que la session PowerShell soit interrompue lors de l’envoi de commandes aux appareils IoT.

  • Le RPi3 ne couple pas BT + BTLE avec le Bluetooth intégré.

  • Impossible de se connecter à Internet via une connexion WIFI avec SoftAp de Up2.

  • Les paramètres de contrôle de la luminosité ne persistent pas sur IoT pendant le remplacement.

Problèmes connus généraux de l’IoT Standard et solutions de contournement

Pour Raspberry Pi

Résolution d’affichage du Raspberry Pi si le moniteur est déconnecté

Il se peut que le Raspberry Pi ne conserve pas la résolution d’affichage si le moniteur est déconnecté. L’EDID du moniteur est utilisé pour définir la résolution du système quand le moniteur est connecté. Lorsqu’il est déconnecté, le microprogramme du Raspberry Pi est paramétré par défaut conformément au contenu du fichier config.txt situé à la racine de la carte SD.

Performances vidéo du Raspberry Pi

Les performances de lecture vidéo de la plateforme Raspberry Pi ne sont pas optimisées.  Les éléments animés par l’utilisateur, dont les menus déroulants basés sur XAML, peuvent présenter des performances non optimales.

Prise en charge de l’appareil photo du Raspberry Pi

La prise en charge des appareils photo est limitée. L’appareil PiCam directement connecté au bus de caméra intégré n’est pas pris en charge en raison des limitations de la plateforme sur le plan de la prise en charge des webcams USB D3D modernes qui produisent des flux de données très exigeants sur le contrôleur d’hôte USB.  Même utilisées avec des paramètres de faible résolution, les webcams nécessitent un réglage supplémentaire précis de l’USB et une logique de contrôle spécialisée.

Prise en charge de Bluetooth du Raspberry Pi3

Le pilote Bluetooth intégré du Raspberry Pi3 ne prend en charge que les appareils à faible bande passante.

Utilisation du port série et accès à celui-ci sur le RPi2

Le Raspberry Pi 2 prend en charge le transport série de la communication via l’UART PL011.  Ceci est défini par défaut dans les scénarios de débogage du noyau.  Une application ou un pilote d’appareil peut utiliser l’UART PL011 pour échanger des données avec le pilote d’appareil PL011 désactivant le débogueur à l’aide de la commande suivante :

bcedit /set debug off 

Points d’arrêt de données désactivés sur le Raspberry Pi2

Aucune solution de contournement pour le moment.

Désactivation des adaptateurs intégrés pour le Raspberry Pi 3

Le Raspberry Pi 3 intègre le Bluetooth qui doit être désactivé pour utiliser une autre clé. Pour désactiver le Bluetooth intégré, ouvrez une session Telnet/SSH et exécutez :

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

Vous pouvez également désactiver le WiFi avec la commande suivante :

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

Pour DragonBoard

Arrêt de la DragonBoard 410c

Sur la DragonBoard, une commande d’arrêt ne met pas la carte hors tension. Le système redémarre. Mettez la carte hors tension en coupant l’alimentation.

DragonBoard et windbg

Les pilotes GPIO/I2C/SPI/UART sont désactivés lors de la connexion à la DragonBoard avec windbg.

Prises de casque et de microphone de la DragonBoard

La DragonBoard BSP possède des pilotes pour prises de casque et de microphone, mais n’intègre aucune de ces prises.

Interface SPI de la DragonBoard fonctionnant à 4,8 Mhz

L’interface SPI ignore la vitesse demandée et la DragonBoard fonctionne toujours à 4,8 MHz.

Veille connectée de la DragonBoard

La veille connectée n’est pas activée par défaut sur la DragonBoard de Qualcomm. Pour activer la veille connectée sur la DragonBoard, la clé de registre suivante doit être définie sur « 1 » :

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

Remarque

Certaines plateformes ne prennent pas en charge la veille connectée. Il se peut que cela ne fonctionne pas sur toutes les plateformes.

Pour MinnowBoard

Démarrage et mise à jour du microprogramme de la MinnowBoard Max

La MinnowBoard Max ne démarre que si la version du microprogramme est la version .092 ou ultérieure. La version minimale recommandée du microprogramme est « MinnowBoard MAX 0.92 32 bits ». Vous pouvez télécharger les mises à jour du microprogramme ici.

Prise en charge des périphériques par la MinnowBoard

L’image Windows 10 IoT Standard incluse dans cette livraison prend en charge les périphériques exposés sur la carte MinnowBoard MAX. Prochainement, Intel® ​​prendra en charge l’ensemble complet des fonctionnalités des processeurs Baytrail, à savoir les processeurs Intel Celeron™ J1900/N2930/N2807 et les processeurs Intel Atom™ E38XX.

Pour toutes les plateformes

Accès à des documents publics

Une modification a été apportée aux API sous-jacentes pour l’accès aux fichiers, qui nécessite qu’une application spécifie un accès broadFileSystem pour accéder au répertoire de documents publics.

L’extrait de code du fichier .XML devrait ressembler à ceci :

<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>

Disparition du pointeur de la souris lors du débogage

Dans certains cas, le pointeur de la souris n’est pas visible après le déploiement ou le débogage d’applications avec Visual Studio. Il devrait réapparaître si vous déplacez le focus à l’aide du clavier (Tab).

Applications serveur avec SoftAP

Lors de l’utilisation du SoftAP, les clients ne peuvent pas accéder au contenu exposé par les applications UAP.
Pour exposer des applications UAP via SoftAP, les modifications suivantes doivent être apportées à l’appareil via la console :

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>  

Par exemple :

checknetisolation loopbackexempt -a -n=IoTOnboardingTask-uwp_1w720vyc4ccym

Reboot

Conflit de pilote de capteur dans des FFU préconstruits

Il y a un conflit de pilote de capteur dans les FFU fournis. L’infrastructure de capteur à distance installe les pilotes de compas, de magnétomètre, d’accéléromètre et de gyroscope. Les API UWP permettant d’accéder à ceux-ci à partir d’une application supposent qu’un seul d’eux est installé. Si vous développez un pilote pour un appareil connecté physiquement, le pilote distant sur les FFU fournis par Microsoft sera en conflit.

Résolution : le pilote en conflit peut être supprimé en vous connectant à l’appareil via SSH ou PowerShell et en utilisant l’outil devcon.exe pour supprimer le pilote de capteur distant en tapant « devcon.exe supprimer @« ROOT\REMOTESENSORDRIVER* ». Le pilote de capteur distant n’affecte pas les FFU créés par l’OEM.

Nom et mot de passe d’administrateur par défaut

Les noms et mot de passe de l’administrateur par défaut sont codés en dur dans l’image Windows 10 IoT Standard. Cela constitue un risque pour la sécurité de l’appareil qui ne doit pas être exposé à une connexion Internet ouverte tant que le mot de passe n’a pas été modifié.

Contrôles de volume

Les contrôles de volume matériels pour les microphones et haut-parleurs USB qui dépendent du système Windows pour la modification du volume du système ne sont actuellement pas pris en charge sous Windows 10 IoT Standard.

Claviers USB

Certains claviers et souris USB risquent de ne pas fonctionner sur IoT Standard. Utilisez un clavier ou une souris différents. La liste des périphériques validés figure dans la documentation ici.

Orientation de l’écran

Il peut arriver que l’orientation « Portrait » ne soit pas respectée dans une application universelle.

Référencement d’adaptateurs avec des modèles AllJoyn

Toute tentative d’ajout de références à des projets d’adaptateur AllJoyn peut entraîner des erreurs lors de l’utilisation de versions spécifiques du Kit de développement logiciel (SDK). Pour résoudre ces erreurs, modifiez la plateforme cible de Visual Studio afin qu’elle corresponde à la version actuelle du Kit de développement logiciel (SDK), puis rechargez le projet.

Limitations de WiFi Direct sur IoTCore

  • L’appareil IoTCore doit être l’appareil qui se connecte. Il ne peut pas fonctionner comme appareil publicitaire avec un autre appareil établissant la connexion.
  • Il convient d’utiliser un jumelage avancé. L’exemple d’application montre comment utiliser des API de jumelage avancé pour coupler des appareils avant connexion.
  • Certaines cartes sans fil ne prennent pas en charge le WiFi Direct. Nous avons testé et validé le fonctionnement de la « carte réseau Realtek RTL8188EU Wireless Lan 802.11n USB 2.0 », mais il se peut que d’autres cartes ne soient pas prises en charge.

Mode Conduite autre que par défaut

Sur Raspberry Pi et DragonBoard, le passage d’un mode Conduite autre que le mode par défaut à un autre mode Conduite autre que le mode par défaut peut générer un problème sur la broche GPIO. SOLUTION DE CONTOURNEMENT : Définissez le mode lecteur une fois au début de l’application.

Application en cours d’exécution

L’application de démarrage par défaut peut entrer en conflit avec elle-même si elle est également déployée à partir de Visual Studio. SOLUTION DE CONTOURNEMENT : remplacez l’application de démarrage par défaut par une application autre que celle que vous souhaitez déployer.

BackgroundMediaPlayer.MessageReceivedFromForeground peut se bloquer

La ligne de code suivante peut se bloquer : « BackgroundMediaPlayer.MessageReceivedFromForeground += OnMessageReceivedFromForeground ; ». Pour éviter le crash, ajoutez le code suivant afin qu’il soit exécuté en premier « var player = BackgroundMediaPlayer.Current; ».

Prise en charge de l’authentification Azure Active Directory

La bibliothèque d’authentification Azure Active Directory ne fonctionne pas sous Windows 10 IoT Standard.

Gestion par l’interpréteur de commandes des blocages d’application

L’infrastructure d’interpréteur de commandes d’IoT Standard surveille les applications de type APPX s’exécutant sur l’appareil et les redémarre en cas de blocage. Si les applications redémarrées continuent à planter, l’interpréteur de commandes utilise un __failfast, processus critique du système qui déclenche une vérification d’erreur et un redémarrage lors d’une tentative de récupération. Une logique et une gestion comparables sont utilisées pour les tâches en arrière-plan et les applications de premier plan dans une configuration de pointe. La gestion des incidents et la logique de nouvelle tentative sont capturés ci-dessous :

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 

Quand un blocage de l’application est détecté :

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)) 

Laisser passer un délai et relancer l’application

Synchronisation de l’heure

Si la synchronisation de l’heure échoue ou dépasse le délai, cela peut être dû à un serveur de temps inaccessible ou distant. Vous pouvez procéder comme suit pour ajouter des serveurs de temps supplémentaires ou un serveur de temps local.

  1. À partir d’une ligne de commande sur l’appareil (ex. SSH, PowerShell) w32tm /config /syncfromflags:manual /manualpeerlist:"0.windows.time.com 1.pool.ntp.org 2.something else, ..."

  2. Vous pouvez également effectuer ces ajouts au Registre via un script de démarrage ou un package de configuration de runtime personnalisé inclus dans le processus de création d’image, si nécessaire. Pour plus d'informations, consultez la page suivante :

Démarrage du serveur FTP

Le serveur FTP ne s’exécute plus par défaut au démarrage

Pour s’exécuter une seule fois : Connectez-vous avec SSH\PS et exécutez cette commande pour démarrer FTP :

start ftpd.exe 

Pour s’exécuter sur chaque démarrage, les utilisateurs doivent créer une tâche de planificateur : se connecter avec SSH\PS et créer une tâche de planificateur :

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