Как настроить смартфоны и ПК. Информационный портал

Определяем vid и pid usb контроллера. Получение значений VID и PID usb накопителей

Флешка перестала выполнять свои прямые обязанности по хранению и переносу информации, выдавая при подключении, сообщения о нулевом объёме, подключении неизвестного устройства, а также отказывается форматироваться. Среди основных причин, почему флеш-накопитель перестал определяться это неправильная эксплуатация, например флешка извлекалась из устройства без использования безопасного извлечения, некачественные комплектующие, сбой в электропитании и так далее…

Если флешка хоть как-то определяется в операционной системе, то шансы на восстановления работоспособности есть. Для восстановления работоспособности флешки требуется перепрошить микросхему контроллера, в которой произошёл сбой. Перепрограммировать контроллер будем с помощью специальной прошивки. Искать эту программу будем исходя из того какая модель контроллера установлена внутри флеш-накопителя.

Сразу скажем, что искать модель контроллера установленного в флеш-накопителе будет наиболее правильно с помощью специальных программ. Ниже расскажем обо всех возможных методах определения и поиска модели контроллера и о том, почему программный метод является наиболее правильным.

  • Разборка флеш-накопителя и чтение надписей на самом чипе контроллера.
  • Определение модели контроллера по VID и PID.
  • Определение модели контроллера с помощью программ.
  • Определение модели контроллера по средствам разборки флешки

    Модель контроллера наносится на корпус микросхемы, чтобы его увидеть потребуется разобрать флешку. Разбирать флешку следует очень осторожно. Если вскрывать свою флешку вы не хотите или это не возможно в силу конструкции флеш-накопителя (многие модели флешек запаяны в пластик и их разборка затруднительна), то можно пойти другим путем. Просканировать флеш-накопитель специальными программами, которые расскажут какой контроллер установлен в Вашей флешке, об этом в конце статьи..

    Определения параметров VID и PID флеш-накопителя

    VID — идентификатор производителя контроллера.
    PID — идентификатор устройства.

    Идентификаторы VID и PID — существуют у каждого USB устройства и USB-флешки не исключение. Если идентификаторы VID и PID оказались пустыми или их не удалось считать, возможно, имело место быть, механическое повреждение микросхемы, тогда программы здесь бессильны.

    После определения идентификаторов VID и PID можно определить производителя и тип контроллера установленного в флешке, а зная тип контроллера можно приступать к поиску сайта производителя и необходимой программы для работы с флешкой. Но в настоящее время данный способ потерял свою актуальность.

    Всё дело в том, что на заре развития флеш-накопителей, производителей контроллеров можно было пересчитать по пальцам, а модельный ряд был не велик. Одна утилита могла подойти ко всем контроллерам одной фирмы. Сейчас ситуация кардинально изменилась, с развитием индустрии флеш-накопителей, количество фирм производящих контроллеры увеличилось в разы.

    Зачастую фирмы присваивают свои VID и PID к производимым флеш-накопителям. Вследствие чего рассчитывать на объективность определения модели контроллера, по параметрам VID и PID, рассчитывать не приходится.

    Наиболее правильным и простым способом определения контроллера, будет сканирование флешки, специальными программами. Которые определяют модель используемого контроллера и в придачу позволяют узнать кучу другой информации о флеш-накопителе.

    Определения модели контроллера с помощью программы Flash Drive Information Extractor

    Утилита от Российской компании ANTSpec Software, позволяет опросить контроллер флэшки и получить информацию об устройстве. Отличие утилиты заключается в том, что эти данные о флеш-накопителе определяются напрямую, а не по косвенным признакам типа VID и PID, о некорректности которых указывалось выше.

    Программа не требует установки, скачиваем, запускаем и нажимаем кнопку «Получить информацию о флешке». После завершения опроса, программа выведет информацию. Ниже приведен результат сканирования usb-флешки, в первой строке указывается модель контроллера: Phison 2251-32 (2232).

    Так выглядит сам контроллер данной флешки на сайте Phison. Также на сайте приведена спецификация данного контроллера, кому интересно можете почитать.

    Теперь зная модель контроллера, можно приступить к поиску прошивки. Делается это просто, вбиваем название контроллера в поисковик, и получаем кучу сайтов предлагающих скачать утилиту для нужной модели контроллера. Вот так всё просто, интернет Вам в помощь, удачного восстановления!

    Многие пользователи пренебрегают безопасным извлечением флешек, в результате чего накопители перестают корректно работать: не распознаются системой, требуют форматирования, не читает/записывает данные, показывает неверный объем (например, 14 Gb вместо 16 Gb). Если вы столкнулись с подобной проблемой, то вопрос, как восстановить флешку, наверняка станет для вас актуальным.

    Можно ли восстановить работоспособность флешки?

    Кому-то может показаться, что восстановление флешки – занятие бессмысленное. Накопители Transcend, Kingston, A-Data и других производителей наполнили рынок, сделав флэш память дешевой. Карты памяти и флешки объемом от 8 Gb до 32 Gb стоят не так дорого, чтобы нельзя было их спокойно выбросить и купить новые носители. Однако старые флешки и карты памяти Микро SD обычно вовсе не выбрасывают: они лежат в столе и ждут своего восстановления.

    Восстановление возможно, если флешка или карта памяти не «умерла» окончательно (обычно смерть наступает при сгорании контроллера).

    Но если накопитель просто не определяется или показывает неверный объем, то причиной такого поведения чаще всего является сбой прошивки контроллера. Как восстановить флешку после такого сбоя, мы подробно разберем ниже.

    Сохранение информации и поиск нужного софта

    Если на флешке или SD карте хранится важная информация, то перед прошивкой и восстановлением контроллера (а вместе с ним и работоспособности накопителя) необходимо извлечь данные. Сделать это можно с помощью утилиты Photorec, умеющей работать с носителями, у которых не определяется файловая система.

    После извлечения необходимой информации с SD карты или флешки можно приступать к поиску утилиты для прошивки контроллера. Но чтобы прошить контроллер, сначала нужно определить его модель. Для это используем утилиту CheckUDisk (распространяется бесплатно) и сайт flashboot.ru:


    После завершения проверки и получения нужной информации (VID PID накопителя) необходимо скачать утилиту для возврата работоспособности флешки или SD накопителя. Перейдите на сайт flashboot.ru и откройте вкладку «iFlash». Здесь вам нужно ввести значения VID PID и найти нужного производителя карты памяти или флэш накопителя (HP, Generic Flash Disk, Protex, Oltramax, Smartbuy и т.д.).

    Если именно вашей модели флэш накопителя или карты памяти SD в базе онлайн сервиса нет, то ничего страшного: главное, чтобы совпали VID PID и производитель. Если необходимые данные совпали, то вам нужно получить информацию о точной модели контроллера для его прошивки и восстановления, а также название подходящей утилиты.

    В таблице есть столбцы «Контроллер» и «Утилита». Обратить внимание нужно и на объем – контроллеры флешек и SD карт на 16 Gb и 32 Gb могут отличаться. Вам нужно скопировать полное название утилиты и скачать её через раздел «Файлы» на сайте flashboot.ru или из другого источника. Часто вместе с программой восстановления загружается инструкция по её применению, с которой желательно внимательно ознакомиться.

    Прошивка контроллера

    Допустим, у вас флешка Protec объемом 16 Gb. Вы находите её по VID PID через онлайн сервис iFlash и скачиваете бесплатно утилиту прошивки контроллера. Что делать дальше? Проводить мероприятия по восстановлению флеш накопителя (SD карты памяти).

    Универсальная инструкция для восстановления всех флешек:

    Если прошивка пройдет успешно, то вы должны увидеть положительный статус флешки – «OK» или «Good». Если же во время проведения операции возникнут неполадки, то появится код ошибки: его расшифровку можно найти в справке утилиты, найденной по VID PID, или на других онлайн сервисах.

    Восстановление любых флешек (SD карт) производится примерно по одной схеме, однако инструкция может немного отличаться для разных утилит: вам нужно по VID PID найти программу для прошивки контроллера и запустить восстановление USB накопителя.

    Для восстановления флешки необходимо дополнительно провести её форматирование. Выполнить его можно стандартными средствами Windows или с помощью специальных программ. Рекомендуется запускать полное, а не быстрое форматирование. Это займет чуть больше времени (особенно если объем накопителя превышает 16 Gb), зато вы будете уверены, что флешка теперь полностью чистая и работоспособная.

    Пошаговая инструкция по восстановлению USB флешек в которой я постараюсь доступным языком ответить на вопрос Как восстановить флешку самостоятельно и без особых усилий.

    Вот бывает поможешь человеку, а он потом всем растрындит, что ты такой хороший и идут уже толпы жаждущих за помощью. Примерно так все и получилось, когда я восстановил несколько флешек коллегам.

    Теперь народ несет не только свои флешки , но и флешки своих друзей, знакомых и родственников. Ну вот хоть бы кто-то еще бутылочку пива приволок или печеньку – фигушки.

    Мне-то не сложно помочь, но когда я предлагаю вам самим научиться все это делать, вы отнекиваетесь. Таких я в следующий раз просто отшиваю. Не хочешь учиться – проходи мимо.

    С лирикой на этом заканчиваю и перехожу непосредственно к теме поста..

    Если ваша флешка перестала определяться как диск, не хочет форматироваться , не дает записать информацию или еще что-то там с ней случилось, НО она не имеет механических повреждений, то знайте – еще не все потеряно. Скорее всего глюкнул контроллер и с ним придется немного повозиться. По времени эта процедура занимает, примерно, 5 минут.

    Сразу скажу, что не существует универсальной программы для восстановления всех разновидностей флешек . Необходимо будет найти именно ту, которая сможет работать с контроллером вашей флешки .

    Для начала нам необходимо определить VID и PID нерабочей флешки .

    Определить VID и PID для восстановления флешки

    Воткните флешку в компьютер и запустите Диспетчер устройств . Пуск Выполнить - mmc devmgmt.msc .


    Затем зайдите в раздел Контроллеры универсальной последовательной шины USB .


    Находим в списке свою флешку . Обычно, все флешки имеют название Запоминающее устройство для USB .


    Жмем на устройстве правую клавишу и открываем Свойства .

    Переходим на вкладку Сведения .

    В выпадающем списке выбираем пункт Код экземпляра устройства или Коды (ID) оборудования .

    В этом окне мы видим PID и VID .

    Поиск программы для восстановления флешки

    Заходим на сайт FlashBoot.ru и вводим на нем полученные VID и PID .


    Жмем на кнопку Search .

    В результатах ищем своего производителя и модель флешки. У меня это Kingston DataTraveler 2.0.


    В правой колонке будет название нужной нам программы или ссылка на нее.

    Все. Теперь ищите в Google программу по названию или качаете по указанной ссылке. Запускаете и следуете инструкциям. Обычно, в подобных программах для восстановления всего одна кнопка, поэтому вопросов у вас возникнуть не должно.

    На этом всё!

    Возникнут вопросы - задавайте в комментариях.

    В случае если необходимо установить драйвер к USB накопителю или выполнить программный ремонт, вам не обойтись без получения двух идентификаторов устройства:

    • VID – это Vendor Identifier (идентификатор производителя);
    • PID – это Product Identifier (идентификатор продукта, то есть конкретной модели устройства).
    Узнать VID и PID USB устройства вы можете через специальные утилиты, но можно обойтись и без них. Необходимо открыть «Диспетчер устройств » и найти раздел «Контроллеры универсальной последовательной шины USB » в Windows XP или «Контроллеры USB » в Windows Vista/7/8 . Там вы можете найти свое USB устройство, VID и PID которого вы собираетесь определить. После выбора необходимого вам запоминающего устройства, сделайте клик правой клавишей мыши по нему и выберете из контекстного меню, пункт «Свойства ».


    В появившемся окне свойств, перейдите на вкладку «Сведения » и выберете из выпадающего списка строку «Код экземпляра устройства » в Windows XP или «ИД оборудования » в Windows Vista/7/8.




    В поле «Значение », вам будет отображен VID и PID USB устройства, но важно учесть, что некоторые производители, экономя на регистрации собственных VID и PID, могут указать их произвольно!
    Рассмотрим программное получение этих значений с использованием Windows Management Instrumentation (WMI ) и класса «Win32_USBHub ».

    Если воспользоваться программой «WmiExplorer » и открыть класс «Win32_USBHub », то можно увидеть в столбце «PNPDeviceID » строку вида USB\VID_152D&PID_2509\00A123457D9C, которая имеет формат USB\VID_XXXX&PID_XXXX\Serial_number. Именно из этой строки мы и будем извлекать данные. Но данный класс возвращает список всех USB устройств подключенных к компьютеру, поэтому необходимо их отфильтровать.


    Посмотрите внимательно на представленный скриншот программы «WmiExplorer », вы увидите в колонке «Name » название устройства. Как и в диспетчере устройств, usb накопители представлены в виде «». Именно по этому значению будет сделан фильтр. Извлечение данных осуществляется через класс «ManagementObjectSearcher », путем указания запроса «Select », так как нам необходимо организовать фильтр «where », в запросе укажем условие поиска, вывести только устройства с именем «Запоминающее устройство для USB ».


    Функционал данного примера:
    • Получение VID usb накопителя;
    • Получение PID usb накопителя;
    • Получение серийного номера usb накопителя.
    Создайте проект Windows Form в Microsoft Visual Studio и добавьте два компонента:
    • ListBox – вывод информации по usb устройствам;
    • Button – запуск процесса получения информации.
    У вас получится приведенный ниже пример.

    Сделайте двойной клик левой клавишей мыши по компоненту «button1 » и перейдите в автоматически созданный метод «button1_Click ». Добавьте в него, приведенный ниже листинг.
    string PNPDeviceID = string.Empty; //Предварительно очищаем список listBox1.Items.Clear(); //Получение списка USB накопителей foreach (System.Management.ManagementObject drive in new System.Management.ManagementObjectSearcher("select * from Win32_USBHub where Caption="Запоминающее устройство для USB"").Get()) { PNPDeviceID = drive["PNPDeviceID"].ToString().Trim(); //Получение Ven устройства listBox1.Items.Add("VID= " + parseVidFromDeviceID(drive["PNPDeviceID"].ToString().Trim()).Trim()); //Получение Prod устройства listBox1.Items.Add("PID= " + parsePidFromDeviceID(drive["PNPDeviceID"].ToString().Trim()).Trim()); //Получение Серийного номера устройства string splitDeviceId = drive["PNPDeviceID"].ToString().Trim().Split("\\"); listBox1.Items.Add("Серийный номер= " + splitDeviceId.Trim()); //Разделение списка устройств пустой строкой listBox1.Items.Add(""); } Так же добавьте два метода расшифровки значений «PNPDeviceID».
    private string parseVidFromDeviceID(string deviceId) { string splitDeviceId = deviceId.Split("\\"); string Prod; //Разбиваем строку на несколько частей. //Каждая часть отделяется по символу & string splitProd = splitDeviceId.Split("&"); Prod = splitProd.Replace("VID", ""); ; Prod = Prod.Replace("_", " "); return Prod; } private string parsePidFromDeviceID(string deviceId) { string splitDeviceId = deviceId.Split("\\"); string Prod; //Разбиваем строку на несколько частей. //Каждая часть отделяется по символу & string splitProd = splitDeviceId.Split("&"); Prod = splitProd.Replace("PID_", ""); ; Prod = Prod.Replace("_", " "); return Prod; } Запустите ваш проект, нажав на клавиатуре, клавишу «F5 ». Вставьте Usb накопитель и нажмите кнопку «Получить информацию ». Вы получите информацию о данном накопителе. Если устройств подключено несколько, то информация об устройствах будет разделена пустой строкой.

    Узнать VID и PID флешки бывает нужно по нескольким причинам. Например, если вы столкнулись с проблемой когда перестала определяться или пишет что диск защищен от записи, то ее можно попробовать восстановить с помощью специальной утилиты, которая проводит низкоуровневое форматирование, но для этого нужно узнать VID и PID флешки, чтобы правильно подобрать утилиту. Еще к примеру, если у вас есть устройство, к которому вы не можете найти драйвер, но зная VID и PID вы сможете найти нужный драйвер. Достаточно ввести эти данные в поисковик.

    В этой статье мы рассмотрим 2 способа, с помощью которых можно узнать ВИД и ПИД флешки, а именно:

    • Через программу CheckUDisk
    • Через диспетчер устройств

    Программа для определения vid pid флешки

    Для быстрого определения VID и PID флешки, потребуется программа CheckUDisk . Скачиваем ее по ссылке ниже, она бесплатная.

    Программа находится в zip архиве, распаковываем ее и запускаем. После запуска программы, вы увидите главное окно программы CheckUDisk. Внизу окна нужно поставить галочку, напротив All USB Device.

    Если флешка установлена, то в окне Connected UDisk device должна появится ваша флешка, которую можно найти по своему названию.

    Для того чтобы узнать ВИД и ПИД флешки, нужно кликнуть по ней левой кнопкой мыши один раз и в поле «Selected Udisk device information», которое находится ниже появится информация.

    Как видно на рисунке выше, мы выбрали флешку silicon-power . ниже видим ее параметры, VID 13 , PID 5200 .

    Вот так просто можно узнать VID и PID usb флешки с помощью программы.

    Узнаем VID и PID через диспетчер устройств

    Если с помощью программы CheckUDisk вам не удалось узнать VID и PID, то это можно сделать через диспетчер устройств.

    Для этого заходим в диспетчер устройств. Сделать это можно следующим образом

    1. Кликаем правой кнопкой мыши по иконке «Мой компьютер» на рабочем столе или в меню «Пуск»
    2. В появившемся контекстном меню нажимаем «Диспетчер устройств»

    Появится окно, в котором отображены все устройства системы, которые разбиты на разделы. В нашем случае нас интересует VID и PID флешки, поэтому раскрываем вкладку под названием «Дисковые устройства», именно там будет отображена установленная флешка в компьютер.

    Нажимаем правой кнопкой мыши по нужному устройству и в появившемся контекстном меню нажимаем «Свойства».


    Нажимаем Свойства

    Появится следующее окно, в котором нам нужно переключиться на вкладку «Сведения». В выпадающем списке выбираем «Родитель». И в поле ниже вы сможете увидеть VID и PID этого устройства.

    Лучшие статьи по теме