Программатор для прошивки emmc nand в телевизорах

Обновлено: 23.09.2022

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

ЕСЛИ НЕ ХОТИТЕ, ЧТОБЫ ВАС ЗАМИНУСИЛИ НЕ ПУБЛИКУЙТЕ В ЭТОМ СООБЩЕСТВЕ ПРОСЬБЫ О ПОМОЩИ В РЕМОНТЕ, ДЛЯ ЭТОГО ЕСТЬ ВТОРОЕ СООБЩЕСТВО:

К публикации допускаются только тематические статьи с тегом "Ремонт техники".

В сообществе строго запрещено и карается баном всего две вещи:

В остальном действуют базовые правила Пикабу.

Управление сообществом

Популярные авторы

Комментарий дня

Мы так с соседом сделали денди мультиплеер. Когда я просёк что сигнал на приставке соседа снизу ловится на мой телевизор (причем в цвете и со звуком). То сначала это просто был для меня этакий twitch я смотрел как сосед играет в игры и тихо завидовал. Родители приставку мне не покупали, а поиграть хотелось. В какой-то момент мне пришло в голову что видео и звук уже в телевизоре, нужно только передать управление с джойстика и можно играть вдвоём. (Почему-то очевидная идея просто собраться у него и поиграть мне в голову не пришла, родители соседа были достаточно строгие и частых гостей не привечали. Я предложил офигительную идею разрезать провод джойстика, удлиннить его и провести этот кабель в квартиру через форточку. Соседу идея показалась интересной, но он не соглашался резать собственный джойстик так как сильно сомневался, что что-нибудь из этой ерунды получится. В итогде был найден и куплен (на все мои сбережения) джойстик, который подходил к разъему соседа. В роли удленнителя выступил 6 жильный телефонный кабель. Нужно было понимать, что ни малейшей идеи о распиновки у меня в 7 лет не было, грубо говоря отрезать, спаять жилы заизолировать синей изолентой и надеяться что сработает. Но вы не представляете этот восторг когда я притащил бухту кабеля с джойстиком на одном конце и коннектором на другом. Подключил к разъему приставки и оно заработало, можно было играть вдвоём. Отдельная эпопея как мы протягивали кабель, к счастью кабель был тонкий и проходил в щель от форточки. Из остатков кабеля так же были сделаны удлиннители для телефона (телефоны были проводные). Так в 1993-1994 году у нас был не только мультиплеер, но и голосовой чат каждый день часа по 2-3 после школы но до прихода родителей. Так продолжалось около полугода, мы приходили домой после школы и резались в Черепашек Ниндзя вторых и третьих, Double Dragon в Контру и Танчики. Родители со временем просекли, что именно мы построили и с удивлением отнеслись с пониманием, просили играть поменьше и после уроков, но убирать конструкцию не заставили. Были и мелкие конфликты, связанные с тем, что у меня кнопки Start и Select не было а у друга были, так что контроль над игрой у меня был значительно меньший чем у него. Например другу могло надоесть играть в контру и он специально умирал а потом нажимал end вместо continue. В принципе завершение игры тоже было на соседе и тут я ничего поделать не мог. Закончилось всё внезапно, сосед с родителями переехал, а в той квартире поселился хмурый подросток лет 17 которому приставки были не интересны. Родители мне потом всё-таки купили Сегу уже и история с супе-удлиннителем джойстика забылась. Странно, больше 30 лет прошло, лица того парня уже не вспомнить, даже имени полного Артем его звали, кажется. Где он что с ним? Зато память сохранила запах канифоли, синей изоленты, обожённый палец при пайке (паял я увлечённо, но довольно плохо) и восторг игры без приставки, но с приставкой. Наш голосовой чат через телефон. Следующий раз я поиграл в мультиплеер в только 1997 году, это был компьютерный клуб и игра Command and Conquer.

Рекомендуемое сообщество


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


В данном топике попробую разьяснить как это работает и накатать коротенький ЧАВО :

1. Варианты подключения к eMMC карте

1.1 При помощи адаптера , который продают на рынке ( есть несколько разновидносте но суть одна)

1.2 При поможи двух блоков питания или одного двухканального

1.3 Используя питание бокса ( можете потерять гарантию , если есть пломбы )

2. Общий вид лога при успешном детекте карты.

Yokel


Black-Micron


Yokel


NoName®

Z3x Team


Yokel


Да не только к USER ROM1 можно доступ получить подпаявшись к картридеру! Да еще и скорость чтения во много раз выше чем через Easy-jtag!

demosis


NoName®

Z3x Team


Да не только к USER ROM1 можно доступ получить подпаявшись к картридеру! Да еще и скорость чтения во много раз выше чем через Easy-jtag!

Nik150366


Уважаемый NoName®,прошу помочь разобраться в моей ситуации. С Z3X и утилитой eMMC не работал. Есть HTC Desire V. По всем признакам с мёртвой EMMC HYNIX H9DP32A4JJAC. На плате оторваны некоторые пятаки интерфейса JTAG. Есть большое желание восстановить девайс. Уже заказал Z3X с адаптером eMMC. Вопрос следующий: если получится залить Full или часть его в новую аналогичную флэшь, то как потом восстановить имей? Если бы JTAG интерфейс был исправен, то:"риффом делаю resurect с галочками SPL, CID-11111111 и imei" (как писал уважаемый mvit85). А как быть в моём случае? Если бы родная флэшь была исправна(что мало вероятно), наверное можно было бы записать какую-то часть Full, чтобы не изменять родные имеи? Поправьте меня если я ошибаюсь.

qrhsystem


1. Искать то что оторвана хотя мало вероятна
2. Так как у вас нет доступ к рифф плагину. то С новым eMMC восстановит разделы и залит чужого фулла, после чего как залили чужой фулл, поставит галочку Read Soft Partitions, слит где хранится фио правит хексом и залит обратно ТА.
3. Читал NoName® работает новым Плагином ждемс новостей.
PS: на другом ресурсе есть рисунок по SPI на данный модель но у меня нет доступа к нему.

Nik150366




Ну что ж, не терпится испытать аппарат в работе. Аккуратно вкладываем чип в кроватку переходника, сам переходник устанавливаем в универсальный сокет программатора, подключаем программатор к ноутбуку, ноутбук под управлением 32-х разрядной Windows 10 с установленным ПО, заблаговременно скачанным с сайта производителя.


Для работы программатора с NAND FLASH чипами используется один софт, для работы со всем остальным многообразием чипов — другой.
Выбираем из списка наш чип, и…

Девайс заботливо предупреждает о неконтакте конкретных ног чипа. Аккуратно отжимаем панель, шевелим чип — все ок. Для проверки запускаем автодетект — программатор определяет ближайший чип этого семейства, все ОК.

Пишем, читаем, стираем, все ОК, программатор шустро отрабатывает все режимы.
Ну и приступим к основному действу, для которого и покупался программатор. По работе, мы используем много десятков промышленных Wi-Fi точек HP MSM-310R.

Устройство дорогое, но тем не менее, выходящее из строя. Гарантия закончилась, и накопилось их некоторое количество. Внутри, как это любит Hewlett-Packard и прочие белые бренды, выкупленный производитель, канадский Colubris.

Судя по скудной инфе от производителя, и морганиям светодидов, удалось понять, что проблема софтовая. Точка банально не грузилась из за сбоя во внутренней файловой системе или подизношенном чипе флеш-памяти. Что ж, сдуваем феном чип K9F5608UOD с живой точки, считываем, запаиваем обратно. Выясняем где в считанном дампе находятся конфигурационные параметры, описывающие серийник и МАС-адреса устройства. Таких, парукилобайтных блоков, два. Они идентичны друг другу. С дохлой точки тоже сдуваем чип, вычитываем, находим в дампе по тем же адресам идентификационные блоки, вырезаем, сохраняем. Заменяем в прошивке, считанной с живой точки, эти блоки на требуемые с серийниками и МАС-ами дохлой. Прошиваем новый чип, заранее закупленный на Aliexpress, этой комбопрошивкой, запаиваем, и вуаля, точка работает. Мне повезло, приобретенный новый чип оказался очень качественным, и с завода bad блоков не было, поэтому дамп можно было писать один-к-одному, безо всяких сдвигов. Конечно, методически правильнее, было бы подключиться к jtag интерфейсу процессора точки, но на тот момент уж очень руки чесались испробовать неизведанное.
Ну и напоследок, хотелось бы рассказать о мини-соревнованиях некоторых моих программаторов. Я их извлек из закромов, сфотографировал и подготовил к испытаниям.

Знакомьтесь: Bidipro, достаточно популярный в свое время среди радиогубителей самопайный девайс. Но вследствие долгого бездействия где-то закралась аппаратная ошибка в виде непропая или КЗ, вызванного упавшей скупой слезой ностальгирующего электронщика. Да и к тому же управляющий софт требует DOS. Выбывает на старте.

Второй девайс, клон SEEPROG, хороший программатор сериальных чипов, производитель до сих пор обновляет ПО.

Третий участник — Ezoflash, упрощенная версия Willemа, тоже активно использовался до приобретения MiniPro.

Четвертый участник, TL-866, в представлении не нуждается.
Будем читать-стирать-писать кое-какие чипы, если корпуса не DIP, то воспользуемся набором MiniPro-говских переходников. Для Ezoflash — переходники свои, те, которые удалось отыскать среди завалов. Пустые места таблицы означают невозможность работы соответствующего программатора с испытуемым чипом.
Также будем использовать будем другой ПК, обладающий аппаратным LPT портом.
Конфигурация достаточно современная, DualCore Intel Core i3-4170, 3700 MHz, 4Гб ОЗУ, материнская плата Gigabyte GA-H81M-S2PV, SSD диск ADATA SP550, ОС Windows 7 x32.
Результаты исследований оформим в таблицу, время каждого телодвижения указано в секундах.

Налицо преимущество в скорости основных операций Usb программаторов.
Проверку работы программатора в режиме внутрисхемного программирования не проводил — ввиду отсутствия интереса к данным возможностям, программирование микроконтроллеров тоже не проверял, т.к. уверен на все 146% в возможностях девайса.
Подводя итоги, хочется отметить основные
Преимущества данного программатора:
Качество изготовления,
Широкий спектр поддерживаемых микросхем, список постоянно обновляется.
Дешевые переходники pin-2-pin для подавляющего большинства микросхем (кроме чипованного SOP44 — DIP40, оцененного в неприличные почти полсотни уе)
Приемлемая цена, по сравнении с аналогичными устройствами, обладающими схожим функционалом.
Недостатки: пока не нашел.
Всем спасибо, кто дочитал до этого места мое первое крео на муське, заранее извиняюсь за возможную косноязычность, Word не использовал, русский — не мой родной язык.
Да, повторюсь, аппарат был приобретен за свои кровные.


Как-то в свободное время я возился с памятью маршрутизатора, где в качестве загрузчика использовалась прошивка CFE (Common Software Environment). В ходе моего взаимодействия с CFE в попытке определить аргументы, передаваемые при загрузке в ОС устройства, конфигурация системы была случайно повреждена:


В тот момент я понял, что для сохранения этих случайных изменений осталось выполнить заключительную операцию сохранения/записи, поэтому решил просто физически перезапустить устройство, чтобы избежать внесения изменений. После перезапуска возникла ошибка:


После перебора контактов JTAG с помощью JTagulator мне удалось подключиться, используя OpenOCD.


Другой способ восстановления системы реализуется через флеш-память, а именно микросхему Macronix NAND:


И здесь я задумался. У меня ведь есть рабочее устройство, на котором я вполне могу запустить загрузчик. А что, если при этом попробовать заменить его рабочий чип NAND на поврежденный, чтобы перепрошить?

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


Определив дорожки подключения Vcc, проще всего ответить на основной вопрос можно было отключив их от NAND при работающей системе. Чтобы это сделать, изначально я попробовал отсечь эти дорожки и добавить проводные перемычки (рекомендую 36 AWG Magnet Wire), которые можно будет разъединить после запуска загрузчика:


С правой стороны я отсек трассу питания подальше, решив, что это место будет более удачным, поскольку от него запитывается несколько контактов NAND. При установке первой перемычки трассу я отсек небольшим ножом и зачистил покрытие абразивным карандашом:


Получилось так себе, потому что карандаш оказался великоват, и в итоге я оголил чересчур большой участок. Лучше использовать остроконечный нож, чтобы не натворить бардак и получить что-то подобное:



Припаяв и соединив провода, я запустил маршрутизатор и, дождавшись старта загрузчика (CFE), с помощью команды dn (dump nand) убедился в доступности NAND, затем обесточил микросхему, разъединив провода.


После отключения питания (отмечено как Vcc removed ), устройство перезагрузилось и не смогло запустить загрузчик, так как NAND была недоступна. Проблема оказалась в том, что точка отсечения питания справа отключала его подачу не только на NAND, но и на SoC. Чтобы не усложнять, я просто восстановил этот отрезок и проделал всю ту же процедуру с установкой перемычки в точке ближе к NAND:


Вернув систему в строй и повторив предыдущий тест, я получил ответ на изначальный вопрос: когда питание отключается разъединением проводов перемычки, система продолжает работать, что подтверждается командой dn :


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

Прогрев микросхему горячим воздухом, я поочередно приподнял пинцетом сначала правую, а затем левую стороны:


В результате этого процесса система перезапустилась и провалила попытку войти в загрузчик:


Так как стороны микросхемы при ее отсоединении я поднимал поочередно, посматривая при этом в консоль, то стало очевидно, что перезагрузка произошла при подъеме именно левой стороны:




Затем я снова поочередно извлек правую-левую стороны микросхемы, поглядывая в консоль загрузчика:


На этот раз он остался активен, и система в перезагрузку не ушла. Закончив очередной этап головоломки, я перешел к следующему – установке поврежденной NAND в работающее устройство.

Для припаивания NAND снова использовался горячий воздух. Первая попытка оказалась безуспешной, так как некоторые контакты замкнуло при моей попытке выровнять чип по обеим сторонам. На этом этапе ввиду сбоя в очередной раз пришлось ставить обратно рабочую NAND.

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



Тест чтения завершился успешно, и через веб-интерфейс загрузчика я прошил микросхему заводским образом:

Как видно из вывода, прошивка прошла успешно, и система загрузила ОС устройства.

Ваши ученые настолько озабочены вопросом о том, могут ли они что-то сделать, что забывают приостановиться и подумать, а надо ли вообще это делать.

Читайте также: