Главное меню сайта
Меню товаров
Популярные статьи
» Ремонт мобильных телефонов в Екатеринбурге.
» Русификация китайских телефонов в Екатеринбурге.
» Ремонт цифровых фотоаппаратов в Екатеринбурге.
» Ремонт сотовых телефонов в Екатеринбурге.
» Разблокировка 3G модемов в Екатеринбурге.

Навигация по тегам
C261, Chinese-Other, Ericsson, FAQ по iPhone, Fly, iPhone 2G, iPhone 3G, iPhone 3GS, L6, Motorola, Nec, Nokia, Nokia 6101, Samsug, Samsung, Samsung C230, Samsung X120, Sharp, Siemens M65, Sony, Sony Ericsson S600i, SonyEricsson, T720, unlock, user lock, V3x, V9, VK, Активации для GSM Боксов, код телефона, прочистка телефонов, прошивка телефонов, разблокировка телефонов, раскодировка телефонов, ремонт телефонов, русификация телефонов, снятие паролей, Список доступных Логов, Схемы

Показать все теги

Радио Оn-Line


Ремонт и Услуги » Статьи по ремонту: Глава 6. Программирование


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

Телефон уже давно перестал быть средством коммуникации. Он все больше и больше превращается в мультимедийную установку, иногда даже более удобную, если сравнивать с немобильными аналогами. Программное обеспечение, разрабатываемое на заводах производителей, нередко требовало исправлений, но изметить его и сделать изменения вовремя не получалось. В результате возник целый класс мобильного сообщества – «прошивкокопатели». Это были люди, которые не хотели ждать, пока появятся исправления производителя. Со временем они научились воздействовать на любимую модель телефона таким образом, что появлялись новые возможности. Появилось такое слово, как «патч» - заплатка, которую латают или прошивают в телефон. Это небольшие новые кусочки программ, заменяющие в чем-то ущербные старые. Преградой для творчества всегда было отсутствие знаний, по какому принципу происходит программирование. Фирме-производителю совсем невыгодно, чтобы их разработки стали понятны конкурентам, поэтому делается всё возможное, чтобы усложнить доступ к памяти телефона. «Прошивкокапатели» в основном работают с «открытыми» телефонами, с теми у которых можно прочитать содержимое памяти в явном виде, разобраться с ним, изменить и вернуть обратно в телефон, оперируя обычным дата-кабелем. Самыми известными стали модели от Siemens-BenQ , а также от Samsung на платформе Swift (х100, х600…)

В ходе долгих экспериментов сформировалась особая рецептура по тюнингу мобильного телефона. Если раньше стремились получить функцию, которая была потенциально доступна, но была или не реализована или реализована в похожей модели, но более дорогой, то теперь основный упор делают на добавление индивидуальных функций, применение которых определяет лишь пытливый ум хозяина мобильного телефона. Например "Разблокировка клавиатуры двойным нажатием #" или "Разблокировать клавиатуру любой клавишей (0-9,#)".

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

Одним из таких ярких примеров была взаимозаменяемость Siemens А57=A55=С55 – появлялся голосовой набор и GPRS. Или Siemens Sl42=Sl45=Sl45i – в последнем присутствовала поддержка Java. SonyEricsson K750 = D750 = W800 – в последнем улучшенный плеер.

Большую роль начинают играть приложения, написанные на Java, которые сами по себе вносят в телефон что-то новое и актуальность перепрошивки телефона постепенно исчезает. Прошивкокапатели просто начинают потихоньку взрослеть, и как класс – исчезать. С появлением смартфонов, уже давно стёрта грань между компьютером и телефоном. Всё, что хотелось бы видеть в компьютере, уже давно появилось в телефоне.

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

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

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

Терминология

Основой для понимания любого материала является терминология. Объяснить программирование можно даже с применением ненормативной лексики, употребляя всего несколько слов в различной их комбинации. Но для этого нужно обладать недюжинным талантом. Мы же начнем с терминологии. Как профессионалы, так и мастера средней квалификации очень часто пользуются сленгом. Понять и "разложить по полочкам" новичку такую информацию очень сложно. Мы попытаемся объединить сленг и официальную терминологию и понятия для того, чтобы они "дошли". Итак…

СЛОВАРЬ СЛЕНГА И ОФИЦИАЛЬНЫХ ТЕРМИНОВ

Терминал – мобильный телефон (далее просто телефон).

Прошивка (программа, содержимое памяти) – массив данных, предназначенных для управления компонентами системы в целях реализации определенного алгоритма.

Прошивка (процесс - прошить, переписать, профлешить) – перепрограммирование - полная либо частичная смена программного обеспечения телефона.

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

Операционная система (ОС) - комплекс программ, обеспечивающий выполнение других (в т.ч. прикладных) программ, ввод-вывод данных, управление данными, взаимодействие с оператором (пользователем) и т.п.

Программатор телефона – специальное устройство, с помощью которого производится запись информации из компьютера в память телефона.

Коммутация, синхронизация – связь и согласование работы телефона с компьютером в целях обмена данными.

Дата-кабель (кабель, шнурок) – жгут проводов, соединяющих особым образом телефон с компьютером для обмена данными. Схема соединения зависит от аппаратной реализации того или иного телефона и для разных телефонов принципиально разная.

Разъём (коннектор) – электрический соединитель кабеля и устройства. К телефону с помощью разъемов подключаются компьютер, зарядка, наушники и пр.

Интерфейс – совокупность средств и правил для взаимодействия устройств и (или) программ. В простейшем случае это согласующий элемент между компьютером и телефоном (внешний разъем, дата-кабель, программатор, ИК-порт и т.п.).

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

Игнишн (Ignition – "зажигание") – сигнал из телефона в компьютер после кратковременного нажатия кнопки включения на телефоне (при этом он продолжает находиться в выключенном состоянии) для запуска процесса перепрограммирования.

Бутлоадер (бут, лоадер, boot, loader, bootloader) – программа самозагрузки, посылаемая компьютером в телефон после получения сигнала "игнишн", размещается в оперативной памяти, чаще всего процессора, и после размещения получает права управлять процессом перепрограммирования (загрузки) памяти телефона.

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

Контактная площадка – металлизированное покрытие на плате телефона для электрического соединения (не пайка) деталей телефона. Обычно имеют золотистое покрытие.

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

Устройство памяти.

Процессоры мобильных телефонов работают с двумя видами памяти.
1. ROM (Read Only Memory) - память, предназначенная только для чтения в процессе работы телефона с возможностью записи в нее при перепрограммировании. Небольшая область ROM, предназначенная для программ начальной загрузки (аналог BIOS ПК), находится в процессоре. Основная область ROM использует микросхему Flash (флэш)-памяти. С этой микросхемой и производится основной обмен при перепрограммировании. Эта память энергонезависимая - при отключении питания информация сохраняется. Применяются также дополнительные области на съемных флэш-картах.
2. RAM (Random Access Memory) - память с произвольным доступом, используемая как оперативная, т.е. для временного хранения данных. Эта память энергозависимая – при отключении питания информация исчезает. В нее загружается и затем работает операционная система. Иногда является встроенной в процессор. Во многих телефонах для нее используется отдельная микросхема.

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

 

Глава 6. Программирование

 

Как уже упоминалось, вся область памяти состоит из двух частей – ROM и RAM. Рассмотрим их по порядку.

ROM

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

Вся остальная, гораздо более значительная часть ROM, располагается в микросхеме Flash-памяти, а также на съемных картах. Flash-памяти, в свою очередь, условно делится на следующие основные области:
- BOOT CORE – загрузчик операционной системы.
- EEPROM - эта область содержит настройки телефона (заводской номер телефона (IMEI), коды блокировок сети, пользователя, калибровки радиотракта, игры, установки для дисплея и многое другое...) и появилась потому, что новые телефоны уже не имеют отдельной микросхемы EEPROM.
- LANG, PPM – блок данных, в котором хранится языковой пакет. Так как существует большое количество языков и шрифтов во всем мире, в одном PPM-блоке может храниться от 1 до 20 языков. Смена языкового пакета это основная причина смены PPM. Перезапись PPM-блока такой же версией, производится в случае повреждения данных.
- MCU – основная программа (операционная система) со всеми, необходимыми для работы телефона, функциями. MCU от одной модели нельзя использовать для другой. Замена MCU делается для устранения заводских недостатков или добавления новых функций, а также в случае повреждения данных во флэш-памяти (программный ремонт).
- OTP – единожды программируемая область памяти, в которой содержатся "отпечатки пальцев" телефона - информация, которая присуща только данному телефону без права её изменения.
- CONTENT - картинки, мелодии, JAVA-приложения, звонки, SMS-сообщения, адресная книга и др. Для этой области может использоваться съемная карта (MMC или FLEX).
- FS – файловая система, в которой располагается CONTENT.

RAM

ROM (Flash-память) является аналогом жесткого диска, который хранит данные операционной системы. Однако сама операционная система работает из RAM (оперативной памяти), куда она загружается после включения питания телефона. RAM содержится либо в отдельной микросхеме, либо встраивается в процессор.

Механизм перепрограммирования.

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

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

Все изменения в телефоне производит управляющая программа компьютера. Обычно она состоит из нескольких частей – собственно программы и различных файлов прошивок, т.е. содержимого программного обеспечения телефона. В начале, как правило, управляющую программу компьютера необходимо настроить путем выбора соответствующих опций. После настройки и старта процесса перепрограммирования в телефон последовательно бит за битом поступает информация, содержащаяся в файлах прошивок. Приемом этой информации и передачей ее в необходимую область памяти в телефоне управляет процессор с помощью начального загрузчика - программы, которая содержится в ROM самого процессора. В самом начале в оперативную память телефона загружается так называемый загрузчик (boot, loader) – программа, которой сразу после ее загрузки передается управление последующим перепрограммированием. Дальнейший процесс стирает флэш-память и заполняет ее содержимым новых файлов прошивок в соответствии с командами программы загрузчика. Термином прошивка в дальнейшем мы будем обозначать содержимое программного обеспечения телефона.

Иногда начальный загрузчик содержится не в ROM процессора, а в флэш-памяти (некоторые модели Motorola). В этом случае для перепрограммирования необходимо микросхему флэш-памяти выпаять, заново запрограммировать на специальном программаторе, а затем впаять обратно в телефон.

Почему для разных телефонов нужны разные кабели, программы и программаторы?

На этот вопрос можно ответить очень просто – потому, что не существует:
- одинакового программного обеспечения для разных телефонов;
- одинаковых процессоров и систем команд в разных телефонах;
- одинаковых сигналов внутри телефона по назначению и параметрам (длительность частота и пр.);
- одинаковых объемов и алгоритмов программирования разных микросхем и т.д. и т.п.

Схемы интерфейсов (кабелей).

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

Двухпроводный двунаправленный последовательный интерфейс (универсальный, FBus) – использует два провода для передачи информации в двух направлениях (Tx – передача - Transmit, Rx – прием - Receive) и GND – земля (рисунок 2). Питание + 5В удобнее всего взять непосредственно из компьютера (например, из разъема USB). Сигналы ignition/autoignition подаются на вход напряжения зарядки телефона. Светодиоды служат для индикации обмена. Схему можно собрать в корпусе обычной наружной телефонной евророзетки с использованием SMD-компонентов. Такая конструкция дает удобную возможность использовать устройство для работы с разными телефонами – нужно сделать несколько кабелей для мобильных телефонов с необходимыми для них разъемами, которые другим концом (телефонной евровилкой) соединяются с устройством.

 

Глава 6. Программирование

 

Однопроводный двунаправленный последовательный интерфейс (MBUS, CBUS) – использует один провод для передачи информации в двух направлениях и GND – земля. Применяется в телефонах Nokia и Bosch для работы с EEPROM и для синхронизации с компьютером. Он получается если в предыдущей схеме Rx и Tx соединить по схеме на рисунке.

 

Глава 6. Программирование

 

Параллельный интерфейс (использует порт принтера) используется для увеличения скорости обмена для перепрограммирования телефонов Nokia, некоторых моделей SonyEricsson, Sagem. Для старых типов Nokia этот интерфейс получил название Nokia flasher, где помимо Rx, Tx и Gnd, используются сигналы MBUS и BTEMP. Используется микросхема 74HC14 (аналог 1564ТЛ2 - шесть триггеров Шмидта). Питание + 5В удобнее всего взять непосредственно из компьютера (например, из разъема USB).

 

Глава 6. Программирование

 

USB – интерфейс. Основная особенность стандарта - возможность пользователям работать в режиме Plug&Play с периферийными устройствами. Это означает возможность подключения устройства к работающему компьютеру, автоматическое распознавание его немедленно после подключения и последующей установки соответствующих драйверов. Питание маломощных устройств подается с самой шины. Скорость шины достаточна для подавляющего большинства периферийных устройств. USB – интерфейс работает с новыми моделями Motorola на платформе P2K. На его основе созданы специализированные программаторы, в том числе и эмулирующие работу обычного COM-порта. Цоколевка розетки разъема, устанавливаемой в компьютере, приведена на рисунке, а назначение контактов в таблице.

 

Глава 6. Программирование

 

Таблица. Назначение контактов разъема USB.

Номер контакта Назначение Цвет провода
1 V BUS Красный
2 D - Белый
3 D + Зеленый
4 GND Черный
Оплетка Экран Оплетка

Большинство программ работют через универсальный интерфейс. Достаточно собрать приведённую выше схему, найти соответствующий разъём телефона, правильно скоммутировать сигналы Rx, Tx, Gnd и +5В и соединить интерфейс с телефоном. Цоколевку (распиновку) разъемов многих телефонов можно найти по адресу: pinouts.ru

Особенности программирования

Этот раздел начинает ознакомление с методиками программирования мобильных телефонов. Начнем с телефонов производства Siemens х35, х45 серий и Nokia платформы DCT-3. Здесь и далее буква «x» обозначает серии данного модельного ряда: «c», «s», «m», «me», «sl». Вы сможете менять версии программного обеспечения в мобильном телефоне с целью русификации или даже восстановления (программного ремонта), а также снимать ограничения на уровне пользователя или оператора («разллочивать»).

Телефоны Siemens x35-x45

Для программирования потребуется двухпроводный двунаправленный (FBUS) интерфейс. Расположение и назначение контактов в разъеме телефона показано на рисунке. Разъем для кабеля «телефон – интерфейс» можно сделать, взяв 2 разъема от «зарядок». Из одного разъема необходимо аккуратно вынуть недостающие в первом контакты.

 

Глава 6. Программирование

 

Для программирования потребуются: свободный COM-порт (RS – 232) компьютера, интерфейс и телефон с заряженным аккумулятором. Обмен компьютера и телефона начинается либо после кратковременного нажатия кнопки включения телефона (при этом телефон вырабатывает сигнал ignition – "зажигание"), либо по сигналу компьютера autoignition, который подается на вход напряжения зарядки телефона (Charge voltage). В общем случае подтверждение каких-либо операций в программе осуществляется кратковременным нажатием кнопки включения телефона. После соединения между собой компьютера, интерфейса и телефона приступаем к процессу программирования.

Структура программного обеспечения и источники его распространения.

Программное обеспечение, хранящееся в микросхеме Flash-памяти для простоты понимания можно условно разделить на две большие области: firmware и EEPROM.
Для работы с областью firmware телефонов Siemens была создана специальная заводская утилита WinSwup, которая позволяет полностью заменить как версию программного обеспечения, так и язык меню. При этом новая версия размещается в «теле» WinSwup. Таким образом, сколько версий программного обеспечения, столько и WinSwup-ов, коллекцию которых можно найти на портале: allsiemens.ru/flash
Кроме этого, есть возможность работать с пользовательской версией WinSwup, распространяемой непосредственно с официальной страницы производителя.
В компьютерном представлении WinSwup выглядит как исполняемый ехе-файл, название которого можно представить как Name_XX_YY_ZZ.exe, где:
Name – модель телефона, под который написана утилита (может и отсутствовать) XX – версия программного обеспечения YY – номер языкового пакета («04», «91» - говорит о наличии русского языка в меню) ZZ – номер системы интуитивного набора T9 текста ( «05» - наличие «русского Т9»)

В самом телефоне эту же информацию можно увидеть в специальном сервисном меню, вызываемого путём нажатия комбинации клавиш: *#06# плюс «левая клавиша выбора» (left softkey).
С помощью WinSwup нельзя оперировать с областью памяти EEPROM. Если это необходимо, на свой страх и риск можно использовать программу freia, с помощью которой можно работать не только с EEPROM, но и со всей прошивкой в целом (fullflash).

Winswup

Работу начинаем с настройки программы Serial Config (рисунок 6), где следует указать номер COM-порта, к которому подключен интерфейс и Baud - скорость обмена (обычно 115200).

 

Глава 6. Программирование

 

Для запуска процесса программирования существует два варианта действий:
- Если телефон включен и подключен к кабелю - нажать кнопку START.
- Если телефон выключен и подключен к кабелю - поставить галочку для Skip в позиции PreCheck для отключения самотестирования телефона и нажать кнопку START.

Второй вариант нужен для случаев, когда ремонтируемый телефон не включается из-за ошибок, которые могли произойти во время работы по первому варианту. Следует помнить, что при отсутствия режима autoignition, после нажатия кнопки START требуется кратковременно нажать кнопку включения телефона.
В обоих случаях, после завершении процедуры, программа выдаст сообщение, что процесс прошёл успешно со 100% окончанием.

Freia

Настройку программы начинаем с клавиши Configuration functions главного меню – Main functions. Устанавливаем COM port of cable - номер COM-порта, к которому подключен интерфейс, скорость обмена - Speed of communication (обычно 115200). Затем необходимо указать тип загрузки - Boot type («normal») и при наличии autoignition в интерфейсе отметить галочкой DTR в меню COM port setup.

 

Глава 6. Программирование

 

С помощью Freia можно считать либо всю прошивку, либо выборочно участки памяти, записать произвольные области памяти, а также провести операцию по снятию кодировок как пользовательских, так и операторских («разлочить»).

Чтение прошивки осуществляется с помощью клавиши Read Flash главного меню – Main functions, с последующим выбором области памяти в меню Presets, которое находится в меню Flashing functions. Эта область в ходе чтения автоматически сохраняется в файл с расширением *.fls. Процесс запускается кнопкой ОК. Процедура отображается в окошке – Process information.

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

 

Глава 6. Программирование

 

Запись прошивки в микросхему Flash-памяти осуществляется кнопкой Write Flash главного меню – Main functions, открывающей меню выбора файла прошивки в формате *.fls, который мы хотим записать. Следует быть внимательным с подставляемыми файлами, а именно чтобы размер записываемого файла совпадал с размером той области памяти, в которую он помещается, иначе на программном уровне телефон будет повреждён.

 

Глава 6. Программирование

 

По окончании программирования необходимо обязательно восстановить заводской номер телефона (IMEI), хранящийся в EEPROM-области памяти телефона, так как вместе с чужой прошивкой мы записываем и чужой EEPROM, а, следовательно, и чужой IMEI. Восстановление осуществляется в следующем порядке (рисунок 10). Нажимаем кнопку Unlocking functions главного меню – Main functions. В открывшемся меню Unlocking functions отмечаем позицию Direct unlock, no map is saved и нажимаем кнопку Use Original IMEI. После этого подтверждаем процедуру кратковременным нажатием кнопки включения на телефоне (ignition). Эта операция приводит к снятию пользовательских и операторских кодировок.

 

Глава 6. Программирование

 

Телефоны Nokia DCT-3:

2100 (NAM-2),
3210 (NSE-8/9), 3310/3315 (NHM-5), 3330 (NHM-6), 3350 (NHM-9), 3360 (NPW-1), 3390 (NPB-1), 3410 (NHM-2), 3610 (NAM-1)
5110 (NSE-1), 5110i (NSE-2), 5120 (NSC-1), 5130 (NSK-1), 5160 (NSW-1), 5190 (NSB-1), 5210 (NSM-5), 5510 (NPM-5)
6090 (NME-3), 6110 (NSE-3), 6120 (NSC-3), 6130 (NSK-3), 6138 (NSK-3), 6150 (NSM-1), 6160/6162 (NSW-3),
6185/6188 (NSD-3AX), 6190 (NSB-3), 6210 (NPE-3), 6250 (NHM-3)
7110 (NSE-5), 7160 (NSW-5), 7190 (NSB-5)
8210 (NSM-3), 8250 (NMS-3D), 8290 (NSB-7), 8810 (NSE-6), 8850 (NSM-2), 8855 (NSM- 4), 8890 (NSB-6)
Communicator 9110 (RAE-2), Communicator 9210 (RAE-3)
Card Phone 1.0 (RPE-1), Card Phone 2.0 (RPM-1)

Это относительно новые телефоны. Для полноценной работы с ними необходимо специальное аппаратно-программное оборудование (UFS, Jaf, Griffin, Dejan-flasher), требующее времени на его изучение и финансовых затрат.
Существуют и простые условно-бесплатные средства, но круг задач , решаемых с их помощью, ограничен. Почему эти средства названы условно-бесплатными, наверное, понятно – они все-таки требуют и времени и денег на комплектующие и т.п. Из этой категории для работы с телефонами Nokia необходимы 2 программы и, соответственно, 2 интерфейса:
- последовательный, который работает только с областью EEPROM
- параллельный – для работы с MCU и PPM

Для программирования потребуются:

1. Программы. Существуют программы Eeprom Tools by B-phreaks, Nokia Tool by Jordik или Nokia Tool by Rollis. Они имеют интуитивно понятный интерфейс и возможность автоматически настраивать для программирования каждой конкретной модели. В качестве примера возьмем Nokia Tool by Rollis Ver 1.8. - программа для чтения и записи флэш-памяти телефонов Nokia, распространяется бесплатно.

2. Параллельный интерфейс. Он предназначен для работы с программами чтения и записи flash-памяти телефонов Nokia. Сигнал BTEMP - необходим только для автоматического входа в тест-режим. Его можно не использовать, а вместо этого в начале процедуры чтения/записи нажимать кнопку включения телефона. Сигнал Vpp - используется только в модели 3210, все остальные работают без него. Использование Vpp для модели 3210 обязательно. Отечественными аналогами диодов 1N4148 являются диоды КД522 с любым буквенным индексом. Для корректной работы интерфейса иногда необходимо в BIOSе компьютера в настройках Integrated Peripherals изменить параметр Onboard Parallel Mode (обычно ECP). Синхронизация происходит сигналом MBUS, при этом телефон должен быть во включенном состоянии.
Через этот же интерфейс возможно оперировать с областью памяти EEPROM, а следовательно, можно получить доступ к различным кодировкам, заводскому номеру IMEI или осуществить сброс настроек в меню телефона по умолчанию. Например с помощью программы NokiaTool1.8, можно вычитать информацию о телефоне (1) , а потом или раскодировать его от операторских блокировок (2) или поменять IMEI (3) или сбросить настройки по умолчанию (4), в частности во время сброса, также будет сброшен код телефона на «12345» - по умолчанию . Операция ”Update FAID” (5) выполняет пересчёт секретной информации телефона (цифровой ключ) при каждом вмешательстве в телефон программными методами. В частности после раскодировки, смены IMEI или после перепрограммирования. Если её не проводить, то потом телефон будет постоянно перезагружаться и никогда не найдёт сеть. Алгоритм, по которому происходит пересчёт, долгое время не был известен и операции по пересчёту FAID могли производить лишь в официальных представительствах Nokia. В настоящее время, всё стало открыто и вскоре реализовано в похожих программах, как NokiaTool.

 

Глава 6. Программирование

 

То, что касается программирования, то для этого уже необходимо или специальное устройство (UFS, Jaf, Griffin, Dejan-flasher) или самодельный (купленный) интерфейс FBUS на основе параллельного порта LPT. Соответственно под каждое из приведённых устройств существует программа-оболочка, которая осуществляет операцию перепрограммирования.
Следует отметить, что для всех Nokia, начиная с данного поколения программное обеспечение инсталлируется отдельно из инсталяционного пакета Phoenix, которое создаётся в виде отдельных пакетов под данную модель телефона и под данную версию программного обеспечения. После установки все необходимые файлы помещаются в папку c:\wintesla по умолчанию. Прошивки различаются не по номеру модели Nokia, а по её типу. То есть каждой модели соответствует свой тип. Его можно посмотреть например при определении версии в телефоне, путём нажатия комбинации *#0000# или на задней крышке на наклейке. Ниже приведён перечень для данного поколения Nokia.

 

Глава 6. Программирование

 

Слева пишется тип модели, а справа – сама модель. Соответственно и прошивки следует искать по типу, например инсталляционный пакет для 3310 (NHM-5) будет имеет следующий вид:
NHM-5_6.07.exe – как можно заметить, версия прошивки здесь 6.07. После установки, в папке c:\wintesla появится папка NHM-5, в которой и будут находится файлы нашей прошивки.

 

Глава 6. Программирование

 

Если провести сортировку по размеру, от максимального до минимального, то можно заметить, что одним из самых больших файлов является nhm5ny06.070 – при этом его расширение будет заканчиваться на «0» . Этим файлом является главная (main) прошивка – mcu. Формально mcu – это операционная система телефона – firmware. При этом языковой пакет в эту часть прошивки не входит, его следует прошивать отдельно. Из приведённого выше списка видно, что расширения всех остальных файлов в папке NHM-5 за4канчиваются на одну из букв алфавита, каждой из которых соответствует определённый языковой пакет, а следовательно и набор языков в меню. Например наличие русского языка определяет буква «е», то есть файл nhm5ny06.07e является языковым пакетом с наличием русского языка и обозначается как ppm.
Отдельно можно перепрограммировать и EEPROM, но в практических целях при смене версии программного обеспечения или русификации, он не играет роли. Лишь в случаях, когда нарушается его целостность. Например при аппаратной или программной поломке, на дисплее может появиться надпись CONTACT SERVICE или телефон например уйдёт в состоянии, когда он будет закодирован сразу под всех операторов (4 locks), что с первого раза можно действительно принять под операторскую кодировку. Но если поставить телефон на NokiaTool18, то вычитав о нём информацию, увидим, что все 4 возможные операторские кодировки – закрыты (CLOSE). Вот в таких случаях следует полностью перепрограммировать телефон, залить в него фуллфлеш (fullflash), mcu+ppm+eep. Следует помнить, что при замене области EEPROM другой (обычно они называются девственные – пустые), у нас появится некорректный заводской номер телефона IMEI, залитый вместе с чужим EEPROM. Поэтому следует после фуллфлеша исправить IMEI с помощью того же NokiaTool18.

Что нужно сделать:

1. Обязательно!!! Считать флэш вашего телефона (на случай если потребуется вернуть все назад).
2. Залить необходимый флэш файл (MCU+PPM) в телефон. Для русификации телефона достаточно закачать PPM с такой же версией прошивки.
3. После того как вы зальете в телефон новую прошивку, вам необходимо отключить кабель от телефона. Затем снять и вставить батарею. После этого телефон должен нормально включаться и выключаться, единственная проблема в том, что он не сможет зарегистрироваться на базовой станции. При включении - будет находить сеть на короткий промежуток времени, потом терять и через несколько секунд перезагружаться. Если телефон не включается, или при включении на экране ничего не появляется либо загорается надпись "Contact Service" или "Wrong DSP SW", значит, во время прошивки произошел какой-то сбой. Может быть используемый вами флэш-файл поврежден или прошивка не подходит для данной версии телефона (используемая электроника различается для каждой конкретной версии) и вам нужно поискать другую прошивку.
4. Если все в порядке и телефон нормально включается - подключите MBUS-шнур и запустите программу для обновления FAID (программ таких в последнее время появилось не мало, к примеру, флэшер Knok - кроме функций флэширования может также выполнять обновление FAID). Включите телефон и нажмите кнопку "F1" - для nk_calk ("Update Faid" - для Eeprom Tools 3.1). Программа считает данные с вашего телефона, и затем в течении двух/трех секунд обновит FAID, выключите телефон затем опять включите и он снова найдет сеть. Рекомендуется после обновления прошивки сделать сброс установок телефона к заводским.

Несколько слов о том, что такое MCU и PPM

MCU - основная программа со всеми, необходимыми для работы телефона, функциями. MCU от одной модели (например 5110) вы не сможете использовать с другой моделью телефона (например 6110). Смена MCU имеет смысл, только если вы желаете обновить прошивку вашего телефона с целью устранить имеющиеся недостатки или добавить некоторые новые функции. Также вы можете заменить MCU такой же версией в случае повреждения данных во флэш-памяти.
PPM - блок данных, в котором хранится языковой пакет. Так как существует большое количество языков и шрифтов во всем мире, в одном PPM-блоке может храниться от 1 до 20 языков. Смена языкового пакета это основная причина смены PPM. Также вы можете перезаписать PPM-блок такой же версией, если данные в имеющейся флэши повреждены.

Правила обновления прошивки и смены языкового пакета

1. Всегда делать backup флэши вашего телефона, для того чтобы можно было все восстановить в случае ошибки.
2. Ни в коем случае не флэшируйте область EEPROM! Потому как файлы прошивок с MCU и PPM вы найти сможете, а вот восстановление EEPROM будет очень сложно. 3. Запись MCU и PPM блоков можно производить раздельно, в соответствии с адресами указанными в таблице ниже. Для разделения этих блоков можно использовать любой Hex-редактор.
4. Для смены языкового пакета достаточно записать нужный вам PPM от версии прошивки такой же, как у вашего телефона.
5. Если ваш телефон был когда-то заблокирован и разблокирован частичным флэшированием, то вам нужно будет полностью переписать MCU и PPM блоки. Иначе программа обновления FAID не сможет считать с телефона значение MSID (ошибка - Can't Read MSID). После обновления прошивки вам нужно будет снова разблокировать телефон.
6. Для смены MCU, то есть для обновления версии прошивки, нужно сменить и MCU и PPM блоки.
7. В некоторых случаях после обновления прошивки вам необходимо установить настройки вашего телефона по умолчанию. Сделать это можно, используя Wintesla либо Nokia Tool.
Перед и после флэширования Nokia 7110, необходимо вставить в телефон SIM-карту и набрать код *#7370#.

ПРИЛОЖЕНИЯ

1. Структура IMEI.

IMEI - International Mobile Equipment Identifier - число, являющееся уникальным для каждого выпущенного мобильного телефона. Устанавливается на заводе при изготовлении, служит для идентификации устройства в GSM сети. Число IMEI обычно можно прочитать на специальной табличке, расположенной под аккумуляторной батареей, а также определить (у большинства аппаратов), введя на клавиатуре следующий код:

*#06#

Каждая фирма-производитель мобильных телефонов несет ответственность за то, что не существует двух мобильных телефонов с одинаковыми IMEI.

Код IMEI содержит 15 цифр и состоит из четырех частей:

IMEI = TAC + FAC + SNR + SP,

где
TAC (Type Approval Code) - шестизначный код выбранного типа телефона конкретной серии (первые 2 цифры - код страны фирмы - разработчика);
FAC (Final Assembly Code) - используемый фирмой-разработчиком двузначный код, по которому можно определить страну, где был изготовлен телефон (код страны финальной сборки);
SNR (Serial Number) - шестизначный серийный код, который присваивается конкретному мобильному телефону;
SP (Spare) - одна цифра, в зависимости от решения производителя контрольное или резервное число (у старых моделей почти всегда 0).

Коды TAC и FAC могут совпадать у телефонов одного типа и одной партии, выпущенной на одном и том же предприятии. Код SNR всегда индивидуален для каждого мобильного телефона.

Если Ваш телефон не побывал в руках какого-нибудь "экспериментатора", то можете быть уверены, что у него - заводской IMEI. Несовпадение внутреннего и "этикеточного" IMEI может быть в случаях когда телефону меняли корпус, "перепрошивали" и др.

Коды IMEI являются основой для создания так называемых "белых", "серых" и "черных" списков мобильных телефонов. В "белый" список входят все выпущенные фирмами-производителями легально проданные и используемые телефоны. "Серый" список составляют мобильные телефоны, статус которых точно не определен (повреждение firmware, брак и т.п.). В "черный" список включаются все краденые мобильные телефоны.

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

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

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

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

2. Цоколевка и назначение контактов SIM-карты стандарта ISO 7816

Контакт Сигнал Назначение
С1 Vcc Напряжение питания
С2 Reset Начальная установка
С3 Clock Тактовая частота
С4 n/c Не подключен
С5 GND Общий
С6 Vpp Сигнал программирования
С7 I/O Ввод/Вывод
С8 n/c Не подключен

 

Расположение выводов (вид со стороны контактов)

 

Глава 6. Программирование
 

 

  Покупка Продажа и Ремонт Электронных Гаджетов Девайсов Аксессуаров Мобильных Устройств Планшетов Телефонов Смартфонов Новейшей Электроники и Электрики Девайсы 2021 года Инновационная Электроника и Электротехника Купить в Екатеринбурге! Интернете Магазин   Покупка Продажа и Ремонт Электронных Гаджетов Девайсов Аксессуаров Мобильных Устройств Планшетов Телефонов Смартфонов Новейшей Электроники и Электрики Девайсы 2021 года   Покупка Продажа и Ремонт Электронных Гаджетов Девайсов Аксессуаров Мобильных Устройств Планшетов Телефонов Смартфонов Новейшей Электроники и Электрики Девайсы 2021 года