Идентификатор эбу что такое
О РАБОТЕ ЭБУ И САМОСТОЯТЕЛЬНОЙ ПЕРВИЧНОЙ ДИАГНОСТИКЕ (ЧАСТЬ 6 ИЗ 6).
Обновление 2018 года: внимание, часть этой информации уже утратила актуальность, часть имеет определенные ошибки!
Диагностика путем сопоставления показателей, наблюдение.
И так, небольшие итоги: мы знаем, что множество параметров связаны между собой.
Наблюдайте за параметрами на разных, но стабильных оборотах. Т.е. всегда смотрите на холостом ходу, на оборотах около 1500-2000 и на оборотах около 2500-3000. При этом учитывайте показатели, когда двигатель уже пару секунд поработал на нужных оборотах.
Так, например, если смотреть на STFT, то при прогазовке до 2500 будет резкий скачек показаний, а после того как двигатель поработает пару секунд, то показания стабилизируются график будет выглядеть обычной синусойдой (как на ХХ, только абсолютные значения чуть другие).
Сопоставляя их графики мы можем понять, где у нас все исправное, а где ошибка.
1. УОЗ и обороты. Небольшой провал, затем стабильный рост УОЗ с ростом оборотов. Когда обороты достигли максимума – УОЗ должен стать ровным как полка.
2. Напряжение ДК1 и напряжение ДК2. Позволяет определить правильную работу катализатора. Правильное положение: ДК1 часто меняется, ДК2 меняется при нажатии на педаль, а так изменение его ооооооочень плавное.
3. Напряжение ДК1 и ДПДЗ: позволит понять правильно ли действует ЭБУ. Если при отпускании педали газа на скорости напряжение ДК1=0.0, то значит ЭБУ прекратило подачу бензина.
Предлагайте что еще можно сопоставить и сравнить, обдумаем, обсудим, напишу!
Узнаем идентификатор (версию) прошивки ЭБУ:
Нам понадобятся: OBD Авто Доктор или alOBD Terminal (халявная в Google Play) и любой HEX-редактор (например WinHEX). При отсутствии оного можно воспользоваться онлайн-редактором прямо в браузере: www.mobilefish.com/servic…hex_editor/hex_editor.php
Что нельзя увидеть с помощью OBD-II сканера?
К сожалению OBD-II предназначен в первую очередь не для диагностики работы автомобиля, а для отслеживания экологичности выхлопа, поэтому некоторая информация по этому протоколу вообще не выводится.
И так, мы пролетаем мимо:
— времени открытия форсунок
— работы РХХ
— данных с датчика детонации
— момента импульса на клапан вентиляции картерных газов
— работу и ошибки АКПП, ABS, SRS.
— расход топлива. Все, что показывают нам разнообразные программы, является их самостоятельными расчетами, никак не связанными с реальным расходом. Некоторые более продвинутые ЭБУ показывают расход, но наш к сожалению нет.
OBD2 читаем и запоминаем.
m.habr.com/ru/post/444726/
Статья не моя, но коротко и ясно дана почти вся информация по обд. Советую к прочтению и сохраню для истории.
При создании приложения мы столкнулись с множеством выборов, проблем и так далее, с которыми попробуем ознакомить вас в этой статье. Как оказалось с автомобилем можно вести диалог, причем довольно таки продуктивный. Естественно для того чтобы организовать общение с автомобилем необходимо «установить контакт», «задать правильный вопрос» и правильно понять «ответ», полученный от автомобиля. Соответственно статья и будет нацелена на то, чтобы доступным языком объяснить организацию диалога, а также рассказать вам какие ошибки могут встретиться вам на пути и как с ними бороться.
Изначально необходимо пояснить что для подключения к авто будет использоваться ELM327 адаптер. ELM327 – это микросхема, которая позволяет преобразовать протоколы, используемые в диагностических шинах автомобилей в протокол RS232, которым мы и будем передавать данные. За счет того что передача данных по протоколу RS232 происходит последовательно возникает первая проблема – скорости передачи данных, которую мы постараемся обойти в одном из следующих пунктов.
Существует несколько вариаций адаптера ELM327, которые классифицируются по способу передачи данных – Bluetooth, WIFI, USB. Исходя из того что целью разработки является мобильное устройство под операционной системой Android можно подобрать две наиболее подходящие версии ELM327, такие как Bluetooth и WIFI. Так как способ получения и обработки данных один, а отличаются они всего лишь вариантами подключения к адаптеру, то можно выбрать всего один, организовать при помощи него диалог, а после добавить остальные варианты подключения.
ELM327 1.5 vs ELM327 2.1
Одной из первых проблем, с которыми можно столкнуться стала проблема выбора непосредственно адаптера, в нашем случае Bluetooth. Оказывается если вам необходимо поддерживать все (по крайней мере большинство) автомобилей необходимо выбирать версию v1.5 вместо v2.1, что на самом то деле необходимо несколько раз уточнить при покупке адаптера, потому как продавцы пытаются выдать версию адаптера не за ту, которая есть на самом деле, т.к. они особо ничем не отличаются. На деле же в версии v2.1 отсутствует поддержка протоколов J1850 PWM и J1850 VPW, что говорит о том, что у вас не получится подключиться к автомобилям, которые используют эти протоколы.
Подключение к адаптеру происходит в несколько этапов:
Подключение к адаптеру (Bluetooth, WIFI)
Отправка инициализационных команд (инициализационной строки)
Если с организацией подключения все понятно. Принцип работы такой же как и у любого Bluetooth/WIFI чата. То для того чтоб понять как отправлять инициализационную строку, необходимо изучить какие команды существуют, а также какие функции они выполняют.
AT Z [reset all]
Сброс настроек адаптера до заводского состояния.
AT L1-0
Включить/Отключить символы перевода строки.
AT E1-0
Echo on – off
AT H1-0
Headers on – off
AT AT0-1-2
Adaptive Timing Off — adaptive Timing Auto1 — adaptive Timing Auto2
AT ST FF
Установить таймаут на максимум.
AT D [set all to Default]
Сброс настроек в исходное, настроенное пользователем состояние.
AT DP [Describe the current Protocol]
Сканер способен самостоятельно определять протокол автомобиля, к которому он подключен.
AT IB10 [set the ISO Baud rate to 10400]
Команда устанавливает скорость обмена данных для ISO 9141-2 и
ISO 14230-4 10400
AT IB96 [ set the ISO Baud rate to 9600]
Команда устанавливает скорость обмена данных для ISO 9141-2 и
ISO 14230-4 9600 для протоколов 3,4,5.
AT SP h [ Set Protocol h]
Команда выбора протокола h, где h:
0 – Automatic;
1 — SAE J1850 PWM (41.6 Kbaud);
2 — SAE J1850 VPW (10.4 Kbaud);
3 — ISO 9141-2 (5 baud init, 10.4 Kbaud);
4 — ISO 14230-4 KWP (5 baud init, 10.4 Kbaud);
5 — ISO 14230-4 KWP (fast init, 10.4 Kbaud);
6 — ISO 15765-4 CAN (11 bit ID, 500 Kbaud);
7 — ISO 15765-4 CAN (29 bit ID, 500 Kbaud);
8 — ISO 15765-4 CAN (11 bit ID, 250 Kbaud);
9 — ISO 15765-4 CAN (29 bit ID, 250 Kbaud);
AT SP Ah [Set Protocol h with Auto]
Команда устанавливает по умолчанию протокол h, если подключение по протоколу h не удалось, тогда адаптер начинает автоматический подбор протокола.
Исходя из описанных выше команд, формируем инициализационную строку.
initializeCommands
= Arrays.asList(“ATZ”, “ATL0”, “ATE1”, “ATH1”, “ATAT1”, “ATSTFF”, “ATDP”, “ATSP0”);
Желательно давать возможность пользователю сменять инициализационные команды, потому как для того чтобы подобрать «ключ» к некоторым авто необходимо выбрать более подходящие настройки адаптера. В нашем же случае используются настройки, которые походят для большинства стандартных протоколов.
Так же желательно обратить внимание на команду APSP0, таким образом мы устанавливаем по умолчанию автоматический подбор протокола, это может занять некоторое время.
Соответственно если пользователь знает какой у его авто протокол, то используя возможность смены протокола подключения он может поменять 0 на номер его протокола.
Считывание диагностических данных
Для считывания диагностических данных используются специальные команды PID’s.
PID (Parameter id’s — Бортовые диагностические идентификаторы параметров) – коды, которые используются для запроса показателей определенных датчиков автомобиля.
Основные пиды можно найти в Википедии, там полный набор основных команд, которые должны поддерживать все автомобили. Так же есть наборы команд для определенных марок и типов автомобилей, эти наборы предоставляются за отдельную плату. В нашем случае приложение заточено на базовую диагностику автомобилей соответственно мы используем базовый набор команд.
Также есть возможность получать текущие данные от автомобиля при этом команда получения данных от авто будет иметь вначале 01, указывая на то что мы хотим получить real data. Если же мы хотим получить сохраненные данные автомобиля, то вначале команды необходимо указать 02. Например, команда для получения текущей скорости автомобиля – 010D, а для получения сохраненной скорости – 020D.
Если внимательно посмотреть на то количество команд, которое предоставляется открытыми ресурсами, то можно как раз и заметить ту проблему, о которой я писал в самом начале, а именно проблема скорости ответа адаптера. Так как отправка и получение команд идет последовательно, то для того чтобы получить показания датчика на текущий момент времени необходимо дождаться ответа на все предыдущие команды. Соответственно если запрашивать на получение все команды, то большая вероятность того что обновление реальных данных будет происходить очень медленно. Но и эту проблему можно решить, если воспользоваться командами, которые отобразят только те команды, что существуют в автомобиле. Например:
0100 – PIDs supported [01 — 20]
0120 – PIDs supported [21 — 40]
0140 – PIDs supported [41 — 60]
0160 – PIDs supported [61 — 80]
0180 – PIDs supported [81 – A0]
01A0 – PIDs supported [A1 — C0]
Я продемонстрирую как определить какие датчики присутствуют в автомобиле при помощи одного из пидов. Например:
0100 \\ запрос
BB1E3211 \\ ответ от авто
Переводим ответ от автомобиля в двоичную систему счисления
Используя следующую табличку можем определить какие пиды поддерживаются нашим автомобилем, начиная от 01 до 20:
Исходя из получившихся данных можем определить, что наш автомобиль поддерживает следующие пиды:
01, 03, 04, 05, 07, 08, 0C, 0D, 0E, 0F, 13, 14, 17, 1C, 20
Теперь вместо отправки всех 32 команд и ожидания ответа на них, несмотря на то, что некоторые могут отсутствовать, мы будем использовать всего 15 команд. Но и это не предел так называемой оптимизации. Для того чтобы данные обновлялись еще быстрее советую запрашивать только данные о тех датчиках, которые отображаются на экране. Хотя это ограничивает некоторый функционал приложения. Например, запись истории.
Считывание и расшифровка ошибок автомобиля
Ошибки автомобиля тоже могут быть различными и для них тоже существуют отдельные команды. Например:
03 – Для отображения сохраненных кодов ошибок
0A – Для отображения постоянных кодов ошибок.
Так как и с остальными командами ошибки автомобиля приходят в закодированном виде, соответственно, как и в остальных командах их нужно раскодировать чтоб получить необходимую информацию. Приведу пример работы декодирования ошибки. Код:
private final static char[] dtcLetters = <'P', 'C', 'B', 'U'>;
private final static char[] hexArray = “0123456789ABCDEF”.toCharArray();
private void performCalculations(String fault) <
final String result = fault;
String workingData = “”;
int startIndex = 0;
troubleCodesArray.clear();
try <
if (result.contains(“43”)) <
workingData = result.replaceAll(“^43|[\r\n]43|[\r\n]”, “”);
> else if (result.contains(“47”)) <
workingData = result.replaceAll(“^47|[\r\n]47|[\r\n]”, “”);
>
for(int begin=startIndex; begin > 6);
int ch2 = ((b1 & 0x30) >> 4);
dtc += dtcLetters[ch1];
dtc += hexArray[ch2];
dtc += workingData.substring(begin + 1, begin + 4);
if (dtc.equals(“P0000”)) <
continue;
>
troubleCodesArray.add(dtc);
>
> catch (Exception e) <
Log.e(TAG, “Error: ” + e.getMessage());
>
>
А теперь пояснение.
Исходя из полученного ответа мы можем получить код ошибки, для этого декодируем полученное сообщение используя следующие таблички.
3, 4, 5 символы формируются по этой таблице:
Исходя из этого можем попробовать разобрать следующий ответ 0001000000111110
На данном этапе мы разобрались в том, каким образом организовать диалог с адаптером, посылать ему команды, получать и расшифровывать его ответы. Это большая часть работы, если считать то, сколько времени уходит на изучение материала, но в то же время довольно таки интересная. За пределами этой статьи осталось множество проблем связанных с визуальным интерфейсом, а также множество дополнительных функций, таких как добавление новых пидов из файла, стандартный и расширенный способ подключения к адаптеру и построения графиков.
Прошиваем М73 (Почти пособие)
ЭБУ М73 и всё что с ним связано(Прошивка, типовые параметры, иммо, обучение)
ЭБУ M73 появился на конвейере ВАЗа в 2008 году в связи с переходом на нормы токсичности Евро-3. С точки зрения схемотехники этот блок — ближайший родственник уже знакомых нам Микас-11 и Январь-7.2+
Новые контроллеры М73 производятся двумя заводами: НПО ИТЭЛМА и АВТЭЛ.
Аппаратно контроллеры идентичны, но софт там принципиально разный.
Построен на базе процессора ST10F
Аппаратно блок практически идентичен Январь 7.2+, отличие только в резисторах, отвечающих за конфигурацию процессора. Это позволяет, с некоторыми ограничениями, произвести переделку М7.3 в Январь 7.2+
С 2007 года начат выпуск блоков управления на базе процессора ST 10- (Январь 7.2+, М73)
М 73 блок управления для автомобилей с нормами токсичности Евро-3 — аналог Bosch 7.9.7+
Программное обеспечение блоков управления М73 и Январь 7.2+ несовместимо.
Устанавливаются на автомобили:
С конца 2007года — передний привод,
С 2008 года — классика,
С 2009 года — Калина, Приора
1.Конфигурация ЭБУ
Помним, что:
1.ЭБУ М73 бывают двух конфигураций. Прошивки между данными конфигурациями не взаимозаменяемы!
2.ПО ЭБУ 1-й конфигурации (проекты ВАЗ 17D, 08D, 028R) разных производителей (Ителма, Автел) не взаимозаменяемы!
2.Версия бутлоадера
Помним, что:
Внутренний загрузчик процессора осуществляющий доступ к содержимому его внутренней FLASH-памяти играет достаточно важную роль в процессе программирования ЭБУ и самое главное — в процессе последующей эксплуатации автомобиля.
На сегодня доступны следующие версии загрузчика:
загрузчик проект ВАЗ
0799 — “открытый” ЭБУ A(I)317DA02, A(I)317DA03, A(I)308DA02
0800 — “открытый” ЭБУ A(I)308DB03, A(I)308DB04
0823 — “закрытый” ЭБУ I373DA01, A(I)373DA02
0848 — “закрытый” ЭБУ A(I)317DB04, A(I)373CA01, I373CA02
0849 — “закрытый” ЭБУ A(I)373DB04
Проблема может возникнуть если Вы по какой-либо причине зальете в ЭБУ с одной версией загрузчика, прошивку от ЭБУ с другой версией. Реакция может быть неадекватной. Обороты ХХ будут “гулять”, адаптации уходить в максимальные “минуса” или “плюсы”.
Примерно с середины 2009 года производитель ЭБУ «Автел», а с середины 2010 года и “Ителма” изменили конфигурацию внутреннего загрузчика процессора осуществляющего доступ к содержимому его внутренней FLASH-памяти. Попытка записи прошивки с бутлоадером другой конфигурации может привести к полной неработоспособности процессора с последующей его заменой для восстановления работоспособности ЭБУ. Некоторые загрузчики, в силу особенности своей работы с “закрытыми” ЭБУ, могут заменить бутлоадер и сделать из “закрытого” процессора “открытый”. Но… в этих ЭБУ организован подсчет КС загрузчика и верная заводская КС хранится в епроме процессора, недоступной этим загрузчикам. На практике после репрога с таким вариантом ЭБУ не ляжет. Машинка заведется и будет вполне успешно работать до определенного времени, пока процессор не рассчитает и не сравнит все КС, в том числе и внутреннего загрузчика. После этого процессор выключается, автомобиль перестает заводиться и даже включать ГР. После репрога все повторится. Если залить ПО с “родной” версией загрузчика — работоспособность ЭБУ полностью восстановится.
Для отличия на практике таких ЭБУ на крышке последних появился стикер “ДПКВ”.
На сегодня известные версии ПО с такой аппаратной реализацией I(А)303CF06, I(А)327RD08, A317DB04
Суммируя сказанное необходимо помнить, что ПО “старых” версий работать в ЭБУ с измененной конфигурацией корректно не будет!
На этом, собственно, можно поставить точку в истории ЭСУД с механическим дроссельным узлом.
Типовые параметры блока для диагностики:
Далее расскажу как его прошить на примере ваз 2114
I317DA02
M73 21114-1411020-12 21114 Е-3 1 Серийная 1,6 8V
Прошивка I317DA02 соответственно блок Производства Ителма.
так как есть закрытые и не закрытые блоки я не рискую и шью
OpenBox 3.1.6 и с идентами DB версией OpenBox 3.1.9
Программа проста и безотказна как Калаш
Этап 1.
1. К-лайн Адаптер (для примера Мастер Кит, или любой другой)
2. АКБ, или БП (12V)
3. Программа (в моем случае OpenBox, умеет поднимать заваленные блоки)
4. Авторская(или стоковая) прошивка. в моем случае ММК I317DA03-E-2
5. Блок снять для удобства работы на столе.
PS НЕ ЗАБЫВАЕМ: Снимаем клемму массы с аккумулятора, а лишь Затем разъем с ЭБУ
6. Ну и немного прямых рук чтобы собрать проводочки и всё подключить.
Идем далее: ищем где стоит блок в вашем авто
И так схема подключения к ЭБУ
Потребуется 4 провода «+», 2 провода «–», 1 провод «К-лайн»
51,53 контакт ЭБУ — Масса
71 контакт ЭБУ — К-Лайн
13 контакт ЭБУ — Включение зажигания (+12В)
12 контакт ЭБУ — Неотключаемое питание (+12В)
44,63 контакт ЭБУ — Питание главного реле (+12В)
Можно приобрести разъем ТУТ
PS. Провода можно сделать самостоятельно.
Должно получиться чтото вроде этого
(Я использую самодельный кабель, с разъемом и переключателем питания
И не снимая с машины программирую, питание с прикуривателя)
ЭТАП 2. Теперь когда всё подготовили
Переходим к программе OpenBox
Выбор СОМ-порта — номер последовательного порта компьютера, через который будет происходить работа с блоком управления.
Выбор ЭБУ — тип блока управления, к которому подключен компьютер.
В нашем случае J72/M73(I)
Работа через через внутреннее ПО контроллера, то есть без режима BSL как это делает ST10Flasher с перепайкой резюков
1. Выбрали всё что надо, включили зажигание(кнопкой) тыкаем Идентификация для проверки выходит ли блок на связь.
2.Далее выбираем Считать FLASH, и считать ЕЕПРОМ(я этого не делаю, если стоит всё сток)… Жмем загрузить FLASH, выбираем прошивку I317DA03_Е-2
3.И сидим ждем пока пройдет полоска(минуты 3) и будет написано в программе Завершено
4.Закрываем прогу.
5.Отключаем питание.
6. Несем в машину ставим.
7. Не забываем!
После репрограммированния блока сброс контроллера с очисткой памяти самообучения (инициализацией) ОБЯЗАТЕЛЕН!
Этап 3.
Далее если надо удалить иммо
1. Есть несколько путей.
a. Скаченный нами ЕЕПРОМ в HEX редакторе отредактировать на FF
b. Залить Чистый ЕЕПРОМ
2. Тыкаем Загрузить ЕЕПРОМ…выбираем наш файл(чистый, или редактированный)…
3. ждем завершение операции.
4.Закрываем прогу.
5.Отключаем питание.
6. Несем в машину ставим.
ВНИМАНИЕ! Если после ЭТАПА 2 авто заблокировал ИММО(ссать кипятком пока еще рано!))), произведите ЭТАП 3.
Если всё таки требуется иммобилайзер. Переобучите ИММО.
ЭТАП 4
Обучение ИММО
Красный — и рабочий ключ потребуется
• Закрыть двери.
• Включить КРАСНЫМ ключом зажигание.
• 3 писка. Вытащить ключ.
• Быстро (в течение 5-6 секунд) включить ЧЕРНЫМ зажигание.
• 3 писка + 2 писка.
• Быстро (в течение 5-6 секунд) включить КРАСНЫМ зажигание
• 3 писка + 2 писка.
• Выключить зажигание КЛЮЧ В ЗАМКЕ.
• 1 писк.
•Быстро (в течение 5-6 секунд) включить зажигание на 5 СЕКУНД! (Внимание! Обязательно дождаться Сигнала)
• Мигнула аварийка, бибикнул сигнал
• Выключить зажигание. КЛЮЧ В ЗАМКЕ до погасания машинки на панели.
ИТОГ:
На этом прошивка, удаление иммо, обучение иммо и всё что связано с блоком М73 подходит к концу всё описано и разжевано как можно понятней!
Добавлю OpenBox поднимает заваленные блоки М73, так же шьет через разъем диагностики (с отключенным МЗ)
Есть и бесплатные методы прошить Открытые М73, но опять таки можно положить блок, а нам это не надо!
ВНИМАНИЕ! ВНИМАНИЕ! ВНИМАНИЕ!
Инфа была собрана со всего Интернета(в том числе и Драйв2) для удобства штатного пользователя! переработана, проверена и опробована.
(перечислить всех авторов просто нереально, некоторые материалы, фотоматериалы были также взяты с DRIVE2 и Интернета. Да простят меня люди за то что взял их фотоматериалы!)
Спасибо за внимание!
И Помните:
Всё что вы делаете — вы делаете на свой страх и риск
Идентификатор эбу что такое
Пожалуйста подскажите.
В какой памяти прописываются эти информационные данные.
EEPROM и памяти Flesh
11183-1411020-52
————————
Имеются два ЭБУ.
1) Прошит прошивкой с идентификатором (I444CSL03v)
2) Прошит прошивкой с идентификатором (I444CX06)
Серийный номер 1)-го блока (Адак-т BAV)
Серийный номер 2)-го блока (CTTeam)
После проведенных манипуляций,получаю на обоих блоках Серийный номер (***** BAV)
Добавлено через 8 минут
Не совсем одинаковых. В этих блока содержимое EEPROM разное.
Еще, для того, чтобы:
рекомендую перечитать и понять вот эту фразу:
Ну так информация со сканера одна и та же.
Это вы как можете объяснить?
Добавлено через 5 минут
Так значит слитый Flesh уже содержал информацию EEPROM?
Если вычитать флэш через BSL, то эмулируемая область EEPROM тоже будет там содержаться.
Добавлено через 1 минуту
Вы логику включите. Как вы представляете себе хранение того-же VIN в прошивке? Это что, для каждого автомобиля должна быть своя прошивка с уникальными идентификаторами? Как такое возможно в массовом производстве? Подумайте над этим.
Добавлено через 2 минуты
Не совсем одинаковых. В этих блока содержимое EEPROM разное.
рекомендую перечитать и понять вот эту фразу:
Добавлено через 1 минуту
Каким именно модулем?
Вообще, матчасть пора начать учить.
Каким именно модулем?
Вообще, матчасть пора начать учить.
Скриншот из поста чуть выше не открылся? Там разве не видно?
Сейчас вышлю флешь на почту.
sngnick, Вы с чем воюете?
Каталожный номер контроллера, идентификатор прошивки и дата программирования это все во Flash.
Чему удивляться, если пишите flash в другой блок и видите конечно же тоже самое!
Вопрос такой, будто вчера подошли к автомобилю.
Не путаете “серийный” и “каталожный” номер контроллера?
sngnick, Вы с чем воюете?
Каталожный номер контроллера, идентификатор прошивки и дата программирования это все во Flash.
Чему удивляться, если пишите flash в другой блок и видите конечно же тоже самое!
Вопрос такой, будто вчера подошли к автомобилю.
Не путаете “серийный” и “каталожный” номер контроллера?
Добавлено через 2 минуты




















