menu

Прошивка китайских телефонов - Часть 3

Всем доброго дня (вечера, утра, ночи…)!

Для самых стойких, у кого ещё не пропало желание (да не о том вы!) научиться прошивать китайские телефоны – предлагаю третью часть своего творения. До этого момента, надеюсь, все уже изготовили (купили, украли…) прошивочный кабель или программатор, нашли волшебные контакты Tx и Rx и сделали бекап прошивки своего «китайца». Если ещё нет – то в тысячный раз повторюсь: чтобы не было мучительно больно за бесцельно загубленную жизнь телефона – СДЕЛАЙТЕ БЕКАП ФУЛЛА и сохраните в таком месте, где его не смогут повредить вирусы, маленький братишка, наводнение… Нервы будут значительно крепче! Ну да, надеюсь, все вняли гласу разума и файлик *.bin тихо и мирно покоится в банковском сейфе в Цюрихе. Это есть хорошо. Тогда продолжим.

Сегодня речь пойдёт преимущественно о программной части процесса прошивания, а в частности – всё о тех же программах «Flash tool» и «Spiderman». Ну и ещё нам понадобятся некоторые программки, но о них – по ходу.

Для начала – вопрос: для чего Вы решили прошивать своего «китайца»? Я это спрашиваю не из праздного любопытства: однажды ко мне в мастерскую пришёл клиент и попросил «закачать в телефон русский язык». Телефон, естественно, был китайский, а было это года два назад, соответственно, прошивок с нормальным русским в Интернете было… значительно меньше, чем сейчас... короче, я попытался «отмазаться». Спрашиваю: что, мол, русского нет совсем? Мужик кивает утвердительно. Я беру телефон и, совершенно ни на что не рассчитывая, просто «на дурачка» набираю «*#0007#» (для тех, кто не в курсе – стандартный код переключения «кита» на русский язык). Телефон мигнул и… правильно, сначала офигел я, а потом – мужик. Тело переключилось на русский! Корявый правда, но разобрать можно! По какой-то непонятной логике разработчики программного обеспечения для телефона русский ленгпак предусмотрели, но переключиться на него посредством пользовательского меню действительно было невозможно!!! Так я это всё к чему рассказываю-то: если вы просто хотите русифицировать своего «кита» - сначала попробуйте стандартные коды, чем чёрт не шутит – вдруг получится?! Несколько кодов я, на всякий случай приведу, остальные есть и на этом сайте, и Яндекс пока никто не отменял…

*#0007#  -  Переключение телефона на русский язык;

*#0044#  -  Переключение телефона на английский язык;

*#0000#  -  Язык по умолчанию (обычно английский; иногда – китайский);

*#66*#   -  Версия прошивки в телефоне; иногда вместо этого кода работают *#800# ; *#900# ; #*888# ; #*878# ; может, есть ещё что – не знаю.

*#369# - Регулировка контраста телефона, часто бывает полезна после «общего сброса»;

*#77218114# ; *#881188# ; *#94267357# ; *#9426*357# ; *#19912006# ; *#118811# ; *#3646633# - это всё те самые коды общего сброса «китайцев». Иногда бывает нужен пользовательский код телефона, он же – защитный код. Кроме стандартных 0000 и 1234 можно попробовать следующие: 1122, 1111, 00000, 12345, 00000000, 01020304, 10203040.

Знаю, не спортивно это – пользоваться кодами, но иногда помогает. Если же фокус с цифрами не удался – продолжим процедуру.

Следующим шагом в идеале должен стать максимально полный сбор информации о подопытном телефоне. Зачем? Дело в том, что китайские «тела» страдают забавной болезнью: аппараты с абсолютно одинаковой внешностью, названием, продающиеся под одной и той же торговой маркой очень часто имеют совершенно разную электронную начинку! А по сему, для успешного поиска подходящей прошивки неплохо бы знать о телефоне что-нибудь ещё кроме названия; а фразы типа: «ищу прошивку для китайской Nokia E71», часто встречающиеся на форумах, звучат, ну скажем, немного глупо… я видел не меньше десятка вариантов «Е71»! Интересует нас прежде всего два параметра: полное название процессора и размер установленной микросхемы флеш-памяти. Попутно неплохо бы выяснить реальное разрешение камеры (камер) и размер (разрешение) экрана, а так же сенсорный экран или нет; но процессор и размер флеш – знать обязательно! Тип процессора можно просто прочитать на самом процессоре (это будет надпись вроде МТК-6226ВА), а размер флешки посмотреть при помощи «Flash tool» (мы уже делали эту процедуру). Очень желательно также посмотреть версию уже залитой в телефон прошивки. Иногда это можно сделать, набрав код *#66*# или какой-либо другой (Яндекс в помощь!). Но часто ни один код не подходит, а иногда – телефон вообще не включается. Как тут быть? А быть тут программке «WChinaTool», в частности – «WChinaTool_v0.4», которой я сам пользуюсь (может, есть и более новая – не знаю). Эта программа анализирует бекап фулла, слитого с телефона, и выдаёт массу интересной информации. Запускаем программку, «показываем» ей, где лежит наш фулл, программа немного подумает и выдаст примерно такую картинку:

Как видим, в моём случае в аппарате установлен процессор МТ6226, размер микросхемы флеш-памяти – 16Мб, версия ПО – это синяя строчка вверху: T6226_05C_PCB01_GPRS_MT6226_S01.B10_EFATRIS_V0915A.

Для любителей всё потрогать и пощупать ручками: то же самое, в принципе, можно увидеть и без программы – всего лишь при помощи любого HEX-редактора: нужно посмотреть слитый файл прошивки начиная с адреса 000003E5 ну и дальше по смыслу.

Вот такую штуковину и нужно искать, если вы хотите залить в аппарат ту же самую прошивку, которая и была. Но нужно учитывать и строчку BUILD: в ней закодирована версия печатной платы, установленная в вашем аппарате. Очень часто бывает так, что строчка ROM одинакова для всех телефонов одной серии, а BUILD различается; и в результате при попытке залить неродную прошивку наблюдаются различные глюки (не работает камера, тихий звук, картинка не на весь экран…) или телефон не работает вовсе. В идеале должны совпадать и ROM, и BUILD; но то ведь в идеале… А нам-то интересно как раз «не идеальное»! Зачем менять прошивку с корявым русским и без Явы на прошивку… с корявым русским и без Явы? J Какой-то определённой методики поиска и подбора подходящей прошивки нет (да и откуда ей взяться?); технология одна: скачиваем, заливаем, включаем… Не включается? Пытаемся восстановить зону безопасности. Не получается? Скачиваем другую прошивку и всё повторяем сначала. Вопреки расхожему мнению могу с полной уверенностью заявить: каких-либо ограничений на количество попыток заливки/чтения фулла нет: и после тысячного раза перепрошивки телефон будет работать так же, как и после первой прошивки, сделанной на заводе! Так что – не бойтесь экспериментировать: что-то повредить или исчерпать число попыток попросту невозможно! Разумеется, это верно лишь в том случае, если вы делаете всё «как надо». А что касается поиска подходящего фулла - могу посоветовать только одно: ориентируйтесь на вышеназванные показатели: процессор, размер памяти, камера, экран. Если вместе с фуллом будет лежать и фото телефона – можно обратить внимание и на него; но это – не стопроцентный показатель! Однажды я залил фулл от N95 слайдера в N95 моноблок (или наоборот; давно было дело, не помню) и телефон благополучно заработал! Не работала только одна камера, но зато появилась поддержка Ява-приложений. Клиент остался доволен! Да, и ещё один момент: если размер флеш-памяти, установленной в вашем аппарате, ну скажем, 4Мб, а вы нашли прошивку, которая «весит» 16Мб – можете даже не пытаться её скачивать, не тратьте попусту трафик и время! Размер файла прошивки должен совпадать с объёмом флешки. Скачанную прошивку неплохо бы сразу же посмотреть при помощи всё той же «WChinaTool»: программа, помимо всего прочего, показывает также и языки и шрифты, «заложенные» в прошивку. Возможно, эта информация сэкономит лишний час жизни: прошивка вообще без русского языка как-то… скучна, что ли… J Вот чтобы лишний раз не прошивать телефон наличие русского языка можно и проверить.

Немного о самом процессе прошивки. Немного – потому, что в первых двух частях я подробнейшим образом рассказал о чтении фулла из телефона, а помещение его обратно – тот же самый процесс. Подключаем кабель, настраиваем программу (порт, битрейд,...), только теперь нужно нажимать кнопочку «Download» для  Flashtool или Flash для Spiderman. Не забывайте про начальный и конечный адреса для Flashtool-а и про выбор правильного лоадера (для него же). В этом плане я бы посоветовал пользоваться «Человеком-пауком», Spiderman-ом то бишь. Но! Как всегда встревает это самое «но». Спидерман теоретически сам в автоматическом режиме восстанавливает зону безопасности телефона; так что «моргалик» или труп получить сложнее… но то – теоретически! Не люблю я слов «в автоматическом режиме». Пару раз было так, что прошивка по всем параметрам должна работать, Spidrrman её честно заливает, не менее честно чего-то там восстанавливает; а в итоге – мирно спящий труп! Вот здесь-то и вспоминается народная мудрость, что самая короткая дорога не всегда оказывается самой лёгкой! Если тело не подаёт признаков жизни – можно попытаться пропатчить прошивку при помощи программы «MTK_Repair6226». Тут нам понадобится сама эта программа, ну и наша старая знакомая FlashTool. Порядок действий примерно такой:

1) Скачиваем и запускаем MTK_Repair6226BA. Запускаем, запускаем… Нет, это не побитые шрифты, это шрифты, по видимому, китайские! После запуска файла MTKDecryte.exe взору является такая вот картинка:

Ещё раз повторю: не нужно лезть в настройку шрифтов в вашем компьютере: пробовал, не помогает! Как в том анекдоте про лягушку: придётся есть так.

2) Нажимаем верхнюю левую кнопочку, обозначенную «???» и показываем путь к файлу прошивки, которая не заработала (а должна была!). Причём, программа видит только файлы с расширением *.bin, а фулл, сливаемый тем же самым ФлешТулом сохраняется вообще без расширения; так что, возможно, придётся поменять имя файла (е имени файла добавить .bin). Если всё сделано правильно, то адрес и имя файла прошивки появятся в верхней светлой строчке, а в нижней – адрес пока что несуществующего файла с именем, отличающимся от исходного только на три символа: «_jm».

3) Нажимаем на правую нижнюю кнопку – программа чего-то там заругается (не глядя соглашаемся!) и создаст тот самый файл, про который она писала в нижней строчке. Файл появится в той же папке, где лежал исходный, но в принципе, путь для него можно указать, нажав кнопочку, обозначенную как «????». Не знаю, правда, зачем это нужно…

4) Запускаем программу FlashTool, устанавливаем битрейд, порт, стандартный лоадер… и в качестве файла прошивки указываем полученный файл – тот, который …_jm.bin. Заливаем его в телефон и радуемся! Спидерман такого не умеет.

5) Небольшое дополнение: если размер полученного файла равен 0 байт – такой файл, разумеется, прошивать не стоит. Не за чем. Ноль байт означает, что либо прошивка исправна, но всё же совершенно не подходит к аппарату, либо (чаще) – что программа просто не знает, что с такой прошивкой делать… Для нас оба варианта равнозначны: тело не ожило и это главное. И ещё: как нетрудно догадаться, программа работает только с процессорами MTK6226BA. Жаль. Для всех остальных процессоров есть ещё один способ, ещё более запутанный, но зато – универсальный! Расскажу о нём.

Понадобится нам какая-нибудь программа-компаратор, которая умеет работать с шестнадцатеричными файлами. Для определённости пусть будет CMP_v2_20 (все почему-то советуют именно её – пускай, согласимся; хотя это не принципиально). Внимание: смысл следующего действия – получение файла зоны безопасности ОТДЕЛЬНО ОТ ВСЕГО ФАЙЛА ПРОШИВКИ!!! Прочитайте эту фразу ещё раз и осознайте: это важно! Предыдущий способ «работал» только с конкретным типом процессора, только с файлом прошивки… и далеко не всегда корректно. Тот кусочек файла, который мы получим в результате дальнейших действий вполне можно «наложить» на любую из выбранных прошивок, на русифицированную прошивку, на прошивку, слитую с другого телефона… И этот файлик содержит уникальные настройки, «прошитые» на заводе-изготовителе только для вашего аппарата! Так что – с этим файлом вероятность нахождения «правильной» прошивки для вашего аппарата резко возрастает! Можно как угодно извращаться, заливая практически любые подходящие прошивки от аналогичных аппаратов, затем поверх «накладывать» свою родную «зону безопасности» и с вероятностью 99% получится рабочий аппарат! Заинтересовал? Тогда продолжим.

Как я уже говорил, нам понадобится 16тиричный компаратор (CMP_v2_20), бекап РОДНОГО фулла: не скачанного с Интернета, а именно РОДНОГО, слитого с ещё работающего аппарата; ну и флешер, всё та же FlashTool.

1) Заливаем в телефон родной фулл (для определённости назовём его FF_01).

2) Считываем его обратно из телефона и сохраняем в файл (пусть будет FF_02).

3) Запускаем компаратор. В поле «Файл А» указываем путь к FF_01; в поле «Файл В», соответственно, путь к FF_02 (не перепутайте!).

4) Если всё сделано правильно – программа в столбиках слева покажет примерно 100…116 несовпадений. Откуда они взялись? Ну… если не очень точно, но хоть немного понятно, то есть в флеш-памяти телефона несколько ячеек, в которых хранятся уникальные для вашего аппарата настройки и при заливке родного фулла телефон их не перезаписывает (или восстанавливает). Нетрудно догадаться, что если залить в телефон прошивку от какого-нибудь другого тела с другой зоной безопасности, то возможен такой вариант, когда новые настройки «загоняют» телефон в такой нежим, в котором он просто не может включиться по всем законам физики! Хотя казалось бы: вся прошивка совпадает, не совпадают лишь несколько байт настройки… Вот эти-то несовпадающие байты нас и интересуют! Сохраняем их. Для особо любопытных: некоторые байты зоны безопасности могут совпадать, а потому число «несовпадений» в зависимости от аппарата может меняться.

5) Дважды щёлкаем по первому несовпадению (столбец слева), в правом поле программа подсветит синим значение ячейки выбранного адреса. Не перепутайте! Нас интересует именно левый столбец, тот, где «Файл А»! В правом поле, всё в том же файле А выделяем часть файла, содержащую все несовпадения. Для этого щёлкаем по первой подсвеченной ячейке, зажимаем клавишу <Shift> и щёлкаем по последнему несовпадению. Лишнего не выделяйте! Нас интересует только зона безопасности размером 116 байт, не больше! Для выделения можно так же использовать клавиши курсора + клавиша <Shift>. Учитывайте так же, что программа позволяет выделять либо одну ячейку, либо сразу слово (или несколько слов); половинку строчки выделить не удастся.

6) При помощи кнопочки «Сохранить выделенный фрагмент» сохраняем интересующий нас кусочек файла, ну например, в файл «Bezopasnost.bin». Советую для этого файла создать папку и в неё же положить файлик *.doc или *.txt с названием телефона и – главное – АДРЕСОМ ПЕРВОГО НЕСОВПАДЕНИЯ! Это важно!

7) Создаём любой файл с расширением *.txt, например, «my_new_scat.txt» и в него записываем следующее содержание (с точностью до символа!):

ROM 0x08хххххх
{
}
где хххххх - это адрес того самого первого несовпадения. Сохраняем изменения.

8) В общем-то всё! Файл «Bezopasnost.bin» - это и есть ваша зона безопасности, а «my_new_scat.txt» - это файл-лоадер с адресом первой ячейки, начиная с которой нужно заливать «Bezopasnost.bin». Дальше догадаетесь, что делать?

9) При помощи программы  FlashTool заливаем файл  FF_01 (ну, или какой-нибудь другой, из Интернета скачанный: интересно же! J ), при этом используем стандартный лоадер (scat26.27.28.29). Затем поверх, уже при помощи нашего «самодельного» лоадера «my_new_scat.txt» в телефон заливаем «Bezopasnost.bin».

10) Радуемся и идём за Клинским!

Ко всему вышесказанному добавить могу следующее. На форумах народ волнуется по поводу: «А что, если нет родного фулла?». Отвечаю. По хорошему – ничего. К сожалению. Но можно и по плохому. Ищем в Е-Нете фулл уж хоть с каким-нибудь китайско-русским, пусть без Явы, пусть с некрасивыми картинками… короче – любой, лишь бы подошёл к телу и он нормально включился. Заливаем его в аппарат. Заряжаем батарейку и ходим с телефоном несколько дней, проверяя его на предмет «глюков», беспричинной потери сети, быстрого умирания батарейки… ну и так далее. Если глюки достают уж очень сильно – начинаем всё сначала: ищем прошивку, заливаем… Ну, а ежели, паче чаянья, телефон хоть приблизительно работает – делаем ему общий сброс, формат (средствами самого телефона!); затем вышеописанным способом «добываем» из него зону безопасности и приступаем к поиску уже нормальной прошивки с русским языком и Явой или к русификации и «доводке до ума» уже существующей. И не нужно меня бить по лицу за такой совет: знаю, вероятность глюков вполне себе сохраняется, а способ, мягко говоря, не идеальный… Зато – работает!

И ещё один момент хочется озвучить в завершение темы прошивки. Китайские тела после прошивки периодически возмущаются: мол, «не мой IMEI и работать не буду!». Это не часто, но всё же бывает. Логично предположить, что в прошивку надо бы вернуть родной IMEI – тот, который на этикетке под батарейкой. И даже программку специально для этого придумали, тоже бесплатную между прочим: «MTK IMEI changer» называется. Но, да простят меня разработчики этой программы – работает она… нечасто… и немного. Зато – через стандартный шнурок, идущий в комплекте с аппаратом, прошивочный шнур не нужен! Но как-то у меня не срослось с этой программкой; Spiderman делает то же самое, но стабильно и просто! Есть возможность записать в тело сразу два IMEI-кода (если в телефоне реально два трансивера!). В общем, рекомендую Spiderman: сам проверял, работает.

Прочитал я своё творение, подумал… Тему русификации, видимо, придётся вынести отдельной частью: уж очень большая статья получается. Для всех, пишущих в личку по поводу аппаратного ремонта: ДА, СТАТЬИ ПРО АППАРАТНЫЙ РЕМОНТ ТОЖЕ ПЛАНИРУЮТСЯ! Дайте срок, я же тоже живой человек, а за окном – весна! Вот закончу про прошивку – будет и «железо»!

Всем добра и до скорых встреч на страницах этого сайта!

Категория: Китайские телефоны | Добавил: sergo95 (21.07.2010) W
Просмотров: 532 | Теги: китайские телефоны, Прошивка китайских телефонов | Рейтинг: 0.0/0
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]