Visionneuse d'appareils USB
Inspectez vos appareils USB dans le navigateur via WebUSB : VID/PID, fabricant, version USB, configurations, interfaces et endpoints. Gratuit.
À propos de la Visionneuse USB
Consultez les informations détaillées de vos périphériques USB grâce à l'API WebUSB. Analysez les descripteurs : IDs fournisseur/produit, configurations, interfaces et endpoints. Idéal pour le développement USB, le débogage matériel et la compréhension de l'architecture de vos appareils.
How to use:
- Cliquez sur « Sélectionner un appareil USB » pour ouvrir le sélecteur.
- Choisissez un appareil dans la liste des périphériques disponibles.
- Accédez aux informations détaillées : IDs, descripteurs, version.
- Explorez les configurations, interfaces et endpoints de l'appareil.
- Vérifiez les classes d'interfaces et types d'endpoints nécessaires au diagnostic.
- Cliquez sur « Déconnecter » pour libérer l'appareil une fois terminé.
Compatibilité navigateur
- Chrome/Edge (desktop) : support complet
- Opera : compatible
- Firefox/Safari : non supportés
- HTTPS requis pour la sécurité
- Sélection manuelle des appareils obligatoire

Références techniques
- MDN WebUSB API : https://developer.mozilla.org/en-US/docs/Web/API/USB
- Spécification WebUSB : https://wicg.github.io/webusb/
- Chrome Platform Status : https://chromestatus.com/feature/5651917954875392
Questions Fréquemment Posées
L'outil utilise l'API WebUSB pour énumérer les périphériques USB connectés que l'utilisateur autorise explicitement pour l'accès du navigateur. Il affiche l'ID fournisseur (VID) et l'ID produit (PID) sous forme de nombres hexadécimaux 16 bits, les chaînes fabricant et produit stockées dans le descripteur de l'appareil, le numéro de série USB lorsqu'il est présent et l'arborescence complète de configuration — interfaces, paramètres alternatifs, points de terminaison avec leur direction (IN ou OUT), types de transfert (contrôle, en masse, interruption, isochrone) et tailles maximales de paquets. Il n'affiche pas les informations niveau noyau disponibles aux outils système comme lsusb -v sur Linux car le sandbox du navigateur restreint l'accès pour la sécurité. WebUSB est destiné au travail amateur et prototype, pas à remplacer les pilotes natifs.
La plupart des utilisateurs n'ont jamais besoin de regarder sous le capot, mais développeurs, bricoleurs, personnel de support IT et utilisateurs curieux en tirent profit dans plusieurs scénarios. Quand un appareil échoue à énumérer correctement, comparer le descripteur sur deux ordinateurs peut isoler si l'appareil lui-même est défectueux ou si la pile hôte se comporte mal. Les projets matériels personnalisés (Arduino, Raspberry Pi Pico, ESP32 avec TinyUSB) nécessitent vérification que leurs descripteurs correspondent à ce qu'ils ont configuré dans le firmware. La détection de contrefaçons en bénéficie aussi : un VID légitime attribué par USB-IF comme 0x05AC (Apple) sur un câble sans marque est un drapeau rouge. Les utilisateurs soucieux de leur vie privée peuvent aussi inspecter quels numéros de série et identifiants uniques leurs câbles et dongles exposent à chaque ordinateur.
Un appareil bien élevé expose un VID enregistré réel (attribué par l'USB-IF, coûte 6 000 $ pour les nouveaux fournisseurs), des chaînes descriptives fabricant et produit en UTF-16LE, la bonne version bcdUSB (ex. 0x0200 pour USB 2.0, 0x0300 pour USB 3.0) et soit aucun numéro de série soit un numéro stable globalement unique. Les drapeaux rouges incluent le VID 0x1234 (souvent utilisé par les cartes de développement sans enregistrement), des descripteurs de chaîne vides (juste VID/PID sans nom lisible), un bMaxPacketSize0 incohérent (doit être 8, 16, 32 ou 64 pour full-speed, 64 pour high-speed) ou un appareil qui se reconfigure entre énumérations (descripteur change en débranchant et rebranchant). Le champ bcdDevice peut aussi révéler la version du firmware quand les fabricants la mettent à jour entre révisions.
Un appareil USB parle via une ou plusieurs interfaces, chacune représentant une fonction logique — une imprimante peut exposer une interface pour l'impression et une autre pour le scanner. Chaque interface contient des points de terminaison, qui sont des tuyaux unidirectionnels pour les données : un point de terminaison OUT reçoit de l'hôte, IN envoie à l'hôte. Les quatre types de transfert servent des modèles de trafic différents. Les points de terminaison de contrôle (toujours 0) gèrent la configuration, les descripteurs et les requêtes standard. Les points de terminaison en masse transportent de grandes données tolérantes à la latence comme les transferts de fichiers. Les points de terminaison d'interruption sondent de petites charges utiles à intervalles fixes — utilisés par les claviers, souris et appareils HID. Les points de terminaison isochrones réservent la bande passante sans réessai d'erreur — utilisés par l'audio et la vidéo où perdre une trame est préférable à la retarder.
WebUSB restreint volontairement l'accès pour protéger les utilisateurs. Les appareils qui ont déjà un pilote de classe chargé par le système d'exploitation — claviers, souris, stockage de masse, imprimantes, audio, cartes à puce — sont bloqués par la politique du navigateur d'accès WebUSB, afin qu'un site web malveillant ne puisse pas voler vos frappes ou lire votre clé USB. Seuls les appareils qui annoncent explicitement le support WebUSB (via un descripteur Microsoft OS 2.0 avec la capacité de plateforme WebUSB) ou qui n'ont aucun pilote système les réclamant apparaissent dans le sélecteur. Chaque autorisation est par origine et par appareil : accorder l'accès à un site ne l'accorde pas à d'autres, et vous pouvez révoquer la permission dans les paramètres de site du navigateur.
Les câbles eux-mêmes sont passifs mais contiennent de plus en plus une puce e-marker — un petit IC qui rapporte les capacités du câble (courant max, voies de données USB 3.x, support Thunderbolt, modes alternatifs vidéo) à l'hôte via les broches du Canal de Configuration (CC). WebUSB ne peut pas interroger directement les e-markers, mais vous pouvez déduire la capacité du câble par les descripteurs d'appareil qui apparaissent : si vous branchez un SSD USB 3.x via le câble et qu'il s'énumère seulement comme USB 2.0, le câble manque les paires SuperSpeed. Si un disque Thunderbolt n'apparaît que comme USB 3.x, le câble n'est pas certifié Thunderbolt. Le test le plus fiable reste : connectez un appareil complet connu bon et vérifiez que son descripteur rapporte la version bcdUSB attendue.
Les versions USB dans le descripteur (bcdUSB) et les noms marketing divergent de manière confuse. USB 1.1 (bcdUSB 0x0110) est 1,5/12 Mbps. USB 2.0 (0x0200) atteint 480 Mbps. USB 3.0 original (0x0300) est 5 Gbps et a été renommé USB 3.1 Gen 1, puis USB 3.2 Gen 1, puis USB 5Gbps. USB 3.1 Gen 2 / 3.2 Gen 2 / USB 10Gbps double à 10 Gbps. USB 3.2 Gen 2x2 / USB 20Gbps utilise USB-C double voie pour 20 Gbps. USB4 (basé sur le protocole Thunderbolt 3) va à 20 ou 40 Gbps. Le descripteur rapporte le niveau de protocole natif de l'appareil, mais la vitesse négociée dépend de l'hôte, du câble et de la chaîne de hubs. Un appareil USB 3.x sur un hub USB 2.0 rapportera USB 3.x dans son descripteur mais fonctionnera à 480 Mbps.
La permission WebUSB accorde à l'origine un accès direct aux points de terminaison spécifiques au fournisseur de l'appareil autorisé. Une fois accordée, le site peut envoyer et recevoir des transferts USB bruts vers cet appareil tant que l'appareil est branché et la page chargée. C'est approprié pour une app de programmation matérielle à but unique (ex. mise à jour firmware pour une carte spécifique) mais inapproprié pour les sites à usage général. Meilleures pratiques : révoquer la permission dans les paramètres de site du navigateur quand vous cessez d'utiliser l'outil, ne jamais autoriser l'accès à des appareils sensibles à la sécurité comme les portefeuilles matériels sauf si le fournisseur le supporte explicitement, préférer autoriser par session plutôt que permanent, et vérifier que le site est l'URL légitime du fabricant avant de cliquer autoriser.
