Прошивка чипа BIOS с использованием внешнего девайса — надежный способ восстановить работоспособность ноутбука, если микропрограмма повреждена. Загрузка извне позволяет обойтись без запуска ОС, с прямым доступом к SPI-флеш-памяти. Сегодня покажу пошаговый процесс прошивки и расскажу, какие тут могут быть нюансы.
Сразу отмечу, что это пост для начинающих любителей электроники. Профессионалы и так отлично знают, как нужно «шить». Но если захотите поделиться опытом — приходите в комментарии, буду рад!

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

Прошивку BIOS из-под операционной системы чаще всего делают:
-
Для апдейта версии BIOS/UEFI, чтобы добавить поддержку нового оборудования (например, новых процессоров или модулей оперативной памяти), устранить ошибки или повысить стабильность работы системы.
-
Для установки кастомной прошивки. К примеру, чтобы разблокировать дополнительные настройки, отключить проверку Secure Boot или включить скрытые функции.
-
Просто потому, что появилась новая прошивка на сайте производителя, вдруг что «вырастет» новенького после обновления. На авось, так сказать.
-
Для восстановления некорректных настроек, если BIOS работает нестабильно, но ноутбук все еще загружается и позволяет провести обновление штатными средствами.
Здесь есть одна проблема. Сбой (например, зависание, отключение питания) во время процесса обновления может повредить микропрограмму. И ноутбук в большинстве случаев «умирает» — или кратковременно включается и отключается экран, или вообще ничего не происходит. Девайс признаков жизни не подает. У некоторых моделей разных производителей есть возможность загрузиться с флешки, зажимая при включении какую-то кнопку (у HP это «B»). Но это работает не всегда.
Здесь нужен аппаратный способ — прошивка при помощи программатора. Я восстановил не один десяток попавших ко мне «мертвых» ноутбуков благодаря этому простенькому устройству. Кстати, особенно часто «умирали» лэптопы от Lenovo и Acer — тут чуть ли не каждый второй начинал работать после прошивки.
Я не буду останавливаться на диагностике ноутбука, ведь этот текст о прошивке BIOS. Но прежде чем «шить» чип, нужно проверить материнскую плату на предмет залития жидкостями, коротких замыканий, странно выглядящих компонентов: явно вспученных, c трещиной, «дымком» и так далее. Если все в порядке при первичной диагностике, тогда уже «шить».
Что за программатор такой?


Я использую CH341A — недорогой и компактный USB-программатор. Он предназначен для чтения и записи данных на микросхемы памяти, в том числе SPI-флеш-чипы, в которых хранится BIOS ноутбука.
Программатор подключается к компьютеру через USB. В зависимости от комплектации, может поставляться с прищепкой (SOIC8 clip) для прошивки чипа прямо на плате, без выпаивания. Есть и другие модули для подключения к микросхеме, о них и прищепке расскажу ниже. Сам чип обычно выпаивается термофеном — тут я писал о своей модели.
Основные функции CH341A:
-
считывание содержимого SPI-флеш-памяти;
-
сохранение резервной копии прошивки;
-
запись новой версии BIOS;
-
проверка целостности данных по завершении процесса.
Поддерживаемые чипы: большинство 8-контактных SPI-NOR-флеш-чипов, таких как Winbond, Macronix, MXIC, SST и так далее.
Конечно, CH341A не единственный вариант. Есть и другие программаторы:
-
TL866II Plus — более универсальный и стабильный девайс, подходит для большего количества микросхем (в том числе EPROM, EEPROM, SPI, I²C и других), есть встроенная защита от неправильного подключения.
-
RT809H — профессиональный программатор с поддержкой широкого спектра интерфейсов и возможностью работы с материнскими платами ноутбуков напрямую.
-
EZP2019+ — бюджетный USB-программатор. Часто используется как альтернатива CH341A.
CH341A популярен благодаря своей доступности и простоте использования, но при работе с ним важно учитывать одну особенность — отсутствие защиты от некорректного подключения. Я несколько раз в своей практике неправильно его размещал. Однажды это привело к проблеме с чипом: вышел из строя, потом я просто заменил его на новый.
Но это мне везло. А вообще отсутствие встроенной защиты в CH341A может привести к повреждению чипа BIOS, выходу из строя самого программатора или даже USB-порта на компьютере в случае неправильного подключения. Такое редко, но бывает.
Как прошивать?
Для прошивки чипа BIOS нужно установить специальный софт для программатора, с ним поставляется и драйвер. После этого подключаем девайс со вставленным чипом BIOS (предварительно его выпаиваем с материнской платы) к USB-порту компьютера или ноутбука. Можно и не вставлять микросхему, а использовать другие варианты — ниже их опишу. Но дальнейшие шаги остаются прежними.

Тут есть нюанс относительно ПО. Я купил свой девайс на маркетплейсе, и после установки софта от китайцев у меня вообще ничего не заработало. Подумал даже, что программатор бракованный. Загрузил другое ПО, тоже от братьев-китайцев — чип BIOS идентифицировался, но отказался прошиваться. Попробовал пару других чипов, результат не изменился.
После этого я пошел на форум vlab.su (думаю, его знают многие читатели Хабра) и там загрузил оптимизированный одним из пользователей софт. Вот название ПО и имя разработчика:

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

С ее помощью можно определить чип, сделать дамп оригинальной прошивки и сохранить его (на случай необходимости отката), стереть чип, изменить прошивку или же скачать новую и записать ее в чип BIOS. Тут вообще ничего сложного.
Итак, флешка чипа размещена в каретке (фото было выше), а сам программатор подключен. Дальше алгоритм такой:
-
Считываете содержимое чипа. Эту информацию (дамп) сохраняете в удобном месте. Если что-то пойдет не так, можно вернуться к прежнему состоянию.
-
Стираете чип — кнопка с красным крестиком.
-
Загружаете полученный из интернета дамп — голубая стрелочка вниз.
-
Прошиваете этот дамп — красная стрелочка вниз.
Вот пример работы программы, чип определен (после нескольких неуспешных попыток с другим):

Это у нас EN25QH64 — 64-мегабитный (8 Мб) SPI-NOR-флеш-чип от EON Silicon Solution. Поддерживает стандартный интерфейс SPI с частотой до 104 МГц, обеспечивает быструю передачу данных. EN25QH64 работает при напряжении питания 2,7–3,6 В и выпускается в корпусе SOIC-8, так что он совместим с CH341A. Он надежен и поддерживает до 100 000 циклов перезаписи. То есть на нашу с вами жизнь хватит — тут можно каждый день записывать и обновлять. Теперь считываем содержимое — синяя стрелочка вверх. На это уходит до минуты, но вот результат:

Дальше сохраняем полученную инфу в файл, даем понятное имя. Если у вас будет много дампов, потом запутаетесь, что и для чего. Я использую марку ноутбука и добавляю My. Например, AcerNitro_My — чтобы понимать, что это исходный образ. Вот малая толика того, что у меня хранится. Это все загруженные со сторонних ресурсов дампы:

Ну а потом стираете чип, загружаете другой образ из списка и записываете. Все при помощи той же программы.
После этого ставите чип на место, то есть впаиваете, собираете на скорую руку ноутбук и проверяете. Если работает — ок. Если нет, пробуете дампы из разных источников еще несколько раз. Если ни разу ничего не изменилось, ноутбук остался «мертвым», скорее всего, проблема не в биосе. Тогда придется тщательнее изучить плату. О первичном осмотре я говорил выше.
Дампы, вестимо, брать в интернете. И вот несколько советов по ним:
-
Не каждый дамп BIOS подойдет к конкретной модели ноутбука. У одной и той же модели могут быть разные ревизии материнской платы с отличиями в прошивке. Лучше всего использовать точный дамп, снятый с аналогичной материнки. Или официальный файл от производителя, адаптированный для записи через программатор.
-
Размер дампа должен соответствовать объему чипа. Если размер файла меньше, чем объем памяти микросхемы (например, дамп на 4 Мб, а чип на 8 Мб), недостающая часть останется с «мусором» от предыдущей прошивки — и это приведет к сбоям. В таком случае нужно заполнять пустые байты нулями или использовать полный образ.
-
Современные BIOS могут содержать разделы ME (Intel Management Engine), EC (Embedded Controller), NVRAM и другие. Если дамп неполный или содержит ошибки в этих областях, ноутбук может не включиться, вентиляторы будут крутиться на максималке, а дисплей останется черным. Поэтому желательно использовать проверенный, полный дамп, соответствующий конкретной плате.
-
Некоторые чипы рассчитаны на 1,8 В, а CH341A по умолчанию работает на 3,3 В. Если прошивать чип напрямую, его можно сжечь. В таких случаях требуется переходник 1,8 В — адаптер с преобразователем напряжения.
Что еще?
Теперь поговорим о том, как прошить чип без выпаивания. Это актуально, когда выпаивать чип неудобно — например, он находится рядом с хрупкими компонентами, которые можно повредить. Или если плата неоднократно подвергалась термоудару. Например, ноутбук пришел из сервисного центра, возможно, не первого, а там паяли так, что даже материнка пожелтела. Ну или явно видны иные следы мощной термообработки. И еще одна важная причина — когда выпаивать просто лень.
Итак, понадобится так называемая «прищепка». Вот как она выглядит.

Коннектите ее к чипу биоса так, чтобы она плотно прилегала к контактам. Дальше действуете по обычному алгоритму прошивки.

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

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

Держать их нужно рукой, но это просто. И если рука не дрожит (если да, каким образом вы вообще что-то собрались ремонтировать?), то все будет в порядке. Контакты прищепки накладываются на выводы микросхемы, она слегка придавливается рукой — и дальше действуем по алгоритму.

Что ж, для моего первого поста по этой теме, думаю, достаточно. Надеюсь, он вам пригодится — базовые вещи я постарался раскрыть максимально полно. Если материал зайдет, выпущу и вторую часть, с подробностями по дампам BIOS и примерами поведения вышедших из строя ноутбуков с проблемными чипами. А еще расскажу о прошивке мультиконтроллеров тех же материнских плат лэптопов — там и устройство сложнее, и сам процесс интереснее.
ссылка на оригинал статьи https://habr.com/ru/articles/897380/
Добавить комментарий