USB флешки оптом от производителя со склада под заказ в Москве и области с доставкой
В наш век высоких технологий все кругом меняется настолько быстро, что только успевай реагировать! Особенно стремительно развивается компьютерная техника и, соответственно, съемные носители информации. Кажется, совсем недавно лазерные диски вытеснили устаревшие дискеты, и на прилавках магазинов появилось невиданное чудо — Usb-флешки. Как-то незаметно оригинальные сувенирные флешки стали неотъемлемой частью нашей повседневной жизни, будучи не просто самой съемной деталью компьютера, не только удобным носителем информации, но также уместным подарком.
Сегодня уже недостаточно просто иметь в своем ассортименте карты памяти, нужно предложить покупателям широкий их выбор – разнообразный объем памяти, внешнее оформление. В обиход вошел уже новый подвид, Usb-сувениры стали уместным материалом при брендировании.
Круг потребителей этой продукции постоянно расширяется. Бизнесмены предпочтут флешки под нанесение логотипа компании, обычно для таких случаев используются прямоугольные классические формы, фирменные цвета в изготовлении корпуса. Кроме этого прозрачные или деревянные флэшки под нанесение логотипа весьма уместны, если стиль и деятельность компании позволяют это. Представительницы прекрасного пола оценят изящные вещицы, ведь красивые флешки производятся с декором из страз, росписи, с мехом или кожей, объем при этом не ограничен. Молодежь старается приобретать прикольные, оригинальные флешки. К примеру, прикольные флешки в форме футбольного мяча любимы спортсменами. Даже дети уже активно пользуются флеш-картами, родители охотно одаривают своих вундеркиндов изделиями с соответствующим дизайном.
Вы уже устали мотаться, просматривать оптовые магазины, листать объемные каталоги, перебирать подарочные флэшки под логотип в надежде заполнить свои витрины действительно оригинальной продукцией? Тогда удобней устройтесь – Вы уже там, где нужно, на сайте магазина Flashki-optom. Мы рады предложить Вам флешки с логотипом, Usb-гаджеты оптом в широчайшем ассортименте. Быстрая доставка уместна для экономии бизнес-времени.
Разъёмы, кабели и распайка USB 1.1 и USB 2.0
Universal Serial Bus или сокращённо USB
Universal Serial Bus или сокращённо USB активно используется в современной цифровой компьютерной технике. В настоящее время применяются версии USB 1.1 и USB 2.0. Версия USB 2.0 поддерживает прямую и обратную совместимость с USB 1.1. Другими словами устройства с USB 2.0 успешно работают с компьютерами, оснащёнными USB 1.1 и наоборот. Все кабели и разъёмы
USB
USB (сокращение от английского термина Universal Serial Bus — «универсальная последовательная шина», произносится «ю-эс-би») — последовательный интерфейс передачи данных для низкоскоростных и среднескоростных периферийных устройств в цифровой компьютерной технике.
Universal Serial Bus (USB) — «универсальная последовательная шина» имеет своё специальное обозначение т.е свой специальный графический символ.
Символ USB
Символом USB являются четыре геометрические фигуры: большой круг, малый круг, треугольник и квадрат, расположенные на концах древовидной блок-схемы. Символ USB может наноситься на корпуса аппаратуры, на разъёмы и на устройства.
USB 2.0 отличается от USB 1.1 введением режима Hi-speed. USB 2.0 High Speed имеет свой логотип.
Логотип USB 2.0 High Speed нанесённый на Card Reader
Рис.1. Пример USB кабеля. Хорошо видны символы USB на разъёмах
Для подключения периферийных устройств к шине USB используется специальный четырёхжильный кабель, при этом две жилы (витая пара) в дифференциальном включении используются для обмена данными, а две других — для питания периферийного устройства см. Рис.2.
Рис.2. USB кабель с маркировкой основных параметров
USB позволяет подключать периферийные устройства без собственного источника питания (максимальная сила тока, потребляемого устройством по линиям питания шины USB, не должна превышать 500 мА) см. Рис.3.
Рис.3. USB имеет собственные линии питания, это позволяет подключать периферийные
устройства без собственного источника например, внешний жёсткий диск
Один контроллер шины USB позволяет подключить до 127 устройств по топологии «звезда», в том числе и концентраторы. На одной шине USB может быть до 127 устройств и до 5 уровней каскадирования хабов, не считая корневой.
Благодаря своей универсальности USB постепенно вытесняет такие порты как COM и LPT. Благо производители принтеров и сканеров предусматривают работу своих устройств с USB и снабжают соответствующими разъёмами. Кроме того, появляются новые нетрадиционные устройства, подключаемые к USB, такие как компактные MP3-проигрыватели. Подключение к USB позволяет не только скопировать музыкальные файлы на такие проигрыватели, но и заряжает встроенный в них аккумулятор, обеспечивающий автономную работу плеера.
Кабель USB
Кабель USB четырёхжильный в оплётке, он состоит из 4 медных проводников — 2 проводника питания и 2 проводника для передачи данных в виде витой пары, плюс, заземленная оплётка (экран) см. Рис.4.
Рис.4. Кабель USB. Хорошо видны разные разъёмы на концах кабеля.
Это связано с тем, что USB-кабели являются ориентированными
Кабели USB ориентированы, для этого USB кабели снабжаются разными разъёмами для подключения «к устройству» и «к хосту». Возможна реализация USB устройства без кабеля, со встроенным в корпус наконечником «к хосту». Примером такого устройства может служить флэш-карта памяти или USB-модем. Возможно и неразъёмное встраивание кабеля в устройство, примером может служить компьютерная мышь см. Рис.5. (стандарт запрещает это для устройств full и high speed, но производители его нарушают). Существуют (хотя и запрещены стандартом) и пассивные USB удлинители, имеющие разъёмы «от хоста» и «к хосту».
Рис.5. Неразъёмное встраивание USB-кабеля в устройство.
Пример, компьютерная мышь снабжена встроенным USB кабелем
Рис.6. Игровая компьютерная мышь снабжена красивым жёлтым USB разъёмом.
На разъём нанесён символ USB
Схема USB-кабеля
Кабель USB четырёхжильный в оплётке, он состоит из 4 медных проводников в цветной изоляции. Два проводника питания и 2 проводника для передачи данных в виде витой пары. Провода помещены в заземленную оплётку (экран).
USB разъём «к хосту» |
Цвет провода |
USB разъём «к устройству» |
Контакт 1 |
Красный |
Контакт 1 |
Контакт 2 |
Белый |
Контакт 2 |
Контакт 3 |
Зелёный |
Контакт 3 |
Контакт 4 |
Чёрный |
Контакт 4 |
Экран |
Оплётка кабеля |
Экран |
См. также Схема распайки разъёмов USB (кабель и устройство)
Бесплатная утилита Flash Drive Information Extractor
Информация о флешке (модель, производитель, версия прошивки) помогает лучше понять устройство, особенности его работы. В свою очередь, это позволяет, продиагностировать, восстановить файлы или исправить работу устройства.
С этой задачей отлично справляется небольшая утилита Flash Drive Information Extractor. Она считывает с флешки все данные и предоставляет пользователю подробную сводку о накопителе: модель контроллера, тип микросхем и ОЗУ.
Особенность программы – работа с флешкой напрямую и предоставление всей необходимой информации. Нет необходимости узнавать VID/PID и затем самостоятельно искать данные о модели. Вся служебная информация доступна сразу же после подключения устройства через usb-порт.
Доступная информация о флешке в Flash Drive Information ExtractorУтилита Flash Drive Information Extractor часто применяется при ремонте флешек, и вот почему:
Какую информацию можно получить о флешке
Flash Drive Information Extractor извлекает служебную информацию, которая пригодится при дальнейшем ремонте флешки и/или восстановлении данных:
- тип контроллера,
- схемы памяти (ОЗУ),
- название ОЗУ, типология,
- вольтаж памяти флешки,
- версия usb-порта,
- количество доступной памяти,
- фактический объем свободного пространства,
- сведения о VID и PID,
- ревизия контроллера,
- ID флешки (не для всех конфигураций),
- другие служебные сведения.
Как пользоваться программой Flash Drive Information Extractor
Пользоваться программой очень просто. Для получения информации о флеш накопителе:
- Подсоедините флешку к ПК через любой доступный разъем USB.
- Откройте приложение Flash Drive Information Extractor (путь – \usbflashinfo\GetFlashInfo.exe).
- Воспользуйтесь командой «Получить информацию о usb-накопителе».
- После считывания носителя, в окне программы отобразятся сведения о флешке.
Особенности работы приложения
- Утилита Flash Drive Information Extractor работает только с flash-памятью. Т.е, аудиоплеер или телефон, подключенные через USB, не будут обнаружены программой. Если вы подключите несовместимое устройство, программа просто не определит ее модель или чип.
- Для корректного распознавания флешки необходимо подождать примерно полминуты (или больше, если носитель содержит ошибки чтения или поврежден) до того момента, пока накопитель не будет полностью определен операционной системой. В противном случае, Flash Drive Information Extractor не определит флеш накопитель в списке устройств и не сможет показать сведения об устройстве.
- Перед работой утилиты отключите все неиспользуемые приложения и программы, которые задействуют низкоуровневый доступ к флешке или другим устройствам. В противном случае FD Information Extractor может конфликтовать с другими низкоуровневыми утилитами.
- Если при определении параметров Flash Drive Information Extractor зависает, следует, не закрывая программу, достать флешку из USB-разъема. Есть вероятность, что служебные данные флеш накопителя корректно отобразятся в окне программы.
Скачать Flash Drive Information Extractor
Win32 Disk Imager – простая программа для создания (записи) образа USB флешки | Info-Comp.ru
Сейчас я Вам расскажу о бесплатной и очень простой программе, которая умеет создавать образы USB флешек в формате IMG, а также записывать эти образы обратно на USB накопители. Кроме того, с помощью нее можно записывать и ISO образы дисков на USB флешку, однако не все такие образы поддерживаются.
Обзор программы Win32 Disk Imager
Win32 Disk Imager – это бесплатная программа для создания необработанного образа USB носителя, а также записи на флешку IMG и ISO образов.
Она Вам может потребоваться, например, в случаях, когда необходимо создать полную копию USB носителя, иными словами, создать архив флешки. Простое копирование файлов Вам не поможет, если, например, на флешке установлена операционная система или загрузочное приложение. Поэтому для резервирования или просто клонирования таких USB устройств и предназначена программа Win32 Disk Imager.
Win32 Disk Imager можно использовать и в случаях, когда необходимо записать ISO образы дисков на USB флешку, но как было уже отмечено, не все такие образы можно записать на флешку, поддерживаются только гибридные. В основном Win32 Disk Imager используется для записи ISO образов дисков с дистрибутивами Linux, некоторые разработчики даже рекомендуют использовать именно эту программу для записи ISO образа с их дистрибутивом Linux на USB флешку, так как никакую обработку ISO образа программа Win32 Disk Imager не производит. Обычно для таких целей используют программы UNetbootin или Rufus, они намного функциональней.
Win32 Disk Imager предназначена для операционной системы Windows и поддерживает следующие версии: Windows 7, 8.1 и 10, как говорят разработчики, программа должна работать и на Windows Server 2008, 2012 и 2016, но эта возможность детально не тестировалась.
Где скачать Win32 Disk Imager?
Скачать программу можно с официальной страницы на сайте sourceforge, вот это страница — https://sourceforge.net/projects/win32diskimager/
После того как Вы перейдёте на страницу, необходимо нажать на зелёную кнопку «Download». В итоге у Вас должен загрузиться дистрибутив программы win32diskimager-1.0.0-install.exe размером около 12 мегабайт.
Установка Win32 Disk Imager на Windows
Процесс установки программы Win32 Disk Imager ничем не отличается от установки других приложений в операционной системе Windows. Давайте кратко пройдёмся по всем пунктам.
Шаг 1
Запускаем инсталлятор и соглашаемся с лицензионным соглашением. Нажимаем «Next».
Шаг 2
В случае необходимости изменяем каталог установки программы. Жмем «Next».
Шаг 3
Если хотим, изменяем каталог установки ярлыков программы. Жмем «Next».
Шаг 4
Отмечаем галочкой пункт «Create a desktop shortcut», если хотим, чтобы ярлык на запуск программы Win32 Disk Imager был создан и на рабочем столе. Жмем «Next».
Шаг 5
Проверяем введённые параметры, и подтверждаем начало процесса установки, нажимаем «Install».
Шаг 6
Установка завершена, нажимаем «Finish».
Запись ISO образа на USB флешку с помощью программы Win32 Disk Imager
Для демонстрации того, как работает программа Win32 Disk Imager, давайте для примера запишем ISO образ диска с дистрибутивом Linux (у меня это Simply Linux) на USB флешку, используя программу Win32 Disk Imager.
Примечание! После того, как ISO образ будет записан на USB флешку, она перестанет определяться в системе Windows, хотя функции загрузочного устройства, если ISO образ был загрузочным, выполнять будет. Чтобы вернуть USB накопитель в прежнее состояние, т.е. чтобы он выполнял функции обычной флешки, необходимо полностью удалить все разделы с него и отформатировать флешку в файловую систему FAT или NTFS.
Шаг 1 – Выбор ISO образа и USB устройства
Запускаем программу, в поле «Image File» указываем образ диска, в поле «Device» выбираем USB флешку, на которую хотим записать образ (чтобы избежать неприятных последствий, советую внимательно указывать целевое устройство).
Нажимаем «Write».
Шаг 2 – Подтверждение записи на флешку
Программа запросит подтверждение на запись образа, так как эта операция удалит все данные с USB устройства. Нажимаем «Yes».
Шаг 3 – Завершение записи
Когда появится сообщение «Write Successful» процесс записи образа будет завершен. Нажимаем «ОК».
Если Вы хотите создать образ флешки в формате IMG, для последующей его записи на другое USB устройство, то в этом случае необходимо нажать кнопку «Read», предварительно указав устройство, на основе которого создавать образ, а также указав название файла и путь к каталогу, где нужно сохранить итоговый образ.
Теперь Вы знаете, что умеет делать программа Win32 Disk Imager, у меня на этом все, пока!
Нравится12Не нравится4Функции USB-токена Jacarta U2F — cryptostore.ru
Jacarta U2F – персональный аппаратный токен нового поколения, предназначенный для осуществления двухфакторной аутентификации. По внешнему виду Jacarta U2F напоминает стильную флешку – привычный USB-коннектор, пластиковый корпус, в котором сочетаются черный и оранжевый или другие цвета (на выбор), имеет не только эстетичный внешний вид, но и обеспечивает дополнительную защиту пользователя от статического электричества. Также U2F-токен оснащен кнопкой подтверждения присутствия пользователя и петлей, которая позволит всегда носить его с собой, например, вместе с ключами.
Jacarta работает по протоколу FIDO U2F, официальная поддержка которого осуществляется браузером Edge и Windows 10, работа с USB-токеном Jacarta U2F возможно и через браузер Google Chrome 38-й или более поздней версии. Также для работы токена необходима поддержка любого из сервисов, перечисленных на сайте www.dongleauth.info. Их количество постоянно растет, на данный момент работу протокола поддерживают сервисы WordPress ,Google, LastPass и другие. Выбор операционных систем для поддержки работы Jacarta U2F достаточно широк: Windows/Linux/MacOS – главным условием является наличие HID-интерфейса.
USB-токен Jacarta U2F предназначен для персонального использования, удобен и прост в настройке. В разделе «Мой аккаунт» любого пользователя Google нужно пройти в подраздел «Безопасность и вход», в котором и находится панель настроек двухэтапной аутентификации. После подтверждения входа через SMS сообщение, присланное на номер вашего телефона, можно будет выполнить необходимые преобразования. После завершения регистрации токена необходимо будет перезапустить браузер и ввести пароль. Теперь можно вставлять токен для его распознавания. После этого двухэтапная атуентификация будет происходить с помощью него – никаких SMS- сообщений на телефон, никакой зависимости от устойчивости сигнала сотовой связи или заряженности аккумулятора телефона. Дополнительный уровень защиты от мошенников, простота и удобство настройки и использования – всё это характеризует новый USB-токен Jacarta U2F. Необходимо только убедиться в том, что все элементы системы поддерживают работу с токеном.
Принцип работы токена заключается в том, что для каждого сервиса он создает уникальный ключ, состоящий из двух частей: одна из них открыта и хранится на сервере, а вторая закрыта (электронная подпись). Всего в памяти токена может храниться до 500 подобных ключевых пар – этого количества более чем достаточно даже для активного использования. Для осуществления авторизации пользователю направляется запрос, который он лично должен подписать при помощи специального закрытого ключа, который хранится на USB-токене Jacarta U2F.
Приобрести инновационный Jacarta U2F и обезопасить свою работы с различными сервисами можно уже сегодня, в интернет-магазине «Cryptostore» вы можете купить его по выгодной цене.
MSI Россия
USB Speed Up поможет!
Представляем USB Speed Up на новых материнских платах X99, Z170 CARBON и TITANIUM. USB Speed Up работает на всех материнских платах MSI X99 и Z170 и совместим с любым USB накопителем, будь то USB 2.0, USB 3.0 или USB 3.1. |
Сравните разницу в производительности (ниже) при включенной опции USB Speed Up и использовании внешнего диска USB 3.1 SSD, подключенного к материнской плате Z170A KRAIT GAMING.
Протестировано СМИ
Hardware.info недавно протестировал USB Speed Up на плате Z170A GAMING PRO CARBON:
Новая утилита «Speed Up» от MSI для улучшения производительности USB 3.1, обеспечивает низкое энергопотребление, когда не одно внешнее устройство не подключено и отличную производительность при подключении накопителя. Из результатов тестирования:
Разница очевидна. Копирование файлов, фильмов и др. медиа контента на USB накопитель происходит значительно быстрее. Читайте полный обзор от Hardware.info здесь: https://goo.gl/kaK964
Производительность USB 3.1 Gen2 еще выше
При использовании современных устройств и самых последних технологий вы получаете еще больше преимуществ при передаче данных на более высоких скоростях. USB 3.1 Gen2 позволяет передавать данные со скоростью до 10 Гб/с, удваивая скорость передачи интерфейса USB 3.0, что в свою очередь в 20x быстрее устаревшего стандарта USB 2.0. USB 3.1 даже быстрее чем SATAIII! Копирование ваших любимых игр, музыки или фильмов через USB еще никогда не было таким быстрым. Следите за выходом новых устройств USB 3.1 Gen2, ведь материнские платы MSI уже поддерживают их.
Новые модели материнских плат MSI X99 и Z170 поддерживают USB Speed Up и USB 3.1 Gen2
Дополнительная информация:
http://www.slideshare.net/MSI_Motherboard/msi-carbon-motherboardsIf your computer doesn’t recognize your iPhone, iPad, or iPod
If you connect your device to your computer with a USB cable and your computer doesn’t recognize your iPhone, iPad, or iPod, learn what to do.
Additional steps for Mac
- Connect your iOS or iPadOS device and make sure that it’s unlocked and on the Home screen.
- On your Mac, choose Finder > Preferences from the Finder menu bar, then click Sidebar at the top of the preferences window. Make sure that «CDs, DVDs and iOS Devices» is checked.
- Press and hold the Option key, then choose System Information from the Apple menu . From the list on the left, select USB.
- If you see your iPhone, iPad, or iPod under USB Device Tree, get the latest macOS or install the latest updates. If you don’t see your device or still need help, contact Apple Support.
Информация о продуктах, произведенных не компанией Apple, или о независимых веб-сайтах, неподконтрольных и не тестируемых компанией Apple, не носит рекомендательного или одобрительного характера. Компания Apple не несет никакой ответственности за выбор, функциональность и использование веб-сайтов или продукции сторонних производителей. Компания Apple также не несет ответственности за точность или достоверность данных, размещенных на веб-сайтах сторонних производителей. Обратитесь к поставщику за дополнительной информацией.
Дата публикации:
USBView в Windows — Драйверы Windows
- Статья
- 2 минуты на чтение
- 3 участника
Полезна ли эта страница?
да Нет
Любая дополнительная обратная связь?
Отзыв будет отправлен в Microsoft: при нажатии кнопки отправки ваш отзыв будет использован для улучшения продуктов и услуг Microsoft.Политика конфиденциальности.
Представлять на рассмотрение
Спасибо.
В этой статье
Средство просмотра универсальной последовательной шины (USBView) или USBView.exe — это приложение Windows с графическим пользовательским интерфейсом, которое можно использовать для просмотра всех USB-контроллеров и подключенных USB-устройств на вашем компьютере. USBView работает на всех версиях Windows.
Где взять USBView
Чтобы загрузить и использовать USBView, выполните следующие действия:
-
Загрузите и установите Windows SDK.
-
Во время установки выберите только поле Средства отладки для Windows и снимите все остальные поля.
-
По умолчанию на ПК с архитектурой x64 SDK установит USBView в следующий каталог.
C:\Program Files (x86)\Windows Kits\10\Debuggers\x64
-
Откройте каталог отладчика комплектов для используемого типа процессора, а затем выберите USBView.exe, чтобы запустить утилиту.
Исходный код USBView
USBView также доступен в репозитории примеров драйверов Windows на GitHub.
Использовать USBView
USBView может перечислять хост-контроллеры USB, концентраторы USB и подключенные устройства USB. Он также может запрашивать информацию об устройствах из реестра и через USB-запросы к устройствам.
Главное окно USBView состоит из двух панелей. На левой панели отображается ориентированное на подключение древовидное представление, которое можно использовать для выбора любого USB-устройства.
На правой панели отображаются структуры данных USB, относящиеся к выбранному USB-устройству. Эти структуры включают дескрипторы устройства, конфигурации, интерфейса и конечной точки, а также текущую конфигурацию устройства.
Используйте диспетчер устройств для отображения информации о USB
Чтобы использовать Диспетчер устройств для отображения информации о USB:
-
Нажмите клавишу с логотипом Windows + R, введите devmgmt.msc во всплывающем окне и нажмите Enter.
-
В диспетчере устройств выберите свой компьютер, чтобы он был выделен.
-
Выберите Действие , а затем выберите Поиск аппаратных изменений .
-
Выберите Просмотр , а затем выберите Скрытые устройства для отображения дополнительных устройств (например, тех, которые в данный момент не активны).
-
Разверните узел Контроллеры универсальной последовательной шины в диспетчере устройств и выберите нужное устройство.
-
Выберите и удерживайте (или щелкните правой кнопкой мыши), чтобы выбрать Свойства и просмотреть сводную информацию о состоянии устройства.
-
Выберите вкладку Подробности для просмотра дополнительной информации.
-
Выберите Свойство для просмотра сведений, таких как Статус или Код проблемы .
Средство устранения неполадок USB для Windows
Если вы пытаетесь диагностировать USB-устройство, которое не извлекается, с помощью диалогового окна Safely Remove Hardware , попробуйте использовать средство устранения неполадок Windows USB.
См. также
ОписаниеUSBDeview — это небольшая утилита, которая выводит список всех USB-устройств, которые в данный момент подключены к вашему компьютеру, а также все USB-устройства, которые вы использовали ранее.Для каждого USB-устройства отображается расширенная информация: имя/описание устройства, тип устройства, серийный номер (для запоминающих устройств), дата/время добавления устройства, VendorID, ProductID и т. д. USBDeview также позволяет удалять ранее использовавшиеся USB-устройства, отключать USB-устройства, которые в данный момент подключены к вашему компьютеру, а также для отключения и включения USB-устройств. Вы также можете использовать USBDeview на удаленном компьютере, если вы входите на этот компьютер с правами администратора.
Поиск других утилит в NirSoftЛицензияЭта утилита распространяется бесплатно. Вам разрешено свободно распространять эту утилиту на дискетах, CD-ROM, Интернет, или любым другим способом, главное, чтобы вы ничего за это не брали. Если вы распространяете эту утилиту, вы должны включить все файлы в дистрибутив, без каких-либо модификаций!Отказ от ответственностиПрограммное обеспечение предоставляется «КАК ЕСТЬ» без каких-либо явных или подразумеваемых гарантий, включая, но не ограничиваясь, подразумеваемые гарантии товарного состояния и пригодности для определенной цели.Автор не несет ответственности за какие-либо особые, случайные, косвенный или косвенный ущерб из-за потери данных или по любой другой причине.Системные требования
Известные проблемы
История версий
Использование USBDeviewUSBDeview не требует установки или дополнительных файлов DLL. Просто скопируйте исполняемый файл (USBDeview.exe) в любую понравившуюся папку и запустите его.В главном окне USBDeview отображаются все USB-устройства, установленные в вашей системе. Вы можете выбрать один или несколько элементов, а затем отключить (отключить) их, удалить или просто сохранить. информацию в файл text/xml/html. Описание столбцов USBDeview
Легенда значков USBDeview
Столбцы «Имя поставщика» и «Название продукта»Начиная с версии 1.35, вы можете просматривать название производителя и название продукта ваших USB-устройств.Чтобы использовать эту функцию, вам необходимо загрузить список USB-идентификаторов Стивена Дж. Гауди. (http://www.linux-usb.org/usb.ids) и поместите файл в ту же папку, что и USBDeview.exe.Имя файла должно оставаться «usb.ids». Тест скорости для флэш-накопителей USBНачиная с версии 1.40, USBDeview позволяет тестировать скорость чтения/записи вашего USB-накопителя. Тест выполняется путем записи большого файла (с именем $speed_test_nirsoft$.dat) на флэш-накопитель USB, а затем его чтения для проверки скорости чтения.Имейте в виду, что вам нужно как минимум 100 МБ свободного места на диске, чтобы успешно пройти этот тест скорости. Также имейте в виду, что этот тест выполняется с последовательными операциями чтения и записи. При использовании нескольких небольших файлов производительность чтения/записи обычно намного ниже, чем при последовательном чтении/записи.Для того, чтобы сделать тест скорости вашей флешки, просто выберите нужный пункт в главном окне, а затем выберите пункт «Тест скорости» в меню «Файл» или нажмите Ctrl+T. В окне проверки скорости убедитесь, что выбрана правильная буква диска, а затем нажмите кнопку «Начать проверку».Подождите несколько секунд, пока не закончатся тесты записи и чтения. Публикация результатов теста скоростиЕсли вы хотите поделиться результатами теста скорости, чтобы другие люди, которые хотят приобрести флэш-накопитель USB, могли легко сравнить скорость различных флэш-накопителей, вы можете использовать для этого опцию «Опубликовать результаты теста».Когда вы успешно завершите тест скорости, кнопка «Опубликовать результат теста» будет активирована автоматически. При нажатии на эту кнопку открывается новое окно, в котором отображаются все данные, которые будут отправлены на http://usbspeed.веб-сайт nirsoft.net, и попросите вас подтвердить публикацию теста скорости. Имейте в виду, что только данные, отображаемые в этом окне, передаются на веб-сайт http://usbspeed.nirsoft.net. USBDeview не отправляет серийный номер вашего USB-устройства или любую другую информацию, которая может нарушить вашу конфиденциальность. АвтозапускНачиная с версии 1.10, USBDeview позволяет автоматически запускать файл на устройствах флэш-памяти USB в соответствии с именем файла AutoRun.inf. Вы можете вручную активировать функцию автозапуска, выбрав нужное устройство и нажав F8.Кроме того, вы можете установить флажок «Автозапуск при подключении устройства», а затем функция будет автоматически активирована при подключении устройства флэш-памяти USB.Имейте в виду, что эта функция работает только в том случае, если USBDeview определяет букву диска устройства. Выполнение команды при вставке USB-устройстваНачиная с версии 1.10, USBDeview позволяет выполнять команду из файла exe/cmd/bat при каждой вставке USB-устройство к вашей системе. Чтобы использовать эту функцию, перейдите в «Параметры» -> «Дополнительные параметры», выберите «Выполнить»..’ флажок и введите файл exe/cmd, который вы хотите запустить. Вы также можете использовать следующие специальные переменные в этой командной строке: %device_name%, %device_desc%, %drive%, %serial_number%, %vid%, %pid%, %vid_hex%, %pid_hex% , %device_type%, %service_name%, %device_class%, %device_mfg%USBDeview автоматически заменит эти переменные соответствующими данными вставленного устройства. Например, если вы хотите передать в свой exe-файл 2 параметра — серийный номер устройства и букву диска: к:\темп\тест.exe «%serial_number%» «%drive%» Известные ограничения/проблемы
Подключение к удаленному компьютеруСледующие параметры командной строки позволяют подключаться к удаленным компьютерам. Вы должны войти на удаленный компьютер с правами администратора, чтобы использовать эти параметры.
Подключение к внешнему файлу системного реестраЕсли у вас есть файл реестра «SYSTEM» внешней операционной системы, вы можете использовать следующий параметр командной строки, чтобы прочитать из него список USB-устройств:/regfile <системный файл реестра>
Например:
Этот вариант имеет некоторые ограничения:
Параметры командной строки Stop/Disconnect
Отключить/включить/удалить параметры командной строкиНачиная с версии 1.20, вы также можете использовать следующие команды для отключения, включения или удаления USB-устройства из командной строки:
USBDeview.exe/RunAsAdmin/disable «USB\Vid_1058&Pid_1023\85395834 Проверить, подключено/отключено ли устройство или включено/отключеноНачиная с версии 2.70, вы можете проверить, подключено/отключено ли устройство или включено/отключено с помощью следующие параметры командной строки:
Например, следующий пакетный файл будет отображать 1, если устройство с серийным номером 7538957348957398 подключено, или 0, если устройство не подключено: USBDeview.exe /is_connected_by_serial «7538957348957398» эхо %ERRORLEVEL% Сохранить параметры командной строки
Перевод USBDeview на другие языкиЧтобы перевести USBDeview на другой язык, следуйте приведенным ниже инструкциям:
Обратная связьЕсли у вас есть проблема, предложение, комментарий или вы нашли ошибку в моей утилите, вы можете отправить сообщение на [email protected]USBDeview также доступен на других языках. Для того, чтобы изменить язык USBDeview, загрузите zip-файл соответствующего языка, извлеките «usbdeview_lng.ini», и поместите его в ту же папку, в которую вы установили утилиту USBDeview. |
Информация об устройстве USB
Описание
Android 3.1 представил режим хоста USB, который позволяет пользователю подключать USB-устройства к планшету Android так же, как к настольному ПК, и расширять его функциональность (конечно, если планшет имеет правильные драйверы).
Это приложение предоставит информацию почти обо всех подключенных в данный момент USB-устройствах (дополнительную информацию о «почти» см. ниже).
Информация включает:
- Класс устройств
- Путь USB-устройства
- Идентификатор поставщика (VID) и идентификатор продукта (PID).
- A Список всех интерфейсов и их конечных точек.
Нет объявлений.
Это приложение использует два разных метода для сбора информации:
- Режим Android будет использовать собственный USB API Android.
- Режим Linux будет анализировать /sys/bus/usb/devices/.
В каждом режиме (Android/Linux) информация немного отличается. Например, режим Android предоставит вам больше информации о конечных точках и интерфейсах устройства, а режим Linux предоставит больше информации о самом устройстве (серийный номер, способ идентификации и т. д.)
.Скриншоты
|
- Если вы загрузите сопутствующие базы данных, приложение также сможет предоставить вам дополнительную информацию, такую как производитель устройства (не обязательно бренд!), логотип производителя и название продукта.
- База данных Vendor ID используется моим приложением «База данных USB VEN/DEV». Обновление в одном приложении также обновит другое.
- Поскольку это приложение использует Android API по умолчанию, некоторые устройства могут не отображаться. USB-концентраторы (и устройства, подключенные к ним) являются невидимым событием, хотя они, кажется, работают правильно, а мыши, кажется, отфильтровываются из предоставленного списка. Я ищу способы исправить это.
- Экспорт в файл/электронную почту и разрешение подкласса устройства будут добавлены в следующей версии.
- Я написал это приложение в качестве упражнения для изучения фрагментов и нового API хоста USB. Надеюсь, это будет полезно для кого-то еще.
- База данных анализируется с: http://www.linux-usb.org/usb.ids
Список изменений
- v0.0.1 Первый общедоступный выпуск
- v0.0.2 Исправлено несколько строковых ошибок.
- v0.1.3 Добавлена кнопка «Скрыть». Изменено имя базы данных SD-карты на android_usb.db3.
- v0.1.4 Изменена минимальная ОС на 1.6 для поддержки больших экранов, исправление для FC при загрузке БД.
Разрешение Пояснение
- ACCESS_NETWORK_STATE: используется для проверки того, подключено ли устройство к сети и с помощью какого интерфейса.
- ИНТЕРНЕТ: Используется для подключения к сети и загрузки обновленной базы данных.
- WRITE_EXTERNAL_STORAGE: используется для записи базы данных на SD-карту.
Благодарности
- Все логотипы являются собственностью соответствующих владельцев
Исходный код
Вы можете скачать исходный код с GitHub: https://github.com/alt236/USB-Device-Info—Android
Под лицензией Apache License 2.0: http://www.apache.org/licenses/LICENSE-2.0.txt
Скачать
Чтобы загрузить приложение, вам нужно перейти на Android Market и выполнить поиск «Информация об устройстве USB».
В качестве альтернативы используйте приложение, такое как сканер штрих-кода, для сканирования приведенного ниже QR-кода (или щелкните его на своем устройстве Android):
|
Список USB-устройств Linux
В мире компьютерных периферийных устройств USB почти каждый использует какие-либо USB-устройства в своем компьютере.В наши дни есть веб-камеры USB, жесткие диски USB, USB-накопители, также известные как PenDrive и т. д. Почти каждое устройство имеет его USB-версию. Поэтому, если вы используете Linux, в какой-то момент может потребоваться указать, какое USB-устройство подключено к вашей системе.
В Linux существует множество программ и способов вывода списка USB-устройств.
В этой статье я покажу вам, как составить список USB-устройств в Linux. Для демонстрации я использую Ubuntu 18.04 Bionic Beaver, но эти команды доступны в каждом дистрибутиве Linux.Итак, давайте начнем.
Список USB-устройств с помощью команды
lsusbШироко используемая команда lsusb может использоваться для вывода списка всех подключенных USB-устройств в Linux.
Как видно из вывода команды lsusb на снимке экрана ниже, перечислены все подключенные USB-устройства. Идентификатор шины, идентификатор устройства, идентификатор USB и название отображаются в выводе команды lsusb .
Как вы можете видеть в отмеченной части скриншота ниже, Realtek Semiconductor Corp. с ID 0bda:57cb , это моя веб-камера USB.
Вы не можете сказать, что это веб-камера, глядя на вывод команды lsusb , не так ли? Неа! Так откуда я это знаю? Это потому, что я проверил выходные данные команды lsusb до и после подключения веб-камеры USB, и после сравнения выходных данных новая добавленная строка — это подключенное USB-устройство. Простой! Но есть способы узнать, что такое USB-устройство.
Вы можете использовать команду dmesg , чтобы узнать больше информации о подключенных USB-устройствах.Последнее подключенное USB-устройство проще всего найти с помощью команды dmesg . Он более широко используется для целей отладки. Вскоре вы поймете, почему.
Вы запускаете команду dmesg следующим образом:
Как вы можете видеть в выделенном желтым поле на снимке экрана ниже, это информация о USB-устройстве, которое я подключал последним, которым была моя USB-веб-камера. Вы можете увидеть в одном из синих прямоугольников USB-устройство, которое я подключил, — это HD UVC WebCam , а его идентификатор — 0bda:57cb .
К настоящему времени вы, возможно, узнали, что вывод команды dmesg — это сообщения системного журнала. Ну да, это так.
Вы также можете выполнить поиск определенного USB-устройства по его идентификатору в системном журнале dmesg .
Выполните следующую команду, чтобы открыть вывод команды dmesg с текстовым пейджером меньше :
Вы должны увидеть следующее окно:
Теперь, чтобы найти строку, нажмите клавишу / на клавиатуре.И вы должны отобразить / в нижней части окна терминала, как показано на скриншоте ниже.
Теперь введите идентификатор USB-устройства. Например, ранее, когда я перечислял подключенные USB-устройства с помощью команды lsusb, одно из USB-устройств имело идентификатор 0bda:57cb
. Введите идентификатор USB-устройства и нажмите
Вы можете нажимать клавиши со стрелками <Вверх> и <Вниз> для перемещения вверх и вниз и чтения.Вы должны найти много информации об этом USB-устройстве, как вы можете видеть в отмеченном разделе на снимке экрана ниже.
Список USB-устройств с
usb-устройствами КомандаВы можете запустить следующую команду, чтобы получить список всех подключенных USB-устройств вашей системы:
Как видно на скриншоте ниже, перечислены все подключенные USB-устройства. мы можем узнать практически ту же информацию, что и раньше, с помощью команды usb-devices .
Блокировка списка USB-устройств
Если вы хотите вывести список всех блочных USB-накопителей, то есть всех USB-накопителей, вы можете использовать для этого команду lsblk или fdisk .
Список блочных запоминающих устройств USB с lsblk :
Как видно на снимке экрана ниже, перечислены все доступные блочные запоминающие устройства (включая блочные запоминающие устройства USB).
Вы можете получить почти ту же информацию, что и команда lsblk с командой blkid .Но вы должны запустить его как root следующим образом:
Вы также можете использовать команду fdisk для вывода списка всех блочных запоминающих устройств USB следующим образом:
Как видно на снимке экрана ниже, перечислены подключенные блочные запоминающие устройства (включая USB-устройства).
Вот как вы перечисляете все USB-устройства в Linux. Спасибо, что прочитали эту статью.
Управление устройством Udev и USB-устройствами — Документация Unix Memo v1.10-3-gda2b86f
местные правила
Некоторые локальные правила udev должны быть помещены перед значениями по умолчанию, потому что первое
применяется правило соответствия, некоторые другие правила могут быть размещены после основного
правил и будет изменять только еще созданное устройство, как при изменении
разрешения, добавьте символическую ссылку или действие RUN
.
Нам также нужно проверить, что каждое правило совпадает со всеми ключами, и правило соответствуют ровно одному устройству.
Вы можете поместить свои правила в /etc/udev/rules.d/
, а так как правила используются в
лексикографическом порядке, вы даете надлежащий приоритет, чтобы они использовались до или после
соответствующее правило в /lib/udev/rules.d/
.
Если вы хотите заменить предоставленным правилом в /lib/udev/rules.d/
, вы можете просто написать
правило с таким же именем в /etc/udev/rules.d/
, поскольку они имеют приоритет над
/lib
правила.
поиск usb-устройств
-
Чтобы получить список USB-устройств, введите:
-
Чуть более информативный список получается:
$ lsusb -v \| grep -E '<(Bus\|iProduct\|bDeviceClass\|bDeviceProtocol)' 2>/dev/null
-
Получить подробную информацию можно по телефону
Многие ключи в lsusb
являются атрибутами udevadm info
и могут
использоваться в конфигурации udev.
Использование ключей /sys
Мы получаем ключи, ища информацию о dev /sys
, с
удевадм информация
:
-
найти ключ либо
- Затем мы можем найти соответствующие ключи для уникальной идентификации нашего устройства:
SYSFS{производитель}=="Hewlett-Packard" SYSFS{продукт}=="DeskJet 840C"
- Затем мы добавляем наше правило в /etc/udev/rules.d/10-local.rules
BUS=="usb", SYSFS{product}=="DeskJet 840C", NAME="%k", KERNEL=="lp[0-9]*", NAME="usb/%k", ГРУППА ="lp", SYMLINK="deskjet"
-
Перезагрузить udev conf по:
$ управление udevadm --reload
-
Проверьте конфигурацию с помощью:
$ udevadm test $(udevadm info -q path -n /dev/usb/lp0)
или:
$ udevadm test /class/usb/lp0 usb main: просмотр устройства '/class/usb/lp0' из подсистемы 'usb' main: открыт class_dev->name='lp0' udev_rules_get_name: сбросить список символических ссылок udev_rules_get_name: добавить символическую ссылку «deskjet» udev_rules_get_name: применено правило, «lp0» становится «usb/lp0» create_node: создание узла устройства '/dev/usb/lp0', основной = '180', младший = '0', режим = '0660', uid = '0', gid = '7' create_node: создание символической ссылки «/dev/deskjet» на «usb/lp0»
- обратите внимание, что это всего лишь симуляция udev, а не настоящее создание udev устройства, я экспериментировал со случаями, когда udevtest работал, но удев нет.В некоторых случаях кажется, что это было вызвано несколькими устройства, соответствующие одному и тому же ключу.
- Если устройство еще присутствовало, перезагрузите правила или перезапустите udev, недостаточно иметь новое устройство, вы должны отключить устройство, это может быть горячее подключение, если оно доступно, в противном случае вы нужно перезагрузить компьютер.
-
Теперь у нас должно быть:
$ ls -l /dev/usb/lp0 crw-rw---- 1 root lp 180, 0 14 марта 21:42 /dev/usb/lp0 $ ls -l /dev/deskjet lrwxrwxrwx 1 root root 7 апр 7 18:23 /dev/deskjet -> usb/lp0
Таким же образом мы можем связать определенное массовое хранилище со специальной записью /dev
с помощью
глядя на ключи по:
$ udevadm info -a -p $(udevadm info -q путь -n /dev/uba1)
, затем добавьте в /etc/udev/rules.д/10-мест.правила
BUS="usb", SYSFS{serial}="0402170100000020EB5D00000000000", KERNEL="ub?1", NAME="%k", SYMLINK="usbfoo"
Но обычно лучше использовать предоставленные симлинки, которые еще позволяют постоянное именование.
Если мы хотим автоматически монтировать какое-либо съемное хранилище, мы можем создать правило в
/etc/udev/rules.d/
и используйте systemd-mount для его монтирования. Как недавняя справочная страница
объяснить в разделе База данных udev
правило udev, подобное следующему, автоматически монтирует все подключенные USB-накопители:
ACTION=="добавить", SUBSYSTEMS=="usb", SUBSYSTEM=="блокировать", ENV{ID_FS_USAGE}=="файловая система", \ RUN{program}+="/usr/bin/systemd-mount --no-block --automount=yes --collect $devnode"
В этом случае systemd-mount
учитывает дополнительные свойства udev.
SYSTEMD_MOUNT_OPTIONS=
для предоставления дополнительных параметров монтирования, SYSTEMD_MOUNT_WHERE=
Путь файловой системы для размещения точки монтирования вместо /run/media/system/
.
Здесь, чтобы смонтировать конкретный USB-ключ, мы создаем правило, используя некоторые ключи для идентификации файловая система с использованием ключей из верхней записи sysfs и, возможно, также из родителя, например это:
ДЕЙСТВИЕ=="добавить" ПОДСИСТЕМЫ=="USB" ПОДСИСТЕМА=="блокировать" ATTRS{серийный}=="0709289778d6a5" АТТР{раздел}=="1" RUN{program}+="/usr/bin/systemd-mount --no-block --automount=yes --discover $devnode"
Здесь серийный номер
идентифицирует USB-ключ, поэтому мне нужно добавить номер раздела, чтобы правильно
идентифицировать раздел.Смонтированное устройство в каталоге /run/media/system
Для дисковых устройств вы можете использовать любое постоянное имя для их идентификации.
Та же информация, используемая символическими ссылками в дереве /dev/disk/
и ref: , о которой сообщает ldblk.
$ udevadm info --query=property -n /dev/sdc
как ID_SERIAL
, ID_SERIAL_SHORT
, ID_WWN
для диска, а также для раздела
файловая система ID_FS_UUID
, ID_FS_LABEL
, ID_PART_ENTRY_UUID
(вместо PARTUUID
за фунты).Эти переменные доступны в правилах udev как ENV{``*variable*
}«.
Если я добавлю метку к разделу моего USB-ключа, теперь я могу использовать:
ДЕЙСТВИЕ=="добавить" ПОДСИСТЕМЫ=="USB" ПОДСИСТЕМА=="блокировать" ENV{ID_FS_LABEL}=="VFAT_SHARE" ENV{SYSTEMD_MOUNT_OPTIONS}="gid=джон,uid=джон" ENV{SYSTEMD_MOUNT_WHERE}="/run/media/john/$env{ID_FS_LABEL}" RUN{program}+="/usr/bin/systemd-mount --no-block --automount=yes $devnode"
, и я нахожу подключенное устройство по адресу /run/media/john/VFAT_SHARE
с пользователем john и
группа.
отладка udev
Для отладки udev мы можем:
-
использование
тест удевадм
-
журнал
udevd
по выдаче:в
/etc/udev.conf
и изменить уровень отладки на:$ udevadm control log_priority=уровень
приоритет числовой или символьный уровень из systlog ошибка , информация и отладка
-
udevadm monitor
сообщает на консоль об активности udevd
Загрузить средство извлечения информации с флэш-накопителя 9.4.0.645
Подробную информацию об устройстве не всегда легко получить без специализированного инструмента, поэтому может пригодиться такая программа, как Flash Drive Information Extractor .
Это относительно простая утилита, которая может проанализировать подключенный USB-накопитель и предоставить вам внушительный объем информации. Эти данные можно легко извлечь, и в целом приложение очень удобно для новичков.
Проверка USB-накопителей и получение подробной информации об устройстве
В первую очередь следует отметить, что средство извлечения информации с флэш-накопителя необходимо запускать в режиме администратора, если вы хотите обеспечить извлечение всех доступных сведений об устройстве.Кроме того, перед запуском сканирования рекомендуется убедиться, что другие процессы не обращаются к диску, чтобы гарантировать его доступность во время анализа.
После того, как все подготовлено, вам нужно только нажать кнопку «Получить информацию о USB-накопителе» и дождаться, пока программа завершит сканирование. Результаты отображаются в главном окне, и вы можете скопировать их в буфер обмена одним щелчком мыши.
Легкий инструмент, не требующий установки
Еще одним положительным моментом, о котором стоит упомянуть, является тот факт, что Flash Drive Information Extractor можно развернуть с минимальными усилиями, так как вам не нужно проходить процедуру установки перед использованием приложения.
Кроме того, поскольку программное обеспечение не хранит данные в других местах на вашем ПК и не создает новых записей в реестре, вы можете легко удалить его, не беспокоясь о том, чтобы оставить какие-либо следы.
Простое приложение, в котором отсутствует документация на английском языке
По большей части функции программы говорят сами за себя. Новые пользователи не должны сталкиваться с какими-либо проблемами при попытке сканирования своих дисков, поскольку в приложении есть полезные инструкции.
Однако было бы здорово, если бы прилагаемая документация была также доступна на английском языке, так как в определенных ситуациях она могла бы оказаться полезной.
В целом, Flash Drive Information Extractor — это простая и надежная утилита, которая позволяет сканировать USB-накопитель и собирать полезную информацию за пару простых шагов. Он легкий, портативный и простой в использовании, но ему не хватает соответствующей документации.
Доступ к USB-устройствам в Интернете
WebUSB API делает использование USB более безопасным и простым, предоставляя доступ к сети.
— обновлено
Если бы я сказал прямо и просто «USB», есть большая вероятность, что вы сразу же подумаете о клавиатурах, мышах, аудио-, видео- и устройствах хранения данных. . Вы правы, но вы найдете и другие типы устройств с универсальной последовательной шиной (USB).
Эти нестандартные USB-устройства требуют, чтобы поставщики оборудования написали драйверы и SDK для конкретных платформ, чтобы вы (разработчик) могли воспользоваться ими.К сожалению, этот специфичный для платформы код исторически препятствовал использованию этих устройств в Интернете. И это одна из причин, по которой был создан WebUSB API: предоставить способ предоставлять доступ к службам USB-устройств в Интернете. С помощью этого API производители оборудования смогут создавать кроссплатформенные SDK JavaScript для своих устройств. Но самое главное, это сделает USB более безопасным и простым в использовании, сделав его доступным для Интернета .
Давайте посмотрим, какое поведение вы можете ожидать от WebUSB API:
- Купите USB-устройство.
- Подключите его к компьютеру. Сразу же появляется уведомление с указанием нужного веб-сайта для этого устройства.
- Щелкните уведомление. Сайт есть и готов к использованию!
- Нажмите, чтобы подключиться, и в Chrome появится окно выбора USB-устройства, где вы сможете выбрать свое устройство.
Тада!
На что была бы похожа эта процедура без WebUSB API?
- Установите приложение для конкретной платформы.
- Если это даже поддерживается в моей операционной системе, убедитесь, что я загрузил то, что нужно.
- Установить вещь. Если вам повезет, вы не получите страшных подсказок ОС или всплывающих окон, предупреждающих вас об установке драйверов/приложений из Интернета. Если вам не повезло, установленные драйверы или приложения работают со сбоями и наносят вред вашему компьютеру. (Помните, сеть создана для того, чтобы содержать неисправные веб-сайты).
- Если вы воспользуетесь функцией только один раз, код останется на вашем компьютере, пока вы не решите его удалить. (В Интернете неиспользуемое пространство со временем освобождается.)
Прежде чем начать #
В этой статье предполагается, что у вас есть базовые знания о том, как работает USB.Если нет, я рекомендую прочитать USB в NutShell. Для получения справочной информации о USB ознакомьтесь с официальными спецификациями USB.
WebUSB API доступен в Chrome 61.
Доступно для исходных пробных версий #
Чтобы получить как можно больше отзывов от разработчиков, использующих WebUSB API в полевых условиях, мы ранее добавили эту функцию в Chrome 54 и Chrome 57 в качестве пробной версии.
Последняя пробная версия успешно завершилась в сентябре 2017 года.
Конфиденциальность и безопасность #
Только HTTPS #
Из-за мощности этой функции она работает только в защищенных контекстах.Это означает, что вам нужно будет строить с учетом TLS.
Требуется жест пользователя #
В качестве меры безопасности navigator.usb.requestDevice()
может вызываться только с помощью жеста пользователя, такого как касание или щелчок мышью.
Политика функций #
Политика функций — это механизм, который позволяет разработчикам выборочно включать и отключать различные функции браузера и API. Его можно определить с помощью заголовка HTTP и/или атрибута «разрешить» iframe.
Вы можете определить политику функций, которая контролирует, отображается ли атрибут usb в объекте Navigator, или, другими словами, разрешаете ли вы WebUSB.
Ниже приведен пример политики заголовков, где WebUSB запрещен:
Feature-Policy: fullscreen "*"; USB «нет»; платеж "сам" https://payment.example.com
Ниже приведен еще один пример контейнерной политики, в которой разрешен USB:
iframe allowpaymentrequest allow="usb; fullscreen"></iframe>
Давайте start coding #
WebUSB API сильно зависит от JavaScript Promises. Если вы не знакомы с ними, ознакомьтесь с этим замечательным руководством по промисам.Еще одна вещь: () => {}
— это просто стрелочные функции ECMAScript 2015.
Получить доступ к USB-устройствам #
Вы можете либо предложить пользователю выбрать одно подключенное USB-устройство, используя navigator.usb.requestDevice()
, либо вызвать navigator.usb.getDevices()
, чтобы получить список всех подключенные USB-устройства, к которым у источника есть доступ.
Функция navigator.usb.requestDevice()
принимает обязательный объект JavaScript, который определяет фильтров
.Эти фильтры используются для сопоставления любого USB-устройства с заданным идентификатором поставщика ( vendorId
) и, при необходимости, идентификатором продукта ( productId
). Ключи classCode
, protocolCode
, serialNumber
и subclassCode
также могут быть определены здесь. Подсказка пользователя USB-устройства.
Например, вот как получить доступ к подключенному устройству Arduino, настроенному для разрешения источника.
navigator.usb.requestDevice({ фильтры: [{vendorId: 0x2341 }] })
.then(device => {
console.log(device.productName); // "Arduino Micro"
console.log(device.manufacturerName); // "Arduino LLC"
})
.catch(error => { console .ошибка(ошибка);});
Прежде чем вы спросите, я не придумал это шестнадцатеричное число 0x2341
волшебным образом. Я просто искал слово «Arduino» в этом списке идентификаторов USB.
Устройство USB
, возвращенное в соответствии с приведенным выше обещанием, содержит некоторую базовую, но важную информацию об устройстве, такую как поддерживаемая версия USB, максимальный размер пакета, идентификатор производителя и продукта, количество возможных конфигураций, которые может иметь устройство.В основном он содержит все поля дескриптора USB устройства.
Кстати, если USB-устройство объявляет о своей поддержке WebUSB, а также определяет URL-адрес целевой страницы, Chrome будет отображать постоянное уведомление при подключении USB-устройства. При нажатии на это уведомление откроется целевая страница.Уведомление WebUSB .
Оттуда вы можете просто вызвать navigator.usb.getDevices()
и получить доступ к вашему устройству Arduino, как показано ниже.
navigator.usb.getDevices().then(devices => {
devices.forEach(device => {
console.log(device.productName); // "Arduino Micro"
console.log(device.manufacturerName); // "Arduino LLC"
}) ;
})
Разговор с USB-платой Arduino #
Хорошо, теперь давайте посмотрим, насколько просто общаться с платой Arduino, совместимой с WebUSB, через USB-порт. Ознакомьтесь с инструкциями на странице https://github.com/webusb/arduino, чтобы включить поддержку WebUSB для своих эскизов.
Не волнуйтесь, я расскажу обо всех методах устройства WebUSB, упомянутых ниже, позже в этой статье.
пусть устройство; navigator.usb.requestDevice({ фильтры: [{vendorId: 0x2341 }] })
.then(selectedDevice => {
device = selectedDevice;
return device.open(); // Начать сеанс.
})
.then(() => device.selectConfiguration(1)) // Выбираем конфигурацию №1 для устройства.
.then(() => device.claimInterface(2)) // Запрос монопольного управления интерфейсом №2.
.then(() => device.controlTransferOut({
requestType: 'class',
получатель: 'interface',
request: 0x22,
value: 0x01,
index: 0x02})) // Готов к приему данных
.then(() => device.transferIn(5, 64)) // Ожидание 64 байт данных от конечной точки №5.
.then(result => {
const decoder = new TextDecoder();
console.log('Получено: ' + decoder.decode(result.data));
})
.catch(error => { console. ошибка(ошибка); });
Имейте в виду, что библиотека WebUSB, которую я использую, всего лишь реализует один пример протокола (на основе стандартного последовательного протокола USB) и что производители могут создавать любой набор и типы конечных точек по своему желанию.Передача управления особенно удобна для небольших команд настройки, поскольку они получают приоритет шины и имеют четко определенную структуру.
А вот и скетч, загруженный на плату Arduino.
// Сторонняя библиотека WebUSB для Arduino
#include <WebUSB.h> WebUSB WebUSBSerial(1 /* https:// */, "webusb.github.io/arduino/demos");
#define Serial WebUSBSerial
void setup() {
Serial.begin(9600);
в то время как (! Серийный) {
; // Подождите, пока подключится последовательный порт.
}
Serial.write("WebUSB FTW!");
Serial.flush();
}
void loop() {
// Пока ничего.
}
Сторонняя библиотека WebUSB Arduino, используемая в приведенном выше примере кода, в основном выполняет две функции:
- Устройство действует как устройство WebUSB, позволяя Chrome считывать URL-адрес целевой страницы.
- Предоставляет серийный API WebUSB, который можно использовать для переопределения стандартного.
Посмотрите еще раз на код JavaScript.Как только я получаю устройство
, выбранное пользователем, device.open()
запускает все шаги, специфичные для платформы, чтобы начать сеанс с USB-устройством. Затем мне нужно выбрать доступную конфигурацию USB с помощью device.selectConfiguration()
. Помните, что конфигурация определяет способ питания устройства, его максимальное энергопотребление и количество интерфейсов. Говоря об интерфейсах, мне также нужно запросить эксклюзивный доступ с помощью device.claimInterface()
, поскольку данные могут быть переданы интерфейсу или связанным с ним конечным точкам только тогда, когда интерфейс заявлен.Наконец, вызов device.controlTransferOut()
необходим для настройки устройства Arduino с соответствующими командами для связи через WebUSB Serial API.
Оттуда device.transferIn()
выполняет массовую передачу на устройство, чтобы сообщить ему, что хост готов принимать массовые данные. Затем обещание выполняется с объектом результата
, содержащим данные DataView , которые должны быть проанализированы соответствующим образом.
Если вы знакомы с USB, все это должно показаться вам знакомым.
Я хочу больше #
WebUSB API позволяет взаимодействовать со всеми типами передачи/конечных точек USB:
- Передачи CONTROL, используемые для отправки или получения параметров конфигурации или команд на USB-устройство, обрабатываются с помощью
controlTransferIn(setup , длина)
иcontrolTransferOut(настройка, данные)
. - Передачи INTERRUPT, используемые для небольшого количества чувствительных ко времени данных, обрабатываются теми же методами, что и BULK-передачи с
transferIn(endpointNumber, length)
иtransferOut(endpointNumber, data)
. - ISOCHRONOUS-передачи, используемые для потоков данных, таких как видео и звук, обрабатываются с помощью
isochronousTransferIn(endpointNumber, packetLengths)
иisochronousTransferOut(endpointNumber, data, packetLengths)
. - BULK-передачи, используемые для надежной передачи большого количества несрочных данных, обрабатываются с помощью
transferIn(endpointNumber, length)
иtransferOut(endpointNumber, data)
.
Вы также можете ознакомиться с проектом Майка Цао WebLight, в котором представлен первый пример создания управляемого через USB светодиодного устройства, разработанного для API WebUSB (здесь не используется Arduino).Вы найдете оборудование, программное обеспечение и встроенное ПО.
Отменить доступ к USB-устройству #
Веб-сайт может очистить разрешения на доступ к USB-устройству, которое ему больше не нужно, вызвав забудьте ()
на экземпляре USBDevice
. Например, для образовательного веб-приложения, используемого на общем компьютере со многими устройствами, большое количество накопленных разрешений, созданных пользователями, усложняет взаимодействие с пользователем.
// Добровольно отозвать доступ к этому USB-устройству.
ожидание device.forget();
Поскольку забудьте()
доступно в Chrome 101 или более поздней версии, проверьте, поддерживается ли эта функция, с помощью следующего:
if ("usb" в navigator && "forget" в USBDevice.prototype) {
// забыть() поддерживается.
}
Ограничения на размер передачи #
Некоторые операционные системы накладывают ограничения на объем данных, которые могут быть частью ожидающих транзакций USB. Разделение ваших данных на более мелкие транзакции и отправка только нескольких за раз помогает избежать этих ограничений.Это также уменьшает объем используемой памяти и позволяет вашему приложению сообщать о ходе выполнения передачи.
Поскольку несколько передач, отправленных на конечную точку, всегда выполняются по порядку, можно повысить пропускную способность, отправив несколько чанков в очередь, чтобы избежать задержки между передачами USB. Каждый раз, когда блок полностью передается, он уведомляет ваш код о том, что он должен предоставить больше данных, как описано в примере вспомогательной функции ниже.
const BULK_TRANSFER_SIZE = 16 * 1024; // 16 КБ
const MAX_NUMBER_TRANSFERS = 3; асинхронная функция sendRawPayload (устройство, endpointNumber, данные) {
let i = 0;
пусть pendingTransfers = [];
пусть оставшиеся байты = данные.длина байта;
в то время как (оставшиеся байты> 0) {
const chunk = data.subarray (
i * BULK_TRANSFER_SIZE,
(i + 1) * BULK_TRANSFER_SIZE
);
// Если мы достигли максимального количества передач, подождем.
if (pendingTransfers.length == MAX_NUMBER_TRANSFERS) {
await pendingTransfers.shift();
}
// Отправка переводов, которые будут выполняться по порядку.
pendingTransfers.push(device.transferOut(endpointNumber, chunk));
оставшихся байтов -= chunk.byteLength;
я++;
}
// И дождаться завершения последней оставшейся передачи.
ожидание Promise.all(pendingTransfers);
}
Советы #
Отладка USB в Chrome упрощается благодаря внутренней странице about://device-log
, где вы можете увидеть все события, связанные с USB-устройством, в одном месте. Страница журнала устройства в Chrome для отладки WebUSB-API.
Внутренняя страница about://usb-internals
тоже пригодится и позволяет имитировать подключение и отключение виртуальных WebUSB-устройств. Это полезно для тестирования пользовательского интерфейса без реального оборудования.Внутренняя страница в Chrome для отладки WebUSB API.
В большинстве систем Linux USB-устройства по умолчанию отображаются с разрешениями только для чтения. Чтобы разрешить Chrome открывать USB-устройство, вам нужно добавить новое правило udev. Создайте файл по адресу /etc/udev/rules.d/50-yourdevicename.rules
со следующим содержимым:
SUBSYSTEM=="usb", ATTR{idVendor}=="[yourdevicevendor]", MODE=" 0664", GROUP="plugdev"
, где [yourdevicevendor]
— это 2341
, если ваше устройство, например, Arduino. ATTR{idProduct}
также можно добавить для более конкретного правила. Убедитесь, что ваш пользователь
является членом группы plugdev
.