Список USB-устройств
Список подключённых USB-устройств с использованием WebUSB API браузера. Просмотрите ID поставщика, ID продукта, производителя и серийный номер для каждого разрешённого устройства.
Ввод
Вывод
| Название продукта | Производитель | ID поставщика | ID продукта | Серийный номер | Версия USB |
|---|---|---|---|---|---|
| USB-устройства не найдены. Нажмите "Добавить устройство", чтобы предоставить доступ. | |||||
Документация
Что такое WebUSB API?
WebUSB API — это стандарт браузера, который позволяет веб-страницам взаимодействовать напрямую с USB-устройствами без установки собственных драйверов или настольных приложений. Он был представлен в Chrome 61 и предоставляет веб-сайтам контролируемый доступ с разрешением к оборудованию, такому как микроконтроллеры, платы разработки, MIDI-интерфейсы и другие USB-периферийные устройства.
В отличие от традиционного доступа к USB (который требует драйверов уровня ядра), WebUSB работает полностью в изолированной среде браузера. Пользователи должны явно предоставить разрешение для каждого устройства через встроенный в браузер выбор устройств, что гарантирует, что ни один веб-сайт не сможет скрытно читать или писать на ваше оборудование.
Описание инструмента
Этот инструмент позволяет перечислить USB-устройства, которым был предоставлен доступ к браузеру через WebUSB API. При загрузке он автоматически отображает все ранее разрешённые устройства. Вы также можете открыть встроенный в браузер выбор USB-устройств, чтобы предоставить доступ к новому подключённому устройству, или обновить список в любой момент.
Для каждого устройства инструмент отображает название продукта, производителя, ID поставщика, ID продукта, серийный номер и версию USB-протокола.
Возможности
- Автоматически загружает ранее разрешённые USB-устройства при открытии страницы
- Открывает встроенный в браузер выбор USB-устройств для предоставления доступа к новым устройствам
- Отображает ID поставщика и ID продукта в стандартной шестнадцатеричной нотации (например
0x1A2B) - Показывает версию USB-протокола (например
2.0,3.1) рядом с полями идентификации устройства - Таблица результатов с сортировкой и экспортом в CSV и JSON
Как это работает
Когда вы нажимаете Добавить устройство, браузер вызывает navigator.usb.requestDevice() и отображает системный выбор со списком подключённых USB-устройств. Если вы выберете одно, браузер сохранит разрешение для этого источника. При последующих посещениях (или после нажатия Обновить), navigator.usb.getDevices() возвращает все ранее разрешённые устройства без повторного запроса.
ID поставщика и ID продукта отображаются в 4-значном прописном шестнадцатеричном формате (например 0x04D8) — стандартном формате, используемом в реестрах USB и техническом описании.
Варианты использования
- Разработчики встроенного ПО могут быстро подтвердить, что подключённый микроконтроллер или плата разработки (Arduino, STM32, RP2040 и т. д.) правильно определяется браузером перед написанием инструмента прошивки на основе WebUSB.
- Разработчики веб-приложений могут убедиться, что их приложение с поддержкой WebUSB будет видеть ожидаемые поля идентификации устройства на ранних этапах прототипирования.
Ограничения
- WebUSB поддерживается только в браузерах на основе Chromium (Chrome, Edge, Opera). Firefox и Safari не реализуют этот API.
- Страница должна быть доставлена по HTTPS (или
localhost) — WebUSB блокируется на обычных HTTP-источниках. - Некоторые комбинации операционной системы и браузера ограничивают доступ к определённым классам устройств (например HID, массовое хранилище) даже при наличии разрешений.
- Этот инструмент читает только метаданные устройства; он не открывает USB-интерфейс и не передаёт данные на устройство или с устройства.