Некоторые производители ноутбуков исскуственно ограничавают совместимость оборудования, зашивая идентификатор производителя модуля WiFi в BIOS. Под катом небольше описаие того как я боролся с такой проблемой. Данная операция применялась к Lenovo B450, но, вероятно, может быть применена и для других устройств, с похожей проблемой (например, ноутбукам HP Pavilion, естественно с соответствующим файлом BIOS).
И так, после замены модуля WiFi, на более быстый, я обнаружил ошибку: 104-Unsupported wireless network device detected.
Дело в том, что производитель зашил в BIOS ноутбука конкретную модель WiFi адаптера. BIOS обнаруживает чужой модуль и останавливает загрузку. Чтобы восстановить нормальную загрузку необходимо отредактировать BIOS и прошить его. Приступим.
Внимание, дальшейшие шаги небезопасны и могут повредить ваше оборудование. Помните что выполняя их вы делаете это на свой страх и риск.
Загружаем нужные программы
- Официальный прошивальшик [InsydeFlash] (его можно взять вместе с bios с сайта lenovo).
- Редактор BIOS — [EXH2O_v2.1.0.4]
- Шестнадцатеричный редактор — [HxD]
Или все одним архивом (по бесплатное).
Сохраняем старый идентификатор WiFi адаптера
- Находим его в диспетчере устройств.
- Заходим в свойства и там:
Сохраняем текущий BIOS
- Распаковываем 1DCN26WW.exe, заходим в каталог с программой.
- Открываем platform.ini
- Изменяем следующие значения
[FDFile]
"BackupName=" меняем на "BackupName=OLDBIOS.FD"
[FlashComplete]
"Action=2" меняем на "Action=0"
[UI]
"ConfirmInfo=0" меняем на "ConfirmInfo=1"
[Option]
"Flag=0" меняем на "Flag=1"
- Сохраняем файл, закрываем, запускаем InsydeFlash.exe.
- Если вы используете Windows Vista / Windows 7 то для запуска надо кликнуть правой кнопкой по InsydeFlash.exe и выбрать «запуск от имени администратора».
- В открывшемся окне жмем Option, в диалоге настроек в поле file name выбираем файл 1DCN26WW.fd, жмем OK.
- После этого жмем Start, ждем несколько секунд, в это время старый биос сохраняется на диск.
- В открывшемся окне отказываемся от прошивания (жмем отмена).
Все, текущий bios сохранен к вам на диск.
Получаем Device ID нового устройства
Это можно сделать подключив новый WiFi к другому ноутбуку. Если у вас такой возможности нет, то можно сделать так.
- При включении ноутбука, когда BIOS отработал, и передает управление операционной системе, необходимо нажать кнопку Pause. Сделать это необходимо в тот момент, когда экран становится черным, до того как начинает отображаться анимация загрузки Windows. При этом загрузка остановится.
- Не выключая ноутбук, аккуратно, ничего не замкнув, извлекаем старый WiFi модуль и вставляем новый.
Нажимаем Enter чтобы продолжить загрузку. - Когда Windows загрузится получаем Device ID нового устройства таким-же способом что и старого.
Редактируем BIOS
- Запускаем EzH2O, открываем старый BIOS.
- Не закрывая программы запускаем HxD.
- Жмем «Дополнительно» -> «Открыть RAM» -> Выбираем в списке «EzH2O.exe».
- Нам надо найти старый идентификатор устройства в памяти.
Старый ID у нас был PCIVEN_168С&DEV_002A&SUBSYS_0034168С&…
В BIOS байтики идут в обратном порядке (первый становится последним, и т. д.), получаем из нашего идентификатора три группы цифр
8С 16 (из 16 8С), 2A 00 (из 00 2A), 8С 16 34 00 (из 00 34 16 8С).
Ищем последнюю последовательность в нашем редакторе.
- И заменяем на новую.
PCIVEN_168С&DEV_002A&SUBSYS_10671A3B&…
8С 16 (из 16 8С), 2A 00 (из 00 2A), 3B 1A 67 10 (из 10 67 1A 3B). - Жмем сохранить в HxD. Закрываем программу.
- Переключаемся на EzH2O.
- Сохраняем BIOS.
Редактирование в памяти EzH2O было необходимо для того, чтобы в измененном файле проставилась правильная контрольная сумма.
Прошиваем измененный BIOS
- Распаковываем 1DCN26WW.exe архиватором в новый пустой каталог.
- Удаляем из этого каталога 1DCN26WW.fd и помещаем туда наш, отредактированный файл.
- Запускем InsydeFlash.exe, прошиваем, ждем пока ноутбук перезагрузится.
Готово!
PS Рычажек отключения WiFi работает и с новым модулем.
Автор: LexB