Чтобы восстановить работу контроллера и, соответственно, флешки в целом, необходимо найти сервисную утилиту, которая умеет разговаривать с ним на общем языке и уболтает его снова заработать. К сожалению, контроллеров очень много, и даже у одного производителя флешек микросхемы контролеров могут сильно отличаться. Выяснить, какой контроллер используется в умершей флешке, можно двумя способами: брутальным и деликатным. Первый означает, что корпус флешки придется вскрыть и посмотреть наименование контроллера (ты ведь уже прочитал врезку и разобрался, где там что?), которое нанесено на микросхеме. Добраться до внутренностей флешки не всегда просто, но зато это точно даст результат. Впрочем, обойтись можно и без этого, воспользовавшись вторым способом. Контроллер можно идентифицировать по кодам VID (идентификатор производителя) и PID (идентификатор модели устройства) и, что самое приятное, извлечь их можно прямо из операционной системы. Коды считываются с помощью любой из следующих утилит: ChipGenius, CheckUDisk, USBDeview, UsbIDCheck, и, если это удалось, значит шансы на восстановление флешки определенно есть. Следующий вопрос: что с этими кодами делать?
Пробить по специальной базе флешек iFlash на сайте www.flashboot.ru, информацию в которою заботливо занесли люди, которые профессионально занимаются восстановлением данных, и просто энтузиасты. Забиваем VID, указываем PID и нажимаем «Найти». Например, для моей флешки VID = 8086, PID = 3A37. Оказалось, что в флешке используется контроллер ALCOR, а в графе «Утилита» сразу предлагается несколько сервисных утилит, которые возможно помогут вернуть флешку в работоспособное состояние.
Подобрать сервисную утилиту можно и вручную; здесь, опять же, выручает flashboot.ru, а точнее, собранный там каталог сервисных программ. Как ты уже понял, для каждого производителя контроллеров — свои утилиты. Процедура восстановления сильно отличается, но, как правило, довольно проста. К счастью, с каждой утилитой обязательно прилагается пошаговая инструкция в стиле «нажми это, выбери то, подожди, получи работоспособную флешку». Последовательность действий, чтобы оживить контроллер, очень проста. Главное здесь — правильно выбранная сервисная утилита.
Некоторые программные сбои контроллера приводят к тому, что винда не может опознать подключенное устройство. Верный симптом — сообщение «Устройство USB не опознано» в момент подключения флешки. При этом при попытке считывания VID и PID один из них или сразу оба оказываются равны 0000. Это происходит, потому что микропрограмма контроллера не может считать часть прошивки, которая расположена в специальной области микросхемы памяти.
В такой ситуации можно попробовать перевести контроллер в так называемый тестовый [a1] путем замыкания определенных выводов микросхемы памяти. У микросхемы множество выводов («лапок»), нумерация которых идет против часовой стрелки с того места, которое отмечено специальной точкой. Схема действий следующая:
Перед включением флешки в USB-порт нужно замкнуть между собой 29 и 30 выводы микросхемы памяти с помощью иголки. Стоит сказать, что, в зависимости от микросхемы, выводы, которые необходимо замыкать, могут отличаться и быть следующими парами: 30-31, 31-32, 41-42, 42-43, 43-44. Можно попробовать поэкспериментировать, либо отыскать документацию. Но учти: замыкать выводы обязательно нужно очень осторожно, чтобы случайно не попасть на вывод, который питает микросхему памяти.
Не размыкая контактов, необходимо вставить флешку в USB-порт. Как только система сможет определить носитель и установит драйвера, выводы надо разомкнуть. С этого момента можно приступать к восстановлению флешки с помощью способа, описанного в статье. Если же замыкание не приводит к положительным результатам, вероятно, микросхема повреждена, и программными способами ее не восстановить.