Программные сбои в контроллере.
Как вы уже знаете из статьи «Устройство типовой USB Flash» в любом флэш-накопителе имеется микросхема-контроллер. Именно контроллер отвечает за передачу данных между компьютером и флэш-накопителем. Управляет контроллером специализированная программа. При неправильном извлечении или просто от различных сбоев питания, а возможно и от других причин – возможно возникновение сбоя программы контроллера накопителя. Результатом этого является блокировка контроллера, и он в результате перестает отвечать на запросы операционной системы компьютера.
В случае подключения такого неисправного накопителя к компьютеру флэшка опознается как «Неизвестное устройство», имеет формат RAW или вообще может быть видна в системе как диск с нулевой ёмкостью.
В другом случае, флэш-накопитель доступен только «для чтения». Данные на диске доступны и читаются, но стоит только попытаться создать новый файл или стереть существующий, или попытаться отформатировать, как сразу выводится сообщение – «Диск защищен от записи». В этом случае контроллер просто переходит в режим защиты данных (при фиксировании ошибок программы или сбоев флэш-памяти) для защиты её от дальнейшего разрушения (память типа NAND, установленная во флэш-накопителях подрежена сбоям именно при записи данных).
Последовательность при восстановлении флэш-накопителя.
Восстановление флэшки при программных сбоях требует последовательного подхода, включающего определение контроллера, поиск подходящей утилиты и прошивку устройства. Вот пошаговая инструкция:
1. Определение контроллера и VID/PID
Контроллер — ключевая часть флэшки, от которой зависит выбор утилиты для восстановления, поэтому прежде всего, необходимо определить модель микросхемы-контроллера, это позволит подобрать необходимую утилиту (программу) для работы с ним. Для этого существуют два способа.
- Первый (Физический осмотр) – открыть корпус флэш–накопителя, если это возможно, и увидеть название модели контроллера, нанесённое на корпусе самой микросхемы. Если это проблематично, либо корпус не вскрывается, либо он неразборный – воспользуемся вторым способом.
- Второй (Использование утилит для получения информации о флэшке) Принцип его заключается в определении модели по кодам VID и PID — данная информация прошита в программе контроллера. VID – это идентификатор производителя, PID – соответственно, идентификатор устройства. VID и PID есть в любом USB устройстве. Считать эти коды можно специальными программами: CheckUDisk 5.4, UsbIDCheck, ChipGenius v2.64 и выше, USBToolsVP, Flash Drive Information Extractor v.9.x, USB_Flash_Info (на сайте утилиты расположены в разделе Программы / Универсальные утилиты) иногда это можно сделать средствами операционной системы – через диспетчер устройств (devmgmt.msc) Вкладка «Контроллеры USB».
В случае если значения VID&PID считать не удаётся или эти значения пусты, очень велика вероятность электрического повреждения микросхемы. Скорее всего в этом случае вылечить накопитель программным способом не получится.
2. Значения VID&PID определены
Следовательно появились шансы на успешное восстановление устройства. Далее, зная VID&PID, и пользуясь различными базами, можно определить производителя флэш-накопителя и модель установленного в нем контроллера. По базе, зная контроллер, находим утилиту для работы со сбойным устройством. Например:
- Flash на flashboot.ru — база данных, где по VID и PID можно найти информацию о контроллере и ссылки на утилиты для восстановления. (http:// http://flashboot.ru/iflash/).
- база с flashboot.ru на этом сайте — база данных, где по VID и PID можно найти информацию о контроллере и ссылки на утилиты для восстановления. (с сайта http:// http://flashboot.ru/iflash/ и дополнения с https://www.usbdev.ru/).
- Форумы и сообщества — например, на USBDev.ru или других технических ресурсах можно найти обсуждения и решения для конкретных моделей контроллеров.
- Специализированные программы: MPTool — утилиты для контроллеров Phison, Prolific и других. Некоторые программ уже сразу показывают тип контроллера и url – адрес утилиты
3. Поиск утилиты
Подходящую для работы утилиту можно найти в поисковиках, либо на сайте производителя, либо в независимых каталогах утилит, например на этом сайте. Утилиты отсортированы для удобства - по производителям.
Например:
Если у Вас, VID вашего флэш-накопителя – 1005, а PID – B113. То по базе ( http://flashboot.ru/iflash/) определяем, что во флэш-накопителе стоит контроллер PS2136 фирмы PHISON. Набором утилит для этого контроллера – является USB 2K REL90 (PS2231-UP12). Если тип контроллера определён визуально - вскрытием корпуса, тогда набор утилит определяем исходя их марки контроллера.
Как работают утилиты здесь описывать не будем из-за их огромного количества и многообразия. Во многих утилитах порядок работы с ними описан в документации к ним.
Внимание: если утилита будет выбрана неверно, то с высокой долей вероятности, вы испортите флэшку на всегда ! Скажу даже больше, у одного модельного ряда флэшек — могут быть разные контроллеры!
К сведению: На сегодняшний день поиск утилиты для ремонта и оживления Вашего устройства по VID / PID очень с большой долей вероятности ни к чему не приведет, особенно если у Вас не древняя флэшка. Сейчас у производителей уже десятки разных контроллеров при одной и той же комбинации VID / PID, попробуйте все же использовать утилиты ChipGenius и другие. Более подробная информация по этой теме здесь - (источник : https://www.usbdev.ru/articles/detect_controller/).
После окончания работ по восстановлению работоспособности контроллера велика вероятность получить хоть какие-то данные из памяти флэш-накопителя. Сделать это можно, например используя программу PhotoRec.
Если данные в накопителе не так нужны или полностью разрушились, настоятельно рекомендуем провести тест устройства на наличие сбойных (bad) секторов. Для этого используем программы: MyDiskTest v2.42, Victoria 4.3 Beta или Flashnul 0.99.
4. Прошивка флэшки
Перед прошивкой убедитесь, что утилита совместима с вашим контроллером и типом памяти. Процесс прошивки обычно включает следующие шаги:
1. Подготовка :
- Скачайте и установите утилиту.
- Проверьте, что флэшка правильно определяется программой. Если нет, попробуйте перезагрузить компьютер или использовать другой USB-порт.
2. Настройка параметров :
- В утилите укажите необходимые настройки (например, размер раздела, параметры форматирования). Для некоторых программ может потребоваться ввод Flash ID (идентификатора чипа памяти).
3. Запуск прошивки :
- Нажмите кнопку «Start» или аналогичную для начала процесса. Время прошивки зависит от объёма флэшки и скорости работы контроллера.
- Следите за статусом операции. Если процесс завершается с ошибкой, проверьте настройки утилиты и убедитесь, что флэшка правильно подключена.
4. Завершение и форматирование :
- После успешной прошивки отключите флэшку и переподключите её.
- Отформатируйте флэшку стандартными средствами Windows или через утилиту.
Важно :
- Прошивка может привести к потере данных. Если информация на флэшке ценна, попробуйте восстановить её с помощью специализированных программ (например, PhotoRec, R-Studio) до прошивки.
- Используйте только проверенные утилиты. Неправильная прошивка может окончательно вывести флэшку из строя.
Некоторые контроллеры требуют перевода в тестовый режим перед прошивкой. Для этого может понадобиться замыкание определённых контактов на плате флэшки, но это рискованно и требует осторожности.
На этом все – спасибо за внимание.