Dell WD19/WD19S : mise à jour du firmware sur Proxmox/Debian sans timeouts USB (fwupd + correctif autosuspend)


Si vous essayez de mettre à jour le firmware d’une station d’accueil Dell WD19/WD19S sur Proxmox (ou Debian) via fwupdmgr, vous pouvez tomber sur l’erreur classique Operation timed out pendant l’étape Erasing…. En pratique, la mise à jour échoue à cause de la gestion d’énergie USB (autosuspend). Ci-dessous, vous trouverez un correctif simple et efficace, ainsi qu’un script prêt à l’emploi à lancer sur un serveur ou un ordinateur portable.

Symptômes

Le plus souvent, pendant la mise à jour du firmware du dock (WD19/WD19S), vous verrez une erreur similaire à :

À ce stade, fwupdmgr peut afficher le périphérique WD19S en Update State: Failed ou continuer à indiquer pending activation, mais le flash ne se termine jamais complètement.

Pourquoi cela arrive-t-il ?

Pendant le flash, le dock effectue des opérations longues. Si le système tente d’économiser de l’énergie sur l’USB (autosuspend), les transferts de contrôle USB peuvent échouer. Résultat : un timeout exactement lors de l’effacement de la banque de firmware (erase bank).

Correctif rapide : désactiver l’autosuspend USB pendant la mise à jour

La solution la plus simple consiste à définir temporairement l’autosuspend à -1 (désactivé). Ce paramètre reste actif jusqu’au redémarrage (sauf si vous le rendez permanent via la cmdline du noyau), mais cela suffit largement le temps de la mise à jour.

Ensuite, lancez la mise à jour :

Après la mise à jour : “pending activation” et nécessité de débrancher le câble

Après une installation réussie du firmware pour WD19/WD19S, fwupdmgr affiche souvent le message suivant :

Procédez dans cet ordre précis :

  • Débranchez le câble USB-C du dock (côté ordinateur).
  • (Optionnel) Débranchez l’alimentation du dock pendant 10–15 secondes, puis rebranchez-la.
  • Rebranchez le câble USB-C.
  • Lancez l’activation :

Enfin, vérifiez le statut :

Script prêt à l’emploi : installation + mise à jour + désactivation autosuspend (avec restauration)

Ci-dessous, un script prêt à l’emploi qui :

  • installe fwupd
  • rafraîchit les métadonnées LVFS
  • désactive temporairement l’autosuspend USB (pour éviter les timeouts sur WD19S)
  • lance les mises à jour du firmware
  • restaure ensuite la valeur précédente d’autosuspend (même en cas d’échec)

Vous pouvez copier le script directement depuis cet article, mais si vous préférez aller plus vite, vous pouvez le télécharger ici :

https://soban.pl/bash/dell_updage.sh

Exemple de téléchargement et d’exécution :

Si vous voulez prévisualiser le script avant de l’exécuter :

Si less n’est pas installé :

Script (contenu complet)

Exécuter le script

Le plus simple :

FAQ & conseils

  • La mise à jour échoue encore ? Débranchez tous les périphériques du dock (écrans/LAN/USB), ne laissez que l’alimentation et l’USB-C, faites un hard reset (débranchez l’alimentation 30s), puis réessayez.
  • “pending activation” après la mise à jour – c’est normal pour WD19/WD19S. Vous devez débrancher l’USB-C, rebrancher, puis exécuter fwupdmgr activate.
  • Est-ce que ça met à jour le BIOS du laptop ? Pas forcément. fwupdmgr liste séparément “System Firmware” (BIOS/UEFI) et le dock. Cet article se concentre sur le dock et le problème de timeout USB.

Résumé

Si la mise à jour du firmware Dell WD19/WD19S échoue sur Proxmox/Debian pendant l’étape Erasing…, il suffit dans la plupart des cas de désactiver temporairement l’autosuspend USB. Le script ci-dessus le fait automatiquement, puis restaure le réglage précédent afin que le système continue de fonctionner normalement.