Замена EMMC памяти в приставке Xiaomi Mi Box 2016 (MDZ-16-AB) когда у тебя нет программатора и реболл BGA отечественными флюсами

Меня попросили отремонтировать приставку Xiaomi Mi Box 2016 (MDZ-16-AB), окирпичившуюся при очередном OTA-обновлении «по воздуху». Изначально я полагал, что весь ремонт будет заключаться в перепрошивке flash-памяти приставки готовым Android-образом при помощи сервисной утилиты для данного процессора. Но я ошибался и пришлось соприкоснуться с технологией BGA пайки и ультрабюджетной прошивки EMMC, и как следствие — я открыл для себя отечественные оригинальные флюсы для пайки BGA и SMD, а также технологию программирования EMMC через картридер, потому что со всем этим я сталкивался в первый раз.
Приставка попала ко мне от коллеги в состоянии «кирпич». Это случилось после установки прилетевшего по воздуху обновления операционной системы.

Поиск по довольно развитой теме на форуме 4pda навел на самый очевидный вариант — использование «Usb_Burning_tool» с подходящим образом. Для этого надо подключиться кабелем USB A to USB A (USB A to C с переходником A to C тоже подойдет) к приставке, загрузить соответствующий img файл, убрать галку «erase bootloader» и нажать Start.
Однако, далее 1% с надписью low_power дело ни идет.

Я находил посты, где при таком поведении приставки после энного передергивания питания процесс прошивки стартовал, но в подавляющем большинстве случаев такое поведение означает проблемы с EMMC: либо затертые boot, либо аппаратные проблемы с памятью.
Обязательно надо посмотреть, что нам говорит стартовый лог UART.
На теме на форуме XDA находим расположение контактных площадок UART на плате

Подпаиваемся, подключаем USB-UART преобразователь и видим:
GXL:BL1:9ac50e:a1974b;FEAT:BDFD71BE;POC:3;RCY:0;EMMC:800;NAND:81;SD:800;USB:8;LOOP:1;EMMC:800;NAND:81;SD:800;USB:8;LOOP:2;EMMC:800;NAND:81;SD:800;USB:8;LOOP:3;EMMC:800
Процессор приставки циклически пытается загрузиться с EMMC и у него это не получается. Значит, либо boot на флешке потерся, либо EMMC вышел срок жизни и она перестала читаться. В любом случае нужно менять EMMC, а для этого ее нужно выпаять, запрограммировать новую флешку и впаять на плату приставки.
Еще есть вариант внутрисхемного (ISP) подключения к EMMC. При живой флеш-памяти это поможет восстановить boot без выпаивания микросхемы, но нужен программатор. В теме на xda находим точки для ISP подключения к EMMC.

Самым дешевым универсальным программатором, поддерживающим программирование EMMC в том числе внутрисхемное, является XGECU T48 (на момент написания статьи на Озоне можно было найти за 3300 руб).

Плюс для нашей цели к нему нужен ISP адаптер

А если ISP не поможет? Придется выпаивать и программировать EMMC, а для этого нужна «кроватка» для BGA153.

3300 руб + 1200 руб = 4500 руб — не высокая ли цена ради ремонта приставки? Либо даже 3300 руб + 2700 руб = 6000 руб (хотя можно обойтись только ISP адаптером, впаяв пустую новую флешку в приставку и по ISP ее запрограммировать, но я не встречал подобного подхода).
Программа MMCFW и картридер в качестве программатора
Поиск по теме альтернативных более дешевых вариантов запрограммировать EMMC микросхему навел меня на тему программы MMCFW — GUI для MMC-Utils под Linux. Полная версия которой (примерно треть стоимости Xgecu T48) позволяет записать BOOT1/BOOT2 и User Area, плюс сконфигурировать EXTCSD.
Для взаимодействия программы и EMMC нужен адаптер BGA153-SD

Либо адаптер EMMC BGA153-TF (это я нашел позже) и это выгоднее, т.к. бонусом идет микросхема памяти.

И самый дешевый проверенный вариант картридера на Realtek RTS — плата картридера LS-9633P (на Авито).

Соответственно, новая микросхема EMMC. Нам нужна KLM8G1GEME-B041

Итого материальные затраты на комплектующие для ремонта составляют 2200 руб. Стоит ли овчинка выделки, т.к. это больше половины стоимости приставки? Для меня — однозначно да, т.к. проснулся спортивный интерес.
Плату картридера нужно доработать, припаяв стабилизатор ams1117-3.3 и USB-A кабель, т.к. в ноутбуке питание этой платы — 3.3В. Получилось так:

Пайка EMMC в корпусе BGA153
BGA (Ball Grid Array) – это тип корпуса микросхем, в котором выводы выполнены в виде сетки шариков (припоя) на нижней стороне компонента.

У нас микросхема в корпусе BGA153 размерами 11.5х13мм, под которой соответственно 153 шарика диаметром 0.15мм. Микросхему нужно сначала выпаять, очистить от остатков шариков, потом сформировать новые шарики на месте контактных площадок и запаять на плату.
Т.к. я ранее не сталкивался с практической пайкой BGA, я вдохновлялся этим видео.
Воодушевившись легкостью и непринужденностью процесса реболла BGA, я решил, что у меня тоже получится, но посмотрев на стоимость используемой в ролике оснастки:

я решил сэкономить и купить вот такой набор из оснастки и трафарета


Накатывать шары я решил свинцовосодержащей паяльной пастой Mechanic XG50.

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


Оснастка AMAOE представляет собой магнитное основание, на которое накладывается платформа с зафиксированной микросхемой, на которую накладывается трафарет. Этот «бутерброд» фиксируется магнитом основания, притягивающим металлический трафарет. Все это позволяет избежать проблем с центровкой при нанесении пасты. Причем без лишних фиксаций пинцетом.
Трафарет хорошего качества — все отверстия идентичные и расположены равномерно. Платформа тоже порадовала — микросхема сидит в ней без малейших люфтов.
Итак, разбираем приставку, выпаиваем микросхему EMMC памяти, предварительно удалив часть основания экрана. Температура фена Lefavor 8858 — 300°C, воздушный поток 8/10, сопло 10мм.

Перед выпайкой по периметру микросхемы нужно нанести флюс. У меня был китайский Amtech NC-559 — его я и нанес. Через 30 секунд нагрева феном микросхема подхватилась пинцетом и ее стало возможно убрать с платы пинцетом.

Нужно убрать остатки припоя с контактных площадок платы и микросхемы с помощью паяльника с жалом T-12 BC3, флюса и оплетки.

Здесь следует заметить, что с первой оснасткой я пытался несколько раз более-менее удачно накатывал шары и со второго-третьего раза микросхема виделась в адаптере, а потом я пытался запаять микросхему в плату — в терминале я видел все те же «EMMC: 800», что говорило о неудачной запайке. Между этими запайками приходилось удалять плату от припоя оплеткой, что в конце концов нарушило маску, как на адаптере, так и на плате приставки.
Я всерьез встревожился, но оказалось, что маску можно восстановить с помощью соответствующего компаунда с УФ отверждением.

Мне очень понравился способ с засвечиванием компаунда через трафарет и последующим смыванием не отвержденных участков над контактами.
Но у меня компаунд прилипал к трафарету, а не к плате. Пришлось вручную наносить компаунд на оголенные места под микроскопом иглой. После отверждения получилось следующее:

Отверждал УФ фонариком в течение 5 мин.

О выборе флюса для пайки BGA
Профессиональные ремонтники, запаивающие чипы стоимостью пару десятков тысяч рублей, не экономят на флюсе, т.к. от него напрямую зависит текущий результат пайки и работа прибора в перспективе, т.к. неотмываемый флюс под BGA-микросхемой не должен влиять проводить ток. Популярна така называемая Ersa

По космической цене за оригинал. Немного углубившись в тему флюсов, я сразу понял, что мои Kingbo-RMA218 и Amtech-NC559 годятся разве что для отпайки BGA, но не для ответственной запайки микросхемы. Кто знает, как поведет себя под микросхемой китайская копия флюса через несколько месяцев?
Но что делать, если на фирменный оригинальный флюс зарубежного производства тратиться не уместно, китайские копии не подходят, а качественно запаять BGA нужно? Оказалось, есть отечественные флюсы, вполне пригодные таких целей по доступным ценам. Вероятность наткнуться на подделку отечественного флюса минимальна. Для своей задачи я выбрал флюс Mars-A благодаря соответствующему видеообзору

И на всякий случай купил Союз-1700, почитав хорошие отзывы



Я немного попрактировался на микросхема в корпусе TQFP с этими флюсами и мне больше понравился MARS-A, его я и использовал при запайке памяти на плату, будучи уверенным, что это действительно безотмывочный флюс. Хотя при запайке в адаптер я использовал преимущественно Союз-1700.
Хорошо себя показал распечатанный диспенсер для шприца 19мм. Дозирует легко и точно. Удачная конструкция.

Подготовка EMMC к программированию
Итак, нам нужно сформировать («накатать») шары на микросхеме, чтобы запаять ее в адаптер. Подкладываем на платформу под микросхему вкладку толщиной 0.15мм, кладем на нее микросхему, поверх трафарет и все это на магнитное основание. Результат совмещения контролируем с помощью микроскопа.

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

Получилось вполне себе симпатично.

Оплавляем шарики феном на практически минимальном потоке воздуха 2/10 при температуре 280°C.
Еще теплый трафарет снимаем вместе с микросхемой и не дожидаясь полного остывания, отделяем микросхему от трафарета, т.к. флюс, содержащийся в паяльной пасте при остывании прихватывает EMMC в BGA к трафарету.
Теперь надо отмыть микросхему от флюса паяльной пасты, еще раз нанести флюс на микросхему и оплавить шарики феном, чтобы они окончательно встали на свои места контактных площадок. Температура фена 280°C потом 2/10.

Кстати, при отмывке пользуюсь губками 1х1х1см из меламина. Очень удобно.

Теперь надо запаять микросхему на адаптер EMMC to SD. Наносим тонкий слой флюса на микросхему и на плату (если переборщить, то как в ролике флюс вскипит и подбросит микросхему в самый неподходящий момент). Центруем микросхему по посадочному месту на плате и греем феном — температура 300°C, поток 6/10. В процессе микросхема, что называется «сядет», т.е. шары оплавятся и она за счет этого несколько опустится. Когда это произойдет, нужно на осторожно «качнуть» ее в горизонтальной плоскости, аккуратно толкнув BGA за край на 0.1-0.15мм. Благодаря силам поверхностного натяжения микросхема отпружинит на место. Это нужно, чтобы все шарики припоя надежно схватились с контактными площадками. После этого нагрев прекращаем.
Программирование EMMC. Заливка дампа.
Устанавливаем наш адаптер в картридер, подключаем к компьютеру и убеждаемся, что в системе видится пустой неразмеченный (хотя пару микросхем памяти были с данными — китайцы присылают б/у).

Далее нам нужна виртуальная машина с Ubuntu (у меня версия 24.10) с установленной программой MMCFW. Пробрасываем картридер в виртуальную машину, запускаем программу (у меня купленная Pro версия с возможностью записи данных).

И видим, что RST_N постоянно включен. Значит, микросхема программировалась, опять китайцы прислали б/у! Но параметр PreEOL 0%-10%, что хорошо и микросхему можно использовать.
На вкладке «конфигурация» устанавливаем EXTCSD, согласно логу дампа приставки
Extended CSD rev: 1.8 (MMC 5.1)
Boot from: no boot , width: 1 bit
Boot Partition [179] / Bus Config [177] : 0x00 / 0x00
H/W Reset Function [162] : 0x01 , RST_n signal is permanently enabled

Выбираем из дампа User Area, Boot0 и Boot1 (идентичные, но нужно записать оба).

Микросхема сконфигурирована и прошита, теперь по уже приведенной методике выпаиваем ее с адаптера, накатываем шары и припаиваем на плату. Теперь в терминале больше нет злосчастных EMMC:800, а бежит бодрый лог Amlogic.
Подключаем приставку к монитору и убеждаемся, что в наличии картинки!

Вывод
Я уже упоминал, что приставку ремонтировал только из спортивного интереса и желания узнать новое, освоить несложный вариант BGA-пайки было увлекательно и полезно.
+32 |
3779
132
|
+59 |
3452
99
|
+50 |
3097
83
|
+106 |
3949
103
|
А вообще раccказ о том, как накупил остнастки на сумму дороже самой приставки?
но все снимают на горячую, правильный трафарет имеет конусообразные отверстия, устанавливают его сужением вверх, по этому ни чего не отрывается, да и рука набивается и чувствует- когда тянется флюс, а когда отрываеш шар
Паяльную пасту наношу только с инсулинового шприца добавив предварительно в пасту немного флюса.
и если этим регулярно не заниматься — он благополучно забывается как ненужный.
Зачем фото другой микросхемы привели? Сначала глаза протирал, потом взялся контакты пересчитывать, чтобы убедиться, что меня не глючит.
во2ых начать можно и с обновления данных на старой, если уж пытаться экономить.