Как расшифровать прошивки эбу

Добавил пользователь Валентин П.
Обновлено: 06.08.2024

Обе системы имеют в комплектации датчик кислорода и катализатор. Первоначально системы были спроектированы и откалиброваны производителем (GM) для норм токсичности США-83, которые впоследствии были перестроены для удовлетворения требований токсичности Евро‑2. Позднее появилась версия для норм России (только для 16-ти клапанного двигателя ВАЗ-2112).

ЭСУД, применяемые на автомобилях ВАЗ
ЭСУД, применяемые на автомобилях ВАЗ
ЭСУД, применяемые на автомобилях ВАЗ

ЭСУД, применяемые на автомобилях ВАЗ
ЭСУД, применяемые на автомобилях ВАЗ

Для автомобилей классической компоновки используется модификация Январь 5.1.3 2104 – 1411020-01 в комплектации Евро‑2, без датчика детонации. От версии 5.1 отличается только не запаянными элементами канала детонации.

ЭСУД, применяемые на автомобилях ВАЗ

ЭСУД, применяемые на автомобилях ВАЗ

В качестве ПЗУ в данных блоках использована микросхема FLASH, емкостью 256 Kb, из которых только 32 Kb содержат калибровочные таблицы и могут быть считаны и перезаписаны. Вернее, записать можно все 256 Кб, а вот считать только 32 кб. Считывание /запись этих блоков (без вскрытия блоков) поддерживает программатор Combiloader от SMS – Software. Возможно так же программировать flash внешним программатором через переходник, подключаемый к шине ЭБУ.

В данном ЭБУ использован 16-разрядный процессор B58590 (внутренняя маркировка фирмы Bosch), 20 – разрядная шина и, в качестве ПЗУ, для хранения ПО и калибровок, использована flash – память 29F200.

ЭБУ разных модификаций аппаратно различаются. ЭБУ под нормы Е3 (1411020 – 50) имеет дополнительный драйвер для подогревателя 2‑го датчика кислорода. Так же возможны различия по каналу ДТВ.

Этот тип ЭБУ поддерживает не отключаемую драйверную диагностику. Поэтому при установке ГБО на них строго обязательно применение безразрывного отключения форсунок.

- 2111 – 1411020-72 с прошивкой V5V13K03 (V5V13L05). Данное ПО несовместимо с ПО и ЭБУ ранних версий (V5V13I02, V5V13J02).
– 2111 – 1411020-62 с прошивкой V5V03L25. Данное ПО несовместимо с ПО и ЭБУ ранних версий (V5V03K22).
– 2112 – 1411020-42 c прошивкой V5V05M30. Данное ПО несовместимо с ПО и ЭБУ ранних версий (V5V05K17, V5V05L19).

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

Почти все автомобили 2110 – 2112 выпуска позднее июня 2003 года выпущены с этим блоком, а модификация 2111 – 1411020-72 частый гость на новых 2109 – 2111.

Эти ЭСУД сняты с производства в начале 2005 г.

ЭСУД, применяемые на автомобилях ВАЗ

Внутри этого семейства имеются аппаратные различия. Как видно на рисунке внизу, ЭБУ для 8 кл. модификаций (2111 – 1411020-80 и 21114 – 1411020-30) содержат два ключа управления зажиганием. Блоки для 16-клапанных двигателей 1,6 (21124 – 1411020-30) имеют 4 встроенных ключа управлением зажигания.

Подробнее о двигателях ВАЗ 21114 и 21124 читайте здесь.

ЭСУД, применяемые на автомобилях ВАЗ

Некоторые блоки имеют непривычную идентификацию: 22XC052S, 33XC0305. 22XC052S это копия B122HR01, 33XC0305 – B120ER17. На самом деле это название одной и той же прошивки, но в первом случае по классификации Bosch, а во втором случае по классификации ВАЗ.

22XC052S – System Supplier ECU SoftwareNumber
B122HR01 – Vehicle Manufacturer ECU SoftwareNumber

Для данного типа ЭБУ реализовано полное программное отключение ДК и регулировка содержания СО в отработанных газах, то есть, перевод на нормы токсичности Россия-83.

В августе 2007 г. на новых автомобилях и в продаже появились новые блоки управления Январь 7.2 собранные на принципиально новой элементной базе. Используется процессор SGS Tomphson с внутренним flash. Непонятно высокое предназначение этого блока, т.к буквально через несколько месяцев, в декабре 2007 г. он был сменен на М73 для норм Евро‑3.

С точки зрения диагностики, эти ЭБУ имеют точно такой же диагностический протокол, как обычные Январи‑7.2, полностью поддерживаемый в новой версии SMS-Diagnostics 2.

Новые контроллеры М73 производятся двумя заводами: НПО ИТЭЛМА и АВТЭЛ.
Аппаратно контроллеры идентичны, но софт там принципиально разный.

Автэловские проекты (софт АВТЭЛ):

21124 – 1411020-12 854.3763.000 – 02 45 7311 XXXX М73 Е3
21114 – 1411020-12 855.3763.000 – 02 45 7311 XXXX М73 Е3
21114 – 1411020-12 855.3763.000 – 02 45 7311 XXXX М73 Е3

Итэлмовские проекты (софт ВАЗ):

(обратите внимание, что эти контроллеры может выпускать и АВТЭЛ, то есть, прошивка будет начинаться с A)

Проекты АВТЭЛ имеют ПО, родственное Микас-11. Принципиальное отличие только в алгоритме работы канала детонации (в Микас-11 реализована модель АВТЭЛ, которую в упрощенном виде мы знаем еще со времен Микас‑7.1, а в ПО M73 реализована модель ВАЗ, похожая на модель ЭБУ Январь‑5/7). Теоретически, данное ПО может работать и с ДАД, режим работы ДМРВ/ДАД переключается флагом комплектации).

Аппаратно блок практически идентичен Январь 7.2+, отличие только в резисторах, отвечающих за конфигурацию процессора. Это позволяет, с некоторыми ограничениями, произвести переделку М7.3 в Январь 7.2+

На этом, собственно, можно поставить точку в истории ЭСУД с механическим дроссельным узлом.

ЭБУ с поддержкой электронного дроссельного узла (с конца 2010 г.)

В конце 2015 г., вслед за автомобилями УАЗ, на Нива-Шевроле появилась очередная модификация: Bosch M(E)17.9.71, 21230 – 1411020-50. Блок аппаратно отличается от 17.9.7, программируется модулем Combiloader Tricore TC17xx (BSL) или Bosch ME17.9.7 OBD, но, только после снятия защиты (разблокировки) ЭБУ с помощью модуля BSL Tricore TC17xx.

ЭБУ М74 не совместим по проводке/разъему ни с одним ранее применявшимся ЭБУ.

Программирование М74 возможно программатором Combiloader c соответствующим модулем (XC27x5) в BSL режиме. Т.к производитель вывел вход разрешения программирования на колодку (есть мнение, что это временно), то возможен перевод в BSL режим без разборки ЭБУ.

Следует иметь ввиду, что данные блоки постоянно дорабатываются производителем и уже имеют различие в аппаратном и программном обеспечении. Например, прошивки для Калины I444CB02 и I444CC03 построены на одном аппаратном уровне и программно взаимозаменяемы, а I444CD04 уже имеет различия и несовместима с предыдущими сериями.

В связи с появлением данного типа контроллера кабель М74 для Combiloader дополнен доп. разъемом OBD, старый кабель снят с производства.

Аппаратные различия, внутри одного семейства, на этом не заканчиваются, М74, берущие сигнал скорости с ДС на КПП и, отличаются аппаратно от М74, сигнал на которые идет с АBS. Различия наглядно представлены на фото.

Фото платы М74 8V [v7.37] (среднее разрешение, номиналы видно)

Блоки M86, помимо автомобилей ВАЗ, устанавливаются, с оригинальным программным обеспечением, так же на автомобили УАЗ.

M74M – рабочее заводское название и, возможно, в дальнейшем ВАЗ идентифицирует его как-нибудь по другому.

Внимание! Фото высокого разрешения предоставлены А. Михеенковым (aka ALMI). На них полностью просматривается топология плат и номиналы применяемых элементов. Фото находятся в архивах размером 3 – 25 Mb. Автором запрещено размещение данных фотографий на сторонних интернет – ресурсах без согласования и разрешения.



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

CALIBRATIONêXi º
attach.att
ÓÏ[Format]
Version=4

[CPU01]
CPUImageName=3F0S7300.xxz
FlashCodeName=
NewCID=3F0S7300
LocationID=0002000100070720
CPUType=87
NumberOfTargets=3
01_TargetCalibration=3F0S7200
01_TargetData=3531464734383B3A
02_TargetCalibration=3F0S7100
02_TargetData=3747354537494A39
03_TargetCalibration=3F0S7000
03_TargetData=3732463737463B4A

3F0S7300forIMV.txt ¸Ni¶m5A56001000820EE13FE2030133E20301
33E2030133C20EF13FE2030133E20301
33E2030133E2030133E2030133E20301
33E2030133C20EF13FE2030133E20301
33E2030133C20EF13FE2030133E20301
33E2030133C20EF13FE2030133E20301
33E2030133E2030133E2030133E20301
33E2030133C20EF13FE2030133E20301
33E2030133E20911381959FAB0EE9000
81C9E03ADE35CEEEEFC5CF8DE9AC0910
38C2E031DE35CEEEEFC8CF87E95C0920
.
Дальше идут строки по 32 шестнадцатеричные цифры.

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

Конкретно для этой прошивки у него имелся дамп содержимого:


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

Повторяющиеся фрагменты

Посмотрим внимательно на те шестнадцатеричные строчки:

5A56001000820EE13FE2030133E20301
33E2030133C20EF13FE2030133E20301
33E2030133E2030133E2030133E20301
33E2030133C20EF13FE2030133E20301
33E2030133C20EF13FE2030133E20301
33E2030133C20EF13FE2030133E20301
33E2030133E2030133E2030133E20301
33E2030133C20EF13FE2030133E20301
33E2030133E20911381959FAB0EE9000
81C9E03ADE35CEEEEFC5CF8DE9AC0910
38C2E031DE35CEEEEFC8CF87E95C0920
.

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

  1. Пять первых байт 5A56001000 — это некий заголовок, не влияющий на содержимое дампа;
  2. Дальнейшее содержимое зашифровано блоками по 4 байта, причем одинаковым байтам дампа соответствуют одинаковые байты в файле:
    • E2030133 → 00000000
    • 820EE13F → 80078000
    • C20EF13F → 80070000
    • E2091138 → E0076001
    • 1959FAB0 → 2A0600FF
    • EE900081 → 00000A58
    • C9E03ADE → EAFF2000
  3. Видно, что это не XOR-шифрование, а нечто более сложное; но при этом похожим блокам дампа соответствуют похожие блоки в файле — например, изменению одного бита 80078000→80070000 соответствует изменение одного бита 820EE13F→C20EF13F .

Соответствия между блоками

Получим список всех пар (блок файла, блок дампа), и поищем в нем закономерности:


Вот как выглядят первые пары в отсортированном списке:


Действительно, видны закономерности:


После перестановки подблоков по 4 бита в ключе сортировки, соответствия между парами подблоков становятся еще более явными:

Соответствия между подблоками

В вышеприведенном списке видны такие соответствия:

  • Для маски 0F000F00 :
    • x0xxx0xx в дампе → x2xxx1xx в файле
    • x0xxx4xx в дампе → x2xxx0xx в файле
    • xCxxx0xx в дампе → x0xxx5xx в файле
    • xx0xxx0x в дампе → xx0xxx3x в файле
    • xx0xxx5x в дампе → xx9xxx8x в файле
    • xx0xxx9x в дампе → xxAxxxBx в файле
    • xxFxxx0x в дампе → xxExxxDx в файле
    • xxFxxxFx в дампе → xx8xxxDx в файле
    • xxx0xxx7 в дампе → xxxFxxxF в файле
    • xxx7xxx0 в дампе → xxxExxxF в файле
    • xxx7xxx1 в дампе → xxx9xxx8 в файле


    Когда таблицы соответствия готовы, код расшифровки получается совсем простой:

    Заголовок прошивки

    В самом начале перед зашифрованными данными был пятибайтный заголовок 5A56001000 . Первые два байта — сигнатура 'ZV' — подсказывают, что используется формат LZF; дальше обозначены метод сжатия ( 0x00 — без сжатия) и длина ( 0x1000 байт).

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


    первая группа — буква и цифра обозначает тип (семейство) контроллера:

    J4 — блоки управления (ЭБУ) Январь-4/4.1;
    J5 — блоки управления Январь-5.1/5.1.1/5.1.2;
    V5 — блоки управления VS-5.1 (НПО "Итэлма");
    М1 — блоки управления Мотроник М1.5.4 (М1.5.4N); N (New) — новая аппаратная реализация
    M7 — блоки управления Мотроник MP7.0

    вторая группа — буква обозначает автомобиль, состояние разработки или шифр темы:

    V — автомобили ВАЗ с передним приводом семейств 2108, 2110;
    N — семейство автомобилей с полным приводом ВАЗ;

    Исключение почему-то составили прошивки для классики, например, J5V26L52 и пр.

    третья группа — две цифры обозначает условный номер комплектации (00…99); для переднеприводных автомобилей ВАЗ существуют следующие номера:

    четвертая группа — буква, обозначает порядковый уровень ПО (A…Z), чем дальше буква в алфавите, тем новее уровень ПО;

    пятая группа — две цифры, обозначает версию калибровки (00…99), чем больше номер, тем новее калибровки.

    Новые блоки Bosch M7.9.7 и Январь 7.2 и Микас 10 имеют другую, пока непривычную идентификацию.
    В них первая группа — одна буква — код производителя

    I — Итэлма
    B — Bosch
    А — Автэл

    вторая группа — одна цифра — модель контроллера

    1 — M10
    1 — M7.9.7
    2 — Январь 7.2

    третья группа — 3 знака(цифро-буквенный код) — условное обозначение проекта по внутренней ВАЗ-овской классификации.

    03Е — проект 2111, Евро II
    18E — проект 2111, Евро III
    04D — проект 21114, Евро II
    18D — проект 21114, Евро III
    05D — проект 21124, Евро II
    08D — проект 21124, Евро III
    20E — проект 21214, Евро II
    21E — проект 21214, Евро III
    22H — проект 21214, Евро III
    01C — проект 11183, Евро II
    C02 — проект 11183, Евро III
    02C — проект 11183, Евро III
    73D — проект 11184, Евро III
    73C — проект 21126, Евро III
    C02 — проект 11183, Евро III
    26F — проект 21067, Евро II
    26E — проект 21067, Евро II

    четвертая группа — 1 буква — версия ПО.

    пятая группа — 2 цифры — номер калибровки

    B103EQ09 — Bosch, М7.9.7, проект 03E, версия ПО — "Q", номер калибровок 09
    I203EK34 — Итэлма, Январь 7, проект 03E, версия ПО — "К", номер калибровок 34

    Попытка классификации обозначений тюнинговых прошивок

    Так как явно назрела необходимость в систематизации прошивок с измененными калибровками, в обозначении прошивок мы будем придерживаться следующих правил: калибровки переднеприводных ВАЗов — "V", заменены на:

    "А" — для прошивок на нестандартное "железо"
    "B" — "Butan" — прошивки для работы на сжиженном газе.
    "С" — "Cam" — прошивки под нестандартные распредвалы.
    "D" — "Dynamic" — для динамичных прошивок
    "Е" — "Economy" — для экономичных прошивок.

    Электронный блок управления двигателя (ЭБУ, контроллер) — мозговой центр автомобиля. Он принимает сигналы от всех систем, согласовывает и отслеживает неисправности.

    Расположение ЭБУ в автомобиле

    Некоторые функции ЭБУ:

    • управляет впрыском топлива;
    • регулирует положение дроссельной заслонки;
    • контролирует зажигание;
    • анализирует состав отработавших газов;
    • управляет фазами газораспределения;
    • определяет неисправности и информирует водителя о них.

    Что такое прошивка ЭБУ двигателя

    Программирование ЭБУ двигателя изначально делается производителем. Однако стоковая прошивка не адаптирована под конкретные климатические условия и стиль езды. Более того, на современных авто программно ограничивается мощность из-за экологических требований. Прошивка ЭБУ — это изменение параметров в заводской программе, которое позволяет обойти ограничения.

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

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

    Плюсы прошивки:

    • Повысится мощность и крутящий момент;
    • Разгон станет быстрее;
    • При желании отключается катализатор или сажевый фильтр;
    • Улучшается работа при включенном кондиционере;
    • Педаль газа реагирует быстрее;
    • Исчезает турбояма (двигатели с турбиной).

    Минусы прошивки:

    • Нужно заправляться на проверенных АЗС;
    • Повышается нагрузка на экологию при переходе на Е2.

    Что правится в прошивке ЭБУ

    В зависимости от целей чип-тюнинга при программировании ЭБУ двигателя вносится до 1300 калибровок. Чаще изменения касаются:

    • топливодачи, порогов обогащения, ограничения топливоподач при ускорении;
    • давления наддува на турбированных двигателях в экономичном и мощностном режиме;
    • байтов аппаратной конфигурации и маски ошибок;
    • лимитов момента, топливоподачи и наддува;
    • алгоритма работы диспетчера режимов;
    • лимитов оборотов отключения ТП и V max.

    Как устанавливается прошивка

    1. Чип-тюнинг начинается с диагностики двигателя. Есть правило: нельзя шить неисправный автомобиль.
    2. Считывается оригинальная прошивка ЭБУ или идентификаторы. Она модернизируется или выбирается готовая оптимизированная версия.
    3. Далее прошивку записывают. Одни блоки прошиваются без снятия и разборки с помощью адаптера через диагностический разъем OBDII. На других стоят ЭБУ, которые для перепрограммирования снимают. В этом случае есть варианты с разборкой и пайкой или без них.
    4. ЭБУ устанавливается на место. Владелец делает тестовый заезд.

    Почему не нужно перепрошивать ЭБУ самостоятельно

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

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

    Кто делает эти прошивки? Каким производителям можно доверять?

    Изначально производители прошивок появились там, где территориально выпускалась модель того или иного авто. По мере распространения информации о программировании ЭБУ сформировался рынок услуги по корректировки прошивок.

    В СНГ и России услуга перепрограммирование ЭБУ появилась очень скоро после появления инжекторных автомобилей под управлением компьютера, создания устройств для прошивки мозгов и программ изменения калибровочных данных.

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

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