Diagnostic USB : le guide complet pour déboguer les périphériques USB avec captures de paquets
Flux complet de diagnostic USB pour ingénieurs firmware. Capture matérielle vs logicielle, usbmon sous Linux, USBPcap sous Windows, débogage d'énumération, erreurs de descripteurs, échecs de transfert et comparaison de sessions.
Ceci est la page centrale pour le diagnostic des périphériques USB. Que vous déboguiez une énumération firmware, une liaison de pilote, des échecs de transfert ou des problèmes au niveau protocole, ce guide mappe chaque scénario de débogage USB à l'approche et à l'outillage appropriés.
Capture : analyseur matériel vs capture logicielle
Avant de déboguer tout problème USB, décidez comment capturer le trafic :
- USBPcap vs usbmon : capture Windows vs Linux — Configuration de capture par plateforme. Sélection du concentrateur racine USBPcap, permissions usbmon, et quand utiliser chacun.
- Configuration de capture par plateforme — Configuration détaillée Linux usbmon et Windows USBPcap.
- Connexion à un périphérique — Flux de première capture.
Débogage d'énumération et de descripteurs
L'énumération USB est l'endroit où se cachent la plupart des bugs firmware. Le périphérique doit répondre correctement à une séquence de requêtes de descripteurs avant qu'aucune communication applicative ne commence.
- Débogage de transfert de contrôle USB et setup packet — Lecture de bmRequestType, bRequest, wValue, wIndex. Comprendre ce que demande l'hôte.
- Débogage de périphérique composite USB et IAD — Problèmes d'Interface Association Descriptor, mauvaise liaison de pilote, Code 10, Code 43, usbccgp.sys Windows.
- Débogage de stall d'endpoint USB — Quand le périphérique renvoie STALL. Ce que cela signifie, comment diagnostiquer, comment le firmware doit récupérer.
Échecs de transfert et débogage de protocole
- Débogage USB UASP vs BOT stockage de masse — Échecs de protocole UASP, fallback BOT, timeouts de commandes SCSI, boucles de reset, disques externes lents.
Débogage spécifique à la plateforme
- Référence de filtres USB Wireshark — Filtres d'affichage Wireshark pour captures USB. Filtrer par périphérique, endpoint, type de transfert et champ de descripteur.
Comparaison
- Bus Scope vs HHD USB Monitor et Total Phase Beagle — Analyseur USB logiciel vs matériel — quand chacun est pertinent.
Gestion des sessions
- Enregistrer et comparer des sessions USB — Capturer le comportement nominal et défaillant et comparer.
- Dépannage des problèmes de capture — Adaptateur indisponible, chronologie vide, preuves manquantes.
Mise en route
- Connexion et capture — Configuration de la première capture.
- Configuration plateforme — usbmon Linux ou USBPcap Windows.
- Dépannage — Problèmes de capture courants.