[cvetblue]Новость от 08/05/2015 Прошивка V3Великого Девайса (для Меги 8, 88, 168, 328). Поддержка Микрочипа, i2c-scan, уточнение для IR-box, скорость soft для ATMEL понижена в 6 раз для прошивки целевого Атмела с кварцем 32768. Скачать PostalAVR_v3b_lice[/cvetblue] [cvetblue] Прошивка V4 микроконтроллера ATmega168 программатора Postal3 - https://remont-aud.net/_fr/362/PostalAVR168.rar[/cvetblue]
Ну да, я уже увидел, у меня так и читает. Приделываю код из интернета 10-летней давности: https://github.com/oranav/i9300_emmc_toolbox Однако одна свежая "перепиленная" emmc имеет отключенные команды чтения, в boot-режиме (dump_fw_bootrom.c с этого github, это как с тестпоинтом) команды работают, но читается ненужная boot-прошивка. Сама "микросхема" тоже гнилая, при первой инициализации просаживает питание так, что я на старом драйвере синий экран получил. Надо будет на Windows 10 проверить, упадёт или нет.
Если я правильно понял (давно не в теме) база на FX2LP=полноценно работает с EMMC-включая буты и т.д. вместо набора-ридер-стандартное ж-зо. А эта шляпа =просто-скорости ради, или ради стабильности, много раз упоминалось две фразы: синий экран и Сергиус. По первому=понятно, непонятно что такое сергиус.) З.Ы. ненужно никому назло, нужно всем во благо.)
Если вы думаете, что насчёт просадки питания при инициализации eMMC это шутки, то уточню, что эту eMMC я покупал на Алиэкспресс, она припаяна к платке, бок которой вставляется в картридер (при этом контакты у платки просто лужёные, не золотые). Но самое интересное, что продавец уточнял, что работать будет только с картридерами USB 3.0, при этом предлагал у него же докупить соответствующий картридер. На самом деле речь не о самом картридере, а о гнезде, от которого требуется большой ток (хотя и на короткое время).
Вот по этой ссылке сейчас продаётся модуль с eMMC Samsung, у которой не могу прочитать firmware. https://aliexpress.com/item/1005010090796150.html Предположительно, такой всплеск тока потребления при инициализации происходит из-за того, что прошивка изначально для более быстрого контроллера. На моей eMMC, которая на этом модуле, маркировка KLM8G1GETF-B041, но это не оно. Никакие команды, связанные с прошивкой/чтением firmware, на ней в обычном режиме не работают, а в boot-режиме у неё RAM 64k, в любом случае ничего не влезет, плюс пока не вижу области, где прошивка нормального режима лежит. Другая eMMC, KLM8G1WEPD-B031, работает нормально, всё читается, команды работают, вопросов нет.
Добавлено (28.01.2026, 08:36:02) --------------------------------------------- Прочитал firmware капризной eMMC, оказалось проще пареной репы, даже обезьяна сделает. Теперь запись нужно сделать.
Добавлено (02.02.2026, 00:39:46) --------------------------------------------- Небольшая задержка, много другой работы. На любом поддерживаемом Девайсе можно будет читать/писать firmware eMMC со сбросом RPMB, записывать CID, форматировать, настраивать partition, грабить корованы (последнее - не точно).
Добавлено (02.02.2026, 01:15:41) --------------------------------------------- И, кстати, что мешает/мешало "неисправную" eMMC переключить в режим SLC и превратить в исправную?
Небольшая задержка, много другой работы. На любом поддерживаемом Девайсе можно будет читать/писать firmware eMMC со сбросом RPMB, записывать CID, форматировать, настраивать partition, грабить корованы (последнее - не точно).
Спасибо за труды Владимир, вот этого давно все ждут.
Если "шляпу" под EPM240 никто не разведёт, то это опять будет "давно ждут". Плата должна быть двусторонняя, с проходными перемычками земли, на ней EPM240 с запаиваемым разрывом на землю на неиспользуемых выводах, стабилизаторы 3.3 и 1.8, место лучше под 2 кварца (снизу). Кнопка глобального OE на плате не нужна, только выводы под джампер, куда можно кнопочку на проводке надеть. Начальный "шум", как выяснилось, на eMMC не влияет. Разъём JTAG слишком большой, нужно делать площадками (можно снизу), т.к. прошивать максимум 2 раза (не отлажен 1.8 вольт по уровням). При распределении выходных штырьков нужно учитывать, что сверху может быть ещё "шляпа" - под всякие быстрые SPI, т.к. EPM240 работает и с этим тоже. SPI-NAND, например.
Для тех, кто любит паять eMMC и в панельку переставлять, я всё-таки рекомендую иногда читать даташиты:
Цитата
10. Processing Guide It is recommended to follow the instructions of JEDEC Level 3 (JESD 22-A-113-F). In the case of Pre-burn before SMT, It is highly recommended to limit the size of data pre-burned to the eMMC, please contact your agency for more information. The amount of data pre-burned (data written before SMT) is limited, it should be managed properly. Maximum size for the data-written to IDA. Part Number Size limited for Pre-burned Data NC EMBSF MBSF9-16 G 4.54.54.5GB NC EMBSF MBSF9-32 G 9.59.59.5GB
Добавлено (08.02.2026, 05:32:39) --------------------------------------------- То есть, в eMMC, починенную методом переключения в SLC на полный объём, заводской образ всегда влезает.
Добавлено (15.02.2026, 22:05:20) --------------------------------------------- Одну микросхему eMMC кажется запорол. Случайно записал ей pdf-файл вместо прошивки. Причём файл был большой, 6 мегабайт, съела и не поморщилась. Запись прошла без ошибок.
Это намёк на то, что записывать микру нужно уже установленной в целевое устройство? Там и про 17, 25 и 133-й байты ext_csd упоминание, их шатать тоже надо до и после пайки? Что касается лично меня, то я панельку брал исключительного для входного контроля состояния микрух, покупаемых на алиэкспресс.
Это намёк на то, что записывать микру нужно уже установленной в целевое устройство?
Уже и производитель об этом намекает, и в стандарт ввели настройки соответствующие. Да, нужно записывать в устройстве, а лучше вообще не паять, если не нужна замена.
Цитата
Там и про 17, 25 и 133-й байты ext_csd упоминание, их шатать тоже надо до и после пайки?
Я предполагаю, что это нужно при ремонте каких-то мини-гаджетов, где к eMMC без пайки не подобраться. PRODUCTION_STATE_AWARENESS работает автоматически, после пайки трогать не нужно. Нам это не нужно, поскольку можно записать в устройстве. Но если хочется записать в панельке - нормальный программатор должен поддерживать такой режим, дамп тоже должен быть укорочен.
Цитата
я панельку брал исключительного для входного контроля состояния микрух,
Согласен, но с опытом уже по внешнему виду видно, а проверить мало что можно. Например, если микросхема "сыпется", то это будет скрыто за ECC на какое-то время.
Добавлено (21.02.2026, 15:54:25) --------------------------------------------- Пока не удаётся восстановить стёртую KLM8G1GETF-B041. Как только нащупаю эту халяву - функции для работы с Samsung будут завершены. В процессе наткнулся на интересный факт. Когда вы заходите в режим smart report, согласно этому даташиту: https://datasheet4u.com/pdf-down/K/L/M/KLM4G1FE3B-B001-Samsung.pdf - то на новых микросхемах вы просто работаете с RAM, начиная с адреса 0x20000000.
Добавлено (23.02.2026, 06:34:18) --------------------------------------------- В общем, схема загрузки eMMC следующая (именно потёртой). Bootrom в ней очень старый - это тот, что загружается через testpoint. Восстановить прошивку через него нельзя. Однако в самой прошивке имеется новый boot, который загружается в адреса ram 0x20000000 и стартует. То есть, от прошивки нужно отрезать ненужные оверлеи, загрузить штатный boot, стартовать его командой jump и штатно обновить. План надёжный, как автомат Подбырина.
Добавлено (26.02.2026, 06:56:32) --------------------------------------------- На данный момент с KLM8G1GETF-B041 сложностей я не вижу, bootrom у неё на адресе 0x60000000 (размером 64к), а исполняемая RAM с адреса 0. Однако вторая eMMC у меня KLM8G1WEPD-B031, и у неё всё по-другому. Сделать универсальное решение для восстановления из boot-режима пока не придумал как. Нужно понимать, что eMMC в режиме bootrom не умеет работать с флэш-массивом, только RAM в распоряжении.
но я тут вообще ни чего не пойму , глядя на скрин шот.
Скачиваешь https://github.com/oranav/i9300_emmc_toolbox Смотришь аргументы у команд и сравниваешь со скриншотом. Я просто привёл пример "хитрости", которая применена, чтобы аргументов не было в дампе в открытом виде. Чтобы был понятен уровень "шифрования".
Добавлено (28.02.2026, 07:49:18) --------------------------------------------- Это bootrom KLM8G1GETF-B041 на скриншоте, в режиме cmd60 возможны только эти три команды, там ниже просто возврат. А мне нужен штатный jump, которого на cmd60 нет. Как я без jump программу blink на eMMC запущу?