Привет, Хабр! Ну что, я таки починил игровой ноутбук от Lenovo. Это оказалось не так просто, но все получилось. Напомню, это «залитик», то есть лэптоп, пострадавший от жидкости, — самая неприятная категория ремонтов. В первой части я нашел причину, по которой Lenovo IdeaPad Gaming 3-15ACH6 не включался и не заряжался. После «купания» пробило мультиконтроллер ENE KB9022QD и на одной из линий питания оказалось около 20 Ом. Стоило снять чип, как сопротивление выросло до килоом, а дежурные 3,3 В снова появились (правда, после принудительного замыкания контактов входных ключей). У меня были просто огромные сомнения относительно работоспособности девайса. Но что поделать — кто не рискует, тот не играет в ААА-тайтлы. Так что оставалось дождаться нового EC из Китая, поставить его на место и записать прошивку.
Контроллер на днях приехал, и я вернулся к материнке. С пайкой особенных приключений не ожидал: корпус крупный, ножки на виду, под микроскопом работать удобно. А вот с программатором все оказалось сложнее. Это был квест, который мне удалось пройти. А потом еще и зарядник… Ну да ладно, давайте обо всем по порядку.
Приехал KB9022QD. Ура!
Две недели ожидания, и микросхема из Поднебесной у меня в руках. Я заказал сразу две — ведь всегда что-то может пойти не так.
Новый EC выполнен в корпусе QFP-128: то есть всего у него 128 выводов. После возни с BGA микросхемами, у которых контакты-шарики спрятаны под корпусом, такая конструкция выглядит весьма user-friendly. Правда, шаг небольшой, поэтому лишний припой легко соединит соседние ножки. Но это не проблема — исправить легко при помощи медной оплетки.

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

Сначала пришлось еще раз разобраться с расположением чипа. Маленький кружок — это место, которое должно совпасть со специальной маркировкой на плате. Если припаять неправильно, может пострадать не только чип, но и вся плата. И тогда уже нет смысла что-то ремонтировать. Я сверил расположение ножки № 1 с обозначением на плате и положением снятого EC, затем выставил микросхему точно по площадкам. Удобнее всего сначала прихватить два противоположных угла: после этого она не уезжает, пока пропаиваются остальные стороны.

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

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

Но отсутствие замыкания еще не означает, что ноутбук запустится. Но проверить базу можно. При подаче 19,5В за входными ключами (мосфетами), которые пока сами не открывались, появились 3,3 В и 5,1 В. С дежурками, похоже, все окей. Это радует.

Шим-контроллер работал, новый EC не грелся, а на кнопку плата все равно не реагировала как исправная. Тут сюрприза как раз не было: контроллер нужно прошить, сам по себе он работать не будет. Значит, паяльник можно отложить и доставать другой прибор — программатор.
Что за программатор Mic-Vision
История тут довольно мутная. На форуме ремонтников SAS называют копией устройства Сергея Вертьянова;продавец постоянно упоминает оба названия рядом (сам он аж из Туниса). Скорее всего, это просто клон. Но Вертьянов не продает свои девайсы вне РФ (во всяком случае так указано на одном из профильных форумов), а вот этот вендор — да.

У меня в наличии Mic-Vision, он же SAS I/O Programmer, ревизии 4.1. Это специализированный программатор для ноутбучных мультиконтроллеров: среди поддерживаемых микросхем — ENE, ITE, MEC и Nuvoton. Там же заявлены запись EDID матриц, чем я никогда не пользовался.
Я его неоднократно проверял в работе, все было хорошо. Сейчас мне было нужно лишь прошить KB9022QD. Микросхему для этого не нужно снова снимать с платы (есть аксессуар для программатора, который позволяет прошивать «голый» наприпаянный микрик, но стоит такое удовольствие около 600 долларов).

Соединение выглядит просто лишь до тех пор, пока не начинаешь разбираться с конкретной материнкой. У Mic есть разъемы для плоских шлейфов разной ширины и шага, но совпадения размеров недостаточно: сигналы должны приходить именно на выбранные дорожки. Для ENE KB9022 используются линии KSI4–KSI7 и KSO3.
Профиль платы в Mic JIG указывает, где искать эти контакты. К слову, в моем случае профиль прошивки пришлось добавлять вручную, к чему я был совсем не готов.
Еще один USB связывает устройство с компьютером, а второй, с пометкой GND, подключается к USB-порту ремонтируемой платы для общей земли (раньше это все нужно было громоздить при помощи пайки, но новое поколение программатора избавило от этой проблемы). Еще очень важно, чтобы материнка получала питание, это нужно, чтобы на EC появились необходимые 3,3 В. Если проблемы с линиями питания — прошивки не будет, материнку нужно отремонтировать.
Как я микроконтроллер прошивал
В конце первой статьи я предположил, что подключусь через разъем клавиатуры. В комплекте Mic хватает шлейфов, среди них нашлись варианты на 26 и 28 контактов, которые по ширине выглядели подходящими. Но ничего не получилось — что я ни делал, девайс не видел микроконтроллер. Я поискал информацию об этой проблеме, и лучше бы не искал она оказалась сложнее и обширнее, чем я себе представлял.
Выяснилось, что у EC-чипа нет нужного коннекта с клавиатурным разъемом. Тут все хитрее.

По схеме я вышел на JDBG1 — место под отдельный отладочный разъем. На моей материнке пластикового коннектора там не было, были лишь контакты, где 9, 10, 11 и 12 соответствуют линиям KSI4, KSI5, KSI6 и KSI7. KSO3 идет от 42-й ножки EC и по схеме должен попадать на контакт 7 через место под нулевой резистор R9743. Вот только нарисованное соединение и фактически установленная перемычка — разные вещи, поэтому такие участки нужно прозванивать на самой плате.
Эта злополучная ножка должна быть заземлена, чтобы ввести чип в режим прошивки. Иначе ничего не выйдет.

Под JDBG1 я впаял 12-контактный разъем с шагом 0,5 мм. К нему подключил шлейф на 12 жил, а второй конец вставил в 32-контактное гнездо Mic с таким же шагом, начиная с первого контакта.

Получилась конструкция, которая на первый взгляд выглядит странно: узкий кабель занимает лишь часть широкого разъема (на картинке справа). Но программатору необязательно использовать все 32 позиции, если нужные сигналы попали на свои места. Перед подключением я проверил соответствие дорожек мультиметром в режиме прозвонки.

С линией KSO3 тоже были сложности. Потребовалось заземлить 42-ю ножку KB9022QD для входа в режим прошивки, о чем я и говорил выше. Я бы не догадался — нашел небольшой туториал на просторах YouTube. И повторил этот способ: припаял к выводу провод и соединил его с землей на время работы. Все получилось, но после этого потребовалось разбираться с софтом.

Тут выяснилось, что разобраться с программой ничуть не проще, чем припаять разъем. Вместо шлейфа на 32 или 26 контактов я использовал на 12, с шагом 0,5 мм. Это я подсмотрел в одном видео на YouTube, где прошивали другую материнку.

Я пробовал разные настройки, смотрел, чем отличаются DOWN и RIGHT DOWN в настройках, но безуспешно. Mic JIG отвечал Invalid settings for ENE MB. Иногда вместо этого появлялось Please connect a FFC cable. Такое сообщение само по себе еще не означало, что профиль верный: программа просила шлейф и при случайно выбранных вариантах для чужих плат.

Я добавил несколько тестовых записей в MB connection ENE.txt.
LA-L171P-T1 KB_pins=12 DOWN 05MM KSO3=1 KSI4=9 KSI7=12 KSI6=11 KSI5=10 KB9022Q
LA-L171P-T2 KB_pins=24 DOWN 05MM KSO3=0 KSI4=9 KSI7=12 KSI6=11 KSI5=10 KB9022Q
LA-L171P-T3 KB_pins=24 DOWN 05MM KSO3=24 KSI4=9 KSI7=12 KSI6=11 KSI5=10 KB9022Q
Один вариант назначал KSO3=1, но первый контакт JDBG1, как уже выяснилось, связан с +3VS. Оставлять такую конфигурацию для записи было нельзя. Рабочим оказался третий профиль, T3.
Здесь 05MM означает шаг шлейфа 0,5 мм, а номера KSI указывают на соответствующие контакты JDBG1. Значение KSO3=24 в моей схеме не означает, что я припаивал провод к 24-й площадке материнки. До нее физически доходили только 12 жил, поэтому позиция 24 оставалась неподключенной; 42-я ножка EC в это время была отдельно посажена на землю. В окне Mic JIG я выбрал FFC на 24 контакта, хотя сам кабель был 12-контактным и стоял в 32-контактном гнезде программатора.

Оба USB-кабеля к этому моменту были подключены (первый — питание, второй — земля), питание на плату я подавал отдельно при помощи лабораторного блока питания. Пока входной MOSFET не открывался штатным образом, дежурные напряжения появлялись после его кратковременного принудительного замыкания (иначе никак, ведь плата еще без контроллера). Затем отправил настройки в программатор и проверил связь с EC. На этот раз в журнале появились Communication with KB90XX installed и Embedded Debug Version ID=7. Наконец-то программа действительно увидела микросхему, а не просто приняла очередную строку из конфига. Тут я воспрял духом, поскольку считал, что проблема еще где-то, кроме чипа.
Сначала я считал прошивку прибывшего чипа. Все прошло штатно.

Для записи я использовал EC-прошивку этой платы, найденную на профильном форуме; операция заняла примерно 15 секунд.

Штатно прошла и верификация, которая, правда, долго висела на 0%.

После прошивки материнка еще находилась в необычной для обычного запуска конфигурации: к ней был подключен программатор, а 42-я ножка оставалась на «земле». При кратковременном замыкании входного ключа потребление составляло около 0,044 А, это было немного странно. Я отключил шлейф и USB программатора, затем убрал перемычку 42-й ножки EC с «землей». Теперь можно было проверять, как плата ведет себя сама. Честно говоря, тут я ожидал либо полной неудачи, либо включения. Но все оказалось иначе.
Да, кстати, я еще сомневался, что ноутбук заработает, поскольку после подобных проблем часто слетает прошивка микросхемы BIOS. Но, как говорится, «глаза боятся, а руки делают», поэтому пошел дальше.
Зачем нужен подходящий зарядник Lenovo
При подключении к ЛБП возникла странная ситуация. Если кратковременно замкнуть входной MOSFET, потребление поднималось примерно до 0,30 А, затем до 0,45 А и опускалось к 0,17 А. Казалось даже, что началась зарядка, но вскоре ток падал примерно до 0,039 А.
При удержании кнопки включения он снова вырастал примерно до 0,5 А, а белый светодиод кнопки мигал. Радовало, что плата ожила, но все это было странно и нестабильно. От обычного подключения лабораторного блока через разъем питания я так и не получил ни устойчивой зарядки, ни нормального запуска: мигали разные индикаторы, и все.

Первая мысль — неправильная прошивка EC или слетевшая прошивка BIOS, что у Lenovo бывает очень часто. С другой стороны, запись и верификация завершились, а лабораторный источник питал ноутбук через входной разъем, я ведь сам замерял показатели.
И тут у меня появилось подозрение относительно ЛБП. Дело в том, что по спецификации этой серии, для нее предусмотрены блоки на 135 и 170 Вт с трехконтактным разъемом Slim Tip. Мой ЛБП способен отдавать до 20 А, поэтому дело вряд ли объяснялось одним лишь недостатком заявленного тока. Я заподозрил, что при таком подключении ноутбук не получает ожидаемого сигнала определения адаптера, хотя саму линию при опыте не измерял.
Проверить подозрение удалось без нового этапа ремонта. Нашелся фирменный блок на 135 Вт от другого игрового Lenovo, с соответствующим разъемом. Я подключил его — и IdeaPad включился сразу, аккумулятор начал заряжаться. Значит, конкретный адаптер ноутбук принял, а прошивка как минимум позволила ему пройти гораздо дальше мигающих светодиодов. Почему именно ЛБП в моей сборке не дал того же результата, одним этим опытом точно не доказать: вероятнее всего, дело в определении блока питания или в переходнике. Зато стало ясно, что двадцать ампер в характеристиках источника еще не делают его полноценной заменой подходящего зарядника.
Наконец-то заработало!
Радость продлилась ровно до взгляда на встроенный экран. Вместо картинки на нем появилась белая вертикальная полоса — матрица оказалась неисправной, хотя в первой части по внешнему виду я считал ее целой. Полоса показывала, что при включении с дисплеем что-то происходит, но понять по ней состояние видеотракта было невозможно. Я отключил внутренний экран и подключил внешний монитор. На нем появилось сообщение об отсутствии загрузочного устройства: ноутбук уже выводил изображение и дошел до поиска системы.

Дальше пока не проверял, сил не осталось.

Что в итоге? Новый KB9022QD свое дело сделал. Его удалось впаять, связаться с ним через JDBG1, записать прошивку и успешно ее проверить. По пути выяснилось, что подходящий по ширине шлейф еще не означает подходящее подключение, а хороший ЛБП не всегда ведет себя как фирменный адаптер. Материнка снова запускается, заряжает аккумулятор и показывает изображение на внешнем мониторе. До полностью исправного ноутбука осталось разобраться с матрицей.

Зачем этот текст? Наверное, чтобы показать, насколько сложными бывают ремонты. «Это вам не то» — поменять пару деталек, чтобы все заколосилось. Бывают и очень сложные моменты. Пишите в комментариях, что думаете по этому поводу.