Visualizador de Dispositivos USB
Inspecione dispositivos USB pelo navegador via WebUSB: vendor & product ID, fabricante, versão USB, configurações, interfaces e endpoints. Grátis.
Sobre o Visualizador de Dispositivos USB
Veja informações detalhadas sobre dispositivos USB conectados usando a API WebUSB. Explore descritores de dispositivo incluindo vendor/product IDs, configurações, interfaces e endpoints. Perfeito para desenvolvimento USB, debugging de hardware e entendimento da estrutura de dispositivos USB.
How to use:
- Clique em 'Selecionar dispositivo USB' para abrir o seletor de dispositivo.
- Escolha um dispositivo USB da lista de dispositivos conectados.
- Veja informações detalhadas do dispositivo incluindo IDs e descritores.
- Explore configurações, interfaces e endpoints do dispositivo.
- Verifique classes de interface e tipos de endpoint para seu dispositivo.
- Use 'Desconectar' para liberar o dispositivo quando terminar.
Compatibilidade de Navegador
- Chrome/Edge (Desktop): Suporte completo
- Opera: Suportado
- Firefox/Safari: Não suportado
- HTTPS necessário para segurança
- Usuário deve selecionar dispositivos manualmente

Referências Técnicas
- MDN WebUSB API: https://developer.mozilla.org/en-US/docs/Web/API/USB
- Especificação WebUSB: https://wicg.github.io/webusb/
- Chrome Platform Status: https://chromestatus.com/feature/5651917954875392
Perguntas Frequentes
A ferramenta usa a API WebUSB para enumerar dispositivos USB conectados que o usuário autoriza explicitamente para acesso do navegador. Exibe o ID do fornecedor (VID) e ID do produto (PID) como números hexadecimais de 16 bits, as strings de fabricante e produto armazenadas no descritor do dispositivo, o número de série USB quando presente e a árvore completa de configuração — interfaces, ajustes alternativos, endpoints com sua direção (IN ou OUT), tipos de transferência (controle, em massa, interrupção, isócrono) e tamanhos máximos de pacote. Não mostra informação a nível de kernel disponível para ferramentas de sistema como lsusb -v no Linux porque o sandbox do navegador restringe acesso por segurança. WebUSB destina-se a trabalho de hobby e protótipo, não a substituir drivers nativos.
A maioria dos usuários nunca precisa olhar sob o capô, mas desenvolvedores, makers, equipe de suporte TI e usuários curiosos se beneficiam em vários cenários. Quando um dispositivo falha em enumerar adequadamente, comparar o descritor em dois computadores pode isolar se o dispositivo é defeituoso ou a pilha host se comporta mal. Projetos de hardware customizado (Arduino, Raspberry Pi Pico, ESP32 com TinyUSB) precisam verificar que seus descritores correspondam ao configurado no firmware. Detecção de falsificações também se beneficia: um VID legítimo atribuído pelo USB-IF como 0x05AC (Apple) em um cabo sem marca é uma bandeira vermelha. Usuários conscientes de privacidade também podem inspecionar quais números de série e identificadores únicos seus cabos e dongles expõem a cada computador.
Um dispositivo bem-comportado expõe um VID real registrado (atribuído pelo USB-IF, custa $6.000 para novos fornecedores), strings descritivas de fabricante e produto em UTF-16LE, a versão bcdUSB correta (ex. 0x0200 para USB 2.0, 0x0300 para USB 3.0) e nenhum número de série ou um estável globalmente único. Bandeiras vermelhas incluem o VID 0x1234 (frequente em placas de desenvolvimento sem registro), descritores de string vazios (apenas VID/PID sem nome legível), bMaxPacketSize0 inconsistente (deve ser 8, 16, 32 ou 64 para full-speed, 64 para high-speed) ou dispositivo que se reconfigura entre enumerações (descritor muda ao desplugar e replugar). O campo bcdDevice também pode revelar versão de firmware quando fabricantes atualizam entre revisões.
Um dispositivo USB fala por uma ou mais interfaces, cada uma representando uma função lógica — uma impressora pode expor uma interface para imprimir e outra para o scanner. Cada interface contém endpoints, que são tubos unidirecionais de dados: um endpoint OUT recebe do host, IN envia ao host. Os quatro tipos de transferência servem padrões de tráfego diferentes. Endpoints de controle (sempre 0) lidam com setup, descritores e requisições padrão. Endpoints em massa carregam dados grandes tolerantes a latência como transferências de arquivo. Endpoints de interrupção sondam pequenas cargas em intervalos fixos — usados por teclados, mouses e dispositivos HID. Endpoints isócronos reservam largura de banda sem retransmissão de erro — usados por áudio e vídeo onde perder um quadro é preferível a atrasá-lo.
WebUSB restringe intencionalmente acesso para proteger usuários. Dispositivos que já têm um driver de classe carregado pelo sistema operacional — teclados, mouses, armazenamento em massa, impressoras, áudio, cartões inteligentes — são bloqueados por política do navegador de acesso WebUSB, para que um site malicioso não possa roubar suas teclas digitadas ou ler sua unidade USB. Apenas dispositivos que explicitamente anunciam suporte WebUSB (via descritor Microsoft OS 2.0 com a capacidade de plataforma WebUSB) ou que não têm driver de sistema reclamando aparecem no seletor. Cada autorização é por origem e por dispositivo: conceder acesso a um site não concede a outros, e você pode revogar permissão nas configurações do site do navegador.
Cabos em si são passivos mas cada vez mais contêm um chip e-marker — um pequeno IC que reporta capacidades do cabo (corrente máxima, faixas de dados USB 3.x, suporte Thunderbolt, modos alternativos de vídeo) ao host através dos pinos de Canal de Configuração (CC). WebUSB não pode consultar e-markers diretamente, mas você pode inferir capacidade do cabo pelos descritores de dispositivo que aparecem: se você pluga um SSD USB 3.x pelo cabo e ele enumera apenas como USB 2.0, o cabo carece dos pares SuperSpeed. Se uma unidade Thunderbolt aparece só como USB 3.x, o cabo não é certificado Thunderbolt. O teste mais confiável continua sendo: conecte um dispositivo conhecido bom completo e verifique que seu descritor reporta a versão bcdUSB esperada.
Versões USB no descritor (bcdUSB) e nomes de marketing divergem confusamente. USB 1.1 (bcdUSB 0x0110) é 1,5/12 Mbps. USB 2.0 (0x0200) atinge 480 Mbps. USB 3.0 original (0x0300) é 5 Gbps e foi rebatizado USB 3.1 Gen 1, depois USB 3.2 Gen 1, depois USB 5Gbps. USB 3.1 Gen 2 / 3.2 Gen 2 / USB 10Gbps dobra para 10 Gbps. USB 3.2 Gen 2x2 / USB 20Gbps usa USB-C de faixa dupla para 20 Gbps. USB4 (construído sobre protocolo Thunderbolt 3) vai a 20 ou 40 Gbps. O descritor reporta o nível de protocolo nativo do dispositivo, mas a velocidade negociada depende do host, cabo e cadeia de hubs. Um dispositivo USB 3.x em um hub USB 2.0 reportará USB 3.x em seu descritor mas operará a 480 Mbps.
A permissão WebUSB concede à origem acesso direto a endpoints específicos do fornecedor do dispositivo autorizado. Uma vez concedido, o site pode enviar e receber transferências USB brutas para aquele dispositivo enquanto o dispositivo estiver plugado e a página carregada. Isso é apropriado para um app de programação de hardware com propósito único (ex. atualizador de firmware para uma placa específica) mas inapropriado para sites de propósito geral. Melhores práticas: revogue permissão nas configurações do site do navegador quando parar de usar a ferramenta, nunca autorize acesso a dispositivos sensíveis a segurança como carteiras de hardware a menos que o fornecedor suporte explicitamente, prefira autorizar por sessão em vez de permanente, e verifique que o site é a URL legítima do fabricante antes de clicar permitir.
