Главная Форум Статьи Файлы F.A.Q.

Последние активные темы форума

 
3G Modem Manager & Alcatel (2) 04.03.24 15:04 euvgagsdf
Huawei E3131 (11) 28.01.24 09:28 haidarsho_olimov
RE: Восстановление модемов с помощью Z_Flasher-Reanimator_modem v-05 «NEW_RAW_RELEASE». ч2 (149) 12.07.23 16:19 Pavel82
ZTE mf 190 (1052) 26.03.22 07:30 sergey67
   
Модемы Alcatel (178) 14.01.22 15:45 Konst
ZTE MF112 (617) 27.11.21 20:54 gaivor74
пробуем разобраться с j-link и модемами (134) 18.06.21 14:38 slav
Лаборатория по реанимации (207) 29.05.21 07:58 turon
 

Профиль

   
Логин: Пароль: Забыли пароль?Регистрация
Восстановление модемов с помощью Z_Flasher-Reanimator_modem v-05 «NEW_RAW_RELEASE»
Форум > Работа с JTAG > Восстановление модемов с помощью Z_Flasher-Reanimator_modem v-05 «NEW_RAW_RELEASE»

Страницы:
Автор Сообщение
 Energizer
администратор
глухая деревня
сообщений: 1204
#1091 Дата 18 июл 2014 19:51
цитата okt9i6pehok:
... в итоге модем мерцает только импульсами зеленого, другими словами облом))). Я помню про то что Вы писали что нельзя редактировать FULLFLASH, что коды Р-С подтягиваются от туда, но они подтягиваются то от каждого блока, т.е. они привязаны к конкретному блоку, так почему бы не зная эту привязку не отредактировать их там в FULLFLASH?
а может ваш модем уже ожил - а просто отвален разьем усби ?? - с чего бы дохлому модему мерцать- обычно так делают самые живые когда в них есть симка.. а в вашем она стоит?
и про то что коды нельзя редактировать в обычном рифф формате - я такого не говорил (как можно такое утверждать если сам написал равмейкер) - хочется гланды через зад - да не вопрос :-),
местный формат задуман не просто так ;-) есть некоторые особенности у данного флешера которые не документированы - например в теории можно поправить таблицу партишена и заставить контроллер самому пересчитать новые коды :-) - вот только не помню включен ли этот режим в паблик сборку..
 okt9i6pehok
Большая деревня
сообщений: 80
#1092 Дата 20 июл 2014 17:00
Нет симка не стоит, иногда бывало мерцал когда USB передергивал т.е. в режиме загрузки находился. Так вот
Исходные данные: модем HUAWEI E1550, FullFlash E1550 128 Mb, БЭД блоки в памяти модемема: C5; 19E.
Короче вот что я делал:
Определил парсером X-parser (можно и Revskils) сектора:
MIBIB: первый блок - 0; последний блок - 9;
SIM_SECURE: первый блок - A; последний блок - F;
QSBL: первый блок - 10; последний блок - 13;
OEMSBL1: первый блок - 14; последний блок - 19;
OEMSBL2: первый блок - 1A; последний блок - 1F;
AMSS: первый блок - 20; последний блок - 9E;
FOTA: первый блок - 9F; последний блок - A0;
EFS2: первый блок - A1; последний блок - F4;
MMC: первый блок - F5; последний блок - 3D6;
OEMINFO: первый блок - 3D7; последний блок - 3FF.
Далее видно, что БЭД блок C5 попадет в сектор EFS2, а БЭД блок 19E в секторр MMC.
При просмотре в конце сектора EFS2 резервного места не обнаружено (вместо FF FF FF .. присутствуют различные символы).
При просмотре в конце сектора MMC обнаружено много резервного места (несколько последних блоков этого сектора заполнены FF FF FF ..)
(Немного не понятна разница между пустым и резервным блоком)
Затем конвертирую FullFlash в FullRaw через raw-damp-maker.
Открываю WinHex-ом FullFlash нахожу партишн табличку введя в поле поиска текста MIBIB, партишн табличка - адреса от 40800 до 4092F. В секторе EFS2 по адресу 408E4 стоит A1(начало сектора), а по адресу 4080E8 стоит 54(длина сектора в блоках). Далее в секторе MMC по адресу 40900 стоит F5(начало сектора), а по адресу 40905 стоит 2E2(длина сектора в блоках).
Поскольку у меня нет резервного места в конце сектора EFS2, то буду использовать резерв сектора MMC. Для этого корректорую партишн табличку: в секторе EFS2 по адресу 408E4 оставляю A1(начало сектора), а по адресу 4080E8 ставлю 55(длина сектора в блоках), затем в секторе MMC по адресу 40900 ставлю F6(начало сектора), а по адресу 40905 редактирую на 2E1(длина сектора в блоках). Отрезаю кусок длиной 0х800 из FullFlash с измененной партишн таблицей: адрес начала 40800 адрес конца нового bin файла 40FFF, сохраняю как partition_40800_40FFF.bin.
Открываю Revskils -> Extraction -> Repair -> Nand spare generator and Cutter, в nand page size оставляю галочку - Page size 0x200 bytes (можно и Page size 0x800 только тогда коды Рида-Соломона сгенерируются в конце файла в виде 4 строк) коды Рида-Соломона (Р-С) будут вставляться через каждые 0x200 по одной строчке, в поле Nand variant ставлю галочку на 3-bit Reed-Solomon, нажимаю
Generate Spare выбираю ранее сохраненный файл partition_40800_40FFF.bin появится окно Info нажимаю Ok, захожу в ту папку где был сохранен partition_40800_40FFF.bin и вижу новый partition_40800_40FFF.bin.spa, открываю его WinHex-ом и вижу что изменилась только одна строчка 0x200 по сравнению с открытой партишн табличкой но уже файла FullRaw (его надо открыть на строчке 42A40), меняю строчку 42A40 в FullRaw.bin на строчку 0x200 из partition_40800_40FFF.bin.spa. Теперь в FullRaw.bin (не FullFlash.bin) корректирую партишн табличку: в секторе EFS2 по адресу 42924 оставляю A1(начало сектора), а по адресу 42928 ставлю 55(длина сектора в блоках), затем в секторе MMC по адресу 42940 ставлю F6(начало сектора), а по адресу 42945 редактирую на 2E1(длина сектора в блоках), т.е. также как в partition_40800_40FFF.bin. Теперь поскольку будем вставлять по 1 нуленому блоку в соответствующие сектора EFS2, MMC (в том же FullRaw.bin), постольку надо вырезать 2 резервных блока в секторе MMC, чтобы сохранить общий размер файла. Вырезаем блоки в конце сектора MMC - это 3D5 и 3D6 (адреса от 7E75000 до 7EB6FFF) (DEL).
Далее создаю новый блок с адресами 0 - 20FFF, заполненный нулями: nule block.bin. Перехожу в FullRaw.bin (с редактированной партишн табличкой, кодами Р-С и отсутствующими блоками 3D5 и 3D6) по адресу начала БЭД блока C5 (1965000), копирую нулевой блок в буфер (CTRL+A, CTRL+C), вставляю (CTRL+V) в FullRaw.bin. Далее по адресу БЭД блока 19E (355E000) копирую нулевой блок в буфер (CTRL+A, CTRL+C), вставляю (CTRL+V). При проверке конечный адрес файла FullRaw.bin должен быть 83FFFFF, сохраняю как FULLRAW_ispravlen.BIN. Теперь проверяю что покажет парсер. Для этого конвертирую обратно в FullFlash через nand_converter.exe, получаю какой-то файл, который пропускаю через X-Parser_FREE. Все нормально длины и начала секторов EFS2, MMC изменились. Заливаю FULLRAW_ispravlen.BIN в модем. По окончанию записи модем не оживает!!!
Пробовал редактировать также еще одну партишн табличку там же в FullRaw.bin соответсвенно с кодами Р-С и заливать не помогает.
Далее пробовал редактировать начало первого блока (адрес 21000) там где указываются количество и адреса (идут через каждые 3 пары нулей) БЭД блоков соответственно коды Р-С тоже менял для этого 1-го блока - не помогает.
При анализе этих 2-ух партишн таблиц выяснил что между ними существует еще одна, но там не понятны 2 значения для каждого сектора, что они определяют ума не приложу. Такая же табличка идет за второй партишн табличкой. Видимо еще в них нужно что-то менять, не знаю. Думал там указывается количество свободных и занятых блоков, но например по значениям 3D и 280 для сектора AMSS не получается, т.к. этот сектор начинается с блока №20 и заканчивается на блока №9E, т.е. его длина всего 7F.
Может быть еще покрутить со свободным местом в секторе OEMINFO? И как различить блок резервный он или пустой, нужен ведь именно резервный?

Отредактировано: okt9i6pehok 20 июл 2014 17:34
 Energizer
администратор
глухая деревня
сообщений: 1204
#1093 Дата 20 июл 2014 19:28
изыскания провели зачетные.. жаль что пока ничего не получилось..но труды вызывают уважение.. сам никак не могу добраться до компа с железом что бы проверить .. по хорошему нужно было ба загнать ваш исправленный фулл флеш в модем заведомо живой и посмотреть что он сделает с таблицей бадов после рестарта .. да и вообще на сколько он будет жив после вливания потрошков.. вроде у сергея есть подопытный.. я же если доберусь до своих железяк тоже хочу их посношать на предмет устройства в них виртуальных бад блоков и переноса файловой- это могут быть весьма увлекательные эксперименты..
цитата okt9i6pehok:
Может быть еще покрутить со свободным местом в секторе OEMINFO? И как различить блок резервный он или пустой, нужен ведь именно резервный?
я точно не уверен -но может такая идея - вроде резервная квота между разделами не должна попадать в сам раздел.. типа стартовый адресс плюс длина = чуть меньше на несколько блоков ,чем адрес следующего раздела- может где то есть такое место - тогда это точно резерв..
 sergey67
администратор
Санкт Петербург
сообщений: 2166
#1094 Дата 20 июл 2014 19:31
цитата Energizer:
вроде у сергея есть подопытный..
,
Это я могу сделать ... у меня как раз 1550 прицеплен ...

Отредактировано: sergey67 20 июл 2014 19:41
 okt9i6pehok
Большая деревня
сообщений: 80
#1095 Дата 20 июл 2014 23:36
Попробую сюда залить мой итоговый файл FullRaw.bin с исправленной таблицей бадов и исправленными партишн таблицами и соответственно подкорректированными кодами Р-С.
К сожалению размер прикрепляемого файла не более 1Мб (а архив 32 Мб). Сергею сейчас отправляю письмо с прикрепленным отредактированным FullRaw.bin, а для Energizer - моя почта: rta1980@mail.ru пришлю как вышлете свои координаты.

Отредактировано: okt9i6pehok 21 июл 2014 00:25
 sergey67
администратор
Санкт Петербург
сообщений: 2166
#1096 Дата 21 июл 2014 06:09
okt9i6pehok, Получил .... но проверю только вечером ...
 okt9i6pehok
Большая деревня
сообщений: 80
#1097 Дата 21 июл 2014 11:16
Появилась совершенно сумашедше-непроверенная идея запихнуть в модем с памятью 128 Мб фул от 64 Мб с определенной корректировкой фула может и получится уже ему модему и так по ... . Вот что натолкнуло раз у меня 2 бэд блока C5, 19E, и я их ни как в памяти модема не могу обойти, то запихну ка я поменьше файл в ту часть памяти модема которая не бита, т.е начиная например со следующего после битого, блока 19F и до конца - 3FF у меня есть около 78,5 Mb памяти, а мне надо всего 64 Мб осталось только покумекать как это все провернуть ведь в фуле 128 Мб блок размером от 0 до 20FFF, а в фуле 64 Мб размер блока - 0 - 3FFF.
 sergey67
администратор
Санкт Петербург
сообщений: 2166
#1098 Дата 21 июл 2014 18:55
okt9i6pehok, Не прокатывает .... модем дохлый ....
 okt9i6pehok
Большая деревня
сообщений: 80
#1099 Дата 21 июл 2014 23:18
sergey67, понятно, у меня пока все идеи закончились, и к стати хотел спросить а может у меня флэш еще не та может не 128 Мб, а 64 Мб (процессор MSM6240). Хотя при заливке фула определяется как 128 Мб.

Отредактировано: okt9i6pehok 21 июл 2014 23:18
 sergey67
администратор
Санкт Петербург
сообщений: 2166
#1100 Дата 22 июл 2014 06:08
okt9i6pehok, У Вас 100% 128-я флешь ... Что касается контроллера , то он одинаков и на 64 и 128 ( у меня есть и тот и другой ) ....
Страницы:
Перейти на другой форум:
Сайт управляется SiNG cms © 2010-2015