Elm327 как бортовой компьютер

Обновлено: 07.07.2024

Итак, Вы получили адаптер, теперь нужно подготовить планшет\телефон и установить программы.
OBD программы скачиваются с магазинов PlayMarket и AppStore.

Для андроида - заходим в PlayMarket и скачиваем следующие программы:

1. HobDrive Demo или покупаем полную через сайт разработчика.
Программа дает возможность бесплатной работы в течении 30 дней, после чего ее нужно купить. Вы можете использовать купон на скидку 20% при покупке через сайт разработчика.
Отличия Demo версии от полной расписаны по ссылке.

2. OBD Auto Doctor - эта программа может быть полезна при проблемах подключения адаптера к ЭБУ.

Так же есть много других хороших программ, например:

Я рекомендую обязательно установить программу HobDrive и сделать в ней необходимую настройку для полноценной работы с моим адаптером.

Настройка HobDrive для работы с моим адаптером.

запуск программы (дома, можно без подключения к авто).
дальше [Экраны] - [настройки] - [Мои профили]
дальше нажать кнопку [Создать из шаблона]
Ввести имя профиля своего авто, например G320,
выбрать марку - Mercedes Benz,
Модель - выбрать один из трех вариантов в зависимости от вашего авто:
1. M104 HFM 1993-1997 injector
2. M111 HFM 1993-1997 injector
3. M111 PMS 1993-1997 injector

и нажать [OK] для сохранения.

Для более старых версий программы HOBDrive настройка описана ниже.
Показать скрытый текст

Для версии программы 1.4.27 и выше

[Экраны] >> [Настройки] >> [Готовые шаблоны автомобилей] :
Производитель - Mercedes-Benz
Модель - выбрать один из трех вариантов в зависимости от вашего авто:
1. M104 HFM 1993-1997 injector
2. M111 HFM 1993-1997 injector
3. M111 PMS 1993-1997 injector

Для версии от 1.4.24 до 1.4.27

Идем [Экраны] >> [Настройки] >> [Параметры автомобиля]
выбрать из списка тип системы управления двигателя:

MB HFM (Modify ELM) если у вас двигатель 104\111 с системой HFM

MB_PMS (Modify ELM) если у вас двигатель 111 с системой PMS

в поле Метод расчета расхода выбрать Датчик форсунки

в поле Число цилиндров указать число цилиндров двигателя вашего автомобиля

в поле Производительность форсунки для начала можно указать 100 мл

Для версии ниже 1.4.24.

Если версия программы ниже, то сначала нужно обновиться до последней версии
Если и последняя версия в маркете ниже, то нужно установить бета версию программы.
Как это сделать - читаем ниже.

Бета для демо версии хобдрйва

Перейти на страничку [Экраны] -> [Настройки] -> [О программе]
установить галочку использовать бета канал и обновить до последней бета версии.

Беты полной версии хобдрайва

Если вы купили хобдрайв через Google Play и хотите получать бета версии, зайдите на страницу
https://play.google.com/apps/testing/hobdrive.android под своим Google аккаунтом и ткните "Стать бета тестером".
Через некоторое время вы получите обновление полной версии через Play Market.
Пользователи, купившие хобдрайв на сайте разработчика, могут получить бета версию, зайдя в свой аккаунт:
http://hobdrive.com/payment/orders/manage Необходимо ввести свой email и номер контракта. На странице будут ссылки на последние бета версии. Пожалуйста сделайте резервную копию ваших данных. Неофициальные обновления могут содержать ошибки или приводить к проблемам в работе - используйте на свой страх и риск.
Владельцы андроид версий на этой странице смогут самостоятельно "сбрасывать" активации - если у вашего устройства поменялся серийник (например из за перепрошивки).
Так же последнюю бета версию можно обновить из самого хобдрайва:
[Настройки] -> [Сеть] -> [Бета канал] -> [Обновить].

Теперь необходимо выполнить следующие настройки, которые я написал выше

FAQ hobDrive.

Чтобы настроить работу ХобДрайва в автомате (планшет\телефон установлен стационарно в автомобиле) читаем Авто отключение-включение экрана планшета на андроиде.

Подключение адаптера к колодке диагностики.

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

Когда нет кабеля, то подключаем 3 провода к адаптеру как на рисунке


и потом эти провода подключаем в пины круглой колодки диагностики 38 следующим образом:

при наличии прямоугольной колодки 16 пиновой на W124, подключение следующее:

1 - черный провод

8 - желтый провод (Зеленый банан при использовании специального кабеля для W124)

16 - красный провод

Так же адаптер работает с автомобилями SsangYong Musso, Korando до 97 года, с системой HFM.

Круглый 14пиновый разъем или 20пин разъем KIA, подключение:

1 - черный провод (Масса)
2 - красный провод (Питание)
14 - желтый провод (K-Line)


Следует отметить что удобнее всего подключить адаптер к колодке и оставить его там постоянно. В этом случае подключать плюс (красный провод) надо на шину "15" а не "30", чтобы в момент простоя машины адаптер был обесточен и не поджирал аккумулятор.
Поэтому при использовании кабелей OBD2-MB38 и OBD2-MB14 необходимо перепаять питающий провод с пин 3 на пин 2

Первый запуск на телефоне/планшете.

Адаптер подключен к автомобилю, планшет на руках, теперь нужно:

1. включить зажигание
для адаптера ELM327 bluetooth:
2. на телефоне в настройках включить блютуз и найти поиском адаптер OBDII, подключил его, код сопряжения 1234
3. запустить программу ХобДрайв, далее кнопка ЭКРАНЫ->НАСТОЙКИ->"Параметры ELM соединения", там выбрать адаптер OBDII и выйти из меню
для адаптера ELM327 WiFi:
2. на телефоне в настройках wifi найти точку доступа WiFi_OBDII или WiFiOBD (пароль 12345678), подключиться к ней.
3. запустить программу ХобДрайв, далее кнопка ЭКРАНЫ->НАСТОЙКИ->"Параметры ELM соединения", там выбрать тип соединения WiFi, указать параметры соединения192.168.0.10:35000 и выйти из меню

4. Закрыть программу (ЭКРАНЫ-Выход)
5. Запустить программу и ждать - должна подключиться к ЭБУ двигателя и начать показывать параметры, ошибки, можно ходить по экранам (перелистыванием)

Иногда, если нет связи, требуется перезагрузить телефон/планшет.

В программе OBD Car Doctor:

1.в настройках выбрать адаптер,

3. В пункте "Динамические параметры" программа покажет список параметров ЭБУ, при нажатии на любой из них параметр будет выводиться в графическом виде. Здесь удобно смотреть за сигналом датчика кислорода(лямбды), и оценить скорость его переключения на ХХ и на оборотах.

Первый запуск на ноутбуке Windows, программа hfmscan

Для работы программы HfmScan ( Windows ) через мой адаптер ELM327 необходимо скачать программу HfmScan и произвести следующие настройки:


Содержимое: ELM327, диск с программами и драйверами.



В наличии уже имеется планшет со встроенным блютусом. Лучшей программой под Андроид для ELM327 оказалась Torque Pro. Кодом блютус устройства оказался первый пришедший в голову набор цифр: 1234. Сопряжение прошло быстро. Ссылка на мое видео считывания ошибок с помощью этого ELM327:

По качеству изготовления прибора претензий никаких. Собран добротно, пластик качественный. Цвет, как кому, а мне понравился. Размеры этого гаджета по сравнению с проводным и сделанными в таком же корпусе первыми моделями с блютусом, очень радуют. Крышка разъема OBDII и та мешает больше. С таким приборчиком можно постоянно ездить и пользоваться вместе с устройствами на Андроид как бортовым компьютером. Реализация не за горами.
В программе куча возможностей. Использование с устройствами на базе Windows, как мне представляется, не составит проблем. На диске в комплекте есть почти все необходимое.
Заинтересовался внутренним содержимым приборчика. Оказалось внутри достаточно свободного места. Для энтузиастов самое то. Можно размеры корпуса еще уменьшить. Сам корпус показался неразборным.


Дополнительные вопросы приветствуются, но сразу скажу — после считывания ошибок завел автомобиль, на дисплее с мгновенными показаниями отобразились: обороты двигателя, температура ОЖ и еще чего-то полезное, но машина на стоянке, а на улице похолодало. Ходовые испытания и стирание ошибок будут, наверное, позже.

Итоги.
Плюсы:
1. Цена, по сравнению с началом года уже можно брать.
2. Отсутствие проводов, а следовательно, и удобство использования.
3. Размер. При желании, дополнительно можно уменьшить размер гаджета.
4. Много ПО в комплекте (не скажу что все ПО хорошо работает, интересовал только Андроид).
5. Качество сборки (USB версия выглядела значительно хуже).
6. Цвет :)

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

Сегодня в каждом автомобиле установлен ЭБУ (электронный блок управления). ЭБУ собирает все данные с электронных узлов в автомобиле и выстраивает для него правильный режим работы. Нередко электронные узлы дают сбой и тогда приходиться обращаться к автодиагносту. Это удовольствие не из самых дешевых, да и найти хорошего автомобильного электронщика это большая проблема. Как правило большинство из них просто распечатает Вам ошибки и поскорее отправит в другой сервис, взяв энную сумму денег. Так зачем же отдавать кому-то свои кровно заработанные если Вы и сами сможете без проблем продиагностировать свой автомобиль?

Так вот сегодня поговорим о таком замечательном приборе как ELM327, который поможет сэкономить Вам кучу времени, нервов и денег. Я расскажу что это за сканер, сколько он стоит, как им пользоваться, какие автомобили можно диагностировать.

ВНИМАНИЕ: сегодня мы рассмотрим китайскую версию ELM327 и поговорим именно о ней. Как отличить китайскую версию от оригинальной? Да очень просто. Скорее всего всё что Вам попадется в продаже будет китайского производства. Китайскую версию я брал на Aliexpress или можно купить в автомагазине по приемлемой цене. Оригинальная версия автосканера стоит баснословных денег, да и к чему Вам она?

Что такое ELM327 и зачем он нужен?

Многие сканеры открывают и больше возможности, так же многое зависит и от автомобиля. Цвет корпуса и форма могут отличаться.

Сканер чаще всего представлен в виде:

  • Bluetooth адаптера. Самый распространенный и дешевый, работает с Android (сегодня рассмотрим именно её);
  • USB ELM327, который работает в паре с компьютером;
  • Wi-Fi адаптер. Если у Вас Iphone, то это Ваш выбор.

Стоимость данного девайса начинается обычно от 300 ₽. Все что дешевле брать не советую. Ориентироваться надо на стоимость 300-600 рублей. Дорогой сканер OBD-II покупать нет смысла.

Так-же крайне не рекомендую пользоваться диском который идет в комплекте со сканером. Скорее всего полезного там ничего нет и нередко бывало что там оказывались вирусы.

Какие автомобили можно продиагностировать ELM327

Первое что Вам нужно знать это есть ли в Вашем автомобиле диагностического разъема OBD 2 и где он находиться. Сделать это проще всего забив в поисковик Марку и год выпуска автомобиля.

OBD 2 и где он находиться. Сделать это проще всего забив в поисковик Марку и год выпуска автомобиля в интернет. Инструкция ELM327

Диагностический разъем OBD-II

Скажу сразу, что практически у всех автомобилей с 2000 года выпуска, а так же у некоторых более ранних моделей есть диагностический разъем OBD-II . Даже если у Вашей модели авто нет этого разъема то не расстраивайтесь, существуют переходники.

Выбор приложения для диагностики

Инструкция ELM327

Итак у нас есть адаптер ELM327 Bluetooth версии 1.5, телефон на базе Android с установленной программой InCarDoc free, Автомобиль с разъемом OBD-II. Теперь можно приступить непосредственно к диагностике:

ELM327 Bluetooth версии 1.5, телефон на базе Android с программой InCarDoc free, OBD-II. Инструкция по работе с ELM327

сброс ошибок авто в программе InCarDoc free

6. Эта программа имеет функции вывода динамических параметров на экран телефона в режиме реального времени. Для примера я вывел на экран Обороты двигателя на холостом ходу (можно наблюдать как они у меня плавают) и температуру охлаждающей жидкости (автомобиль только прогревался). В этой программе достаточно широкий выбор вывода динамических параметров, поэтому я использую именно её.

ELM327 Bluetooth версии 1.5, телефон на базе Android с программой InCarDoc free, OBD-II. Инструкция по работе с ELM327

Вывод на экран динамических параметров авто в программе InCarDoc free

Заключение

Из приведенной мной инструкции видно, что диагностика автомобиля это несложная процедура. Всего в несколько легких действий Вы сможете самостоятельно диагностировать автомобиль и при необходимости сбросить ошибки. Так-же можно изучать характеристики автомобиля, по их результатам выявляются более серьезные поломки. Зачем платить кому-то деньги, если вы и сами с легкостью сможете вылечить свой автомобиль. А если и не получиться самостоятельно устранить дефект в автомобиле, то на сервис Вы поедите уже с проблемой, так как знаете что конкретно у Вас сломано. В таком случае сервису будет сложнее содрать с Вас деньги за дополнительные услуги или вовсе Вас обмануть!
Как Вам такая ситуация? Автомобиль сломался далеко от сервиса, а поломка очень простая (например от вибрации выскочила фишка с датчика). Можно только представить сколько в таком случае этот копеечный сканер сэкономит Вам денег!

Мобильное приложение VAG Virtual Cockpit

Мобильное приложение VAG Virtual Cockpit

Я продолжаю изучать CAN шину авто. В предыдущих статьях я голосом открывал окна в машине и собирал виртуальную панель приборов на RPi. Теперь я разрабатываю мобильное приложение VAG Virtual Cockpit, которое должно полностью заменить приборную панель любой модели VW/Audi/Skoda/Seat. Работает оно так: телефон подключается к ELM327 адаптеру по Wi-Fi или Bluetooth и отправляет диагностические запросы в CAN шину, в ответ получает информацию о датчиках.

По ходу разработки мобильного приложения пришлось узнать, что разные электронные блоки управления (двигателя, трансмиссии, приборной панели и др.) подключенные к CAN шине могут использовать разные протоколы для диагностики, а именно UDS и KWP2000 в обертке из VW Transport Protocol 2.0.

Программный сниффер VCDS

Программный сниффер VCDS: CAN-Sniffer

Программный сниффер VCDS: CAN-Sniffer

Чтобы узнать по какому протоколу общаются электронные блоки я использовал специальную версию VCDS с программным сниффером в комплекте. В этот раз никаких железных снифферов на Arduino или RPi не пришлось изобретать. С помощью CAN-Sniffer можно подсмотреть общение между VCDS и автомобилем, чтобы затем телефон мог прикинуться диагностической утилитой и отправлять те же самые запросы.

Я собрал некоторую статистику по использованию диагностических протоколов на разных моделях автомобилей:

VW/Skoda/Seat (2006-2012) - приборная панель UDS. Двигатель и трансмиссия VW TP 2.0

Audi (2006-2012) - приборная панель VW TP 2.0. Двигатель UDS. Трансмиссия VW TP 2.0

VW/Skoda/Seat/Audi (2012-2021) - везде UDS

Протокол UDS

Unified Diagnostic Services (UDS) - это диагностический протокол, используемый в электронных блоках управления (ЭБУ) автомобильной электроники. Протокол описан в стандарте ISO 14229-1 и является производным от стандарта ISO 14230-3 (KWP2000) и ныне устаревшего стандарта ISO 15765-3 (Diagnostic Communication over Controller Area Network (DoCAN)). Более подробно в википедии.

Диагностические данные от двигателя по протоколу UDS (Skoda Octavia A7)

Диагностические данные от двигателя по протоколу UDS (Skoda Octavia A7)

Разбор UDS пакета в формате Single Frame

Разбор UDS пакета в формате Single Frame

Пример запроса и ответа температуры моторного масла:

Запрос температуры моторного масла:

7E0 - Адрес назначения (ЭБУ двигателя)

Байт 0 (0x03) - Размер данных (3 байта)

Байт 1 (0x22) - SID идентификатор сервиса (запрос текущих параметров)

Байт 2, 3 (0x11 0xBD) - PID идентификатор параметра (температура моторного масла)

Байт 4, 5, 6, 7 (0x55) - Заполнитель до 8 байт

Ответ температуры моторного масла:

7E8 - Адрес источника (Диагностический прибор)

Байт 0 (0x05) - Размер данных (5 байт)

Байт 1 (0x62) - Положительный ответ, такой SID существует. 0x22 + 0x40 = 0x62. (0x7F) - отрицательный ответ

Байт 2, 3 (0x11 0xBD) - PID идентификатор параметра (температура моторного масла)

Байт 4, 5 (0x0B 0x74) - значение температуры моторного масла (20.1 °C формулу пока что не смог подобрать)

Байт 6, 7 (0x55) - Заполнитель до 8 байт

Первая версия мобильного приложения VAG Virtual Cockpit умела подключаться только к приборной панели по UDS.

VAG Virtual Cockpit - экран с данными от приборной панели по протоколу UDS

VAG Virtual Cockpit - экран с данными от приборной панели по протоколу UDS

VW Transport Protocol 2.0

Volkswagen Transport Protocol 2.0 используется в качестве транспортного уровня, а данные передаются в формате KWP2000. Keyword Protocol 2000 - это протокол для бортовой диагностики автомобиля стандартизированный как ISO 14230. Прикладной уровень описан в стандарте ISO 14230-3. Более подробно в википедии.

Диагностические данные от двигателя по протоколу KWP2000 (Skoda Octavia A5)

Диагностические данные от двигателя по протоколу KWP2000 (Skoda Octavia A5)

Разбор протокола VW TP 2.0 на примере подключения к первой группе двигателя:

200 01 C0 00 10 00 03 01

Настраиваем канал с двигателем. Байт 0: 0x01 - двигатель, 0x02 - трансмиссия. Байт 5,4: 0x300 - адрес источника

201 00 D0 00 03 40 07 01

Получили положительный ответ. Байт 5,4: 0x740 - к двигателю обращаемся по этому адресу

740 A0 0F 8A FF 32 FF

Настраиваем ЭБУ на отправку сразу 16 пакетов и выставляем временные параметры

300 A1 0F 8A FF 4A FF

Получили положительный ответ

740 10 00 02 10 89

Отправляем команду KWP2000 startDiagnosticSession. Байт 0: 0x10 = 0b0001 - последняя строка данных + 0x0 счетчик отправляемых пакетов 0 (0x0 - 0xF)

Получили первый ACK

300 10 00 02 50 89

Получили положительный ответ. Байт 0: 0x10 - cчетчик принимаемых пакетов 0

Мы отправили первый ACK, что получили ответ

740 11 00 02 21 01

Делаем запрос. Байт 0: 0x11 - счетчик отправляемых пакетов 1. Байт 3: 0x21 - запрос параметров. Байт 4: 0x01 - из группы 1

Получили второй ACK

300 22 00 1A 61 01 01 C8 13

Байт 0: 0x22 - 0b0010 (не последняя строка данных) + 0x02 (cчетчик принимаемых пакетов 2). Байт 1,2: 0x00 0x1A длина 26 байт. Байт 3,4: 0x61 0x01 - положительный ответ на команду запроса параметров 0x21+0x40=0x61 из 0x1 группы. Байт 5: 0х01 - Запрос RPM (соответсвует протоколу KW1281). Байт 6,7: (0xC8 * 0x13)/5 = 760 RPM (формула соответствует протоколу KW1281)

300 23 05 0A 99 14 32 86 10

Байт 1: 0x05 - запрос ОЖ. Байт 2,3: (0x0A * 0x99)/26 = 57.0 C. Байт 4: 0x14 = запрос лямбда контроль %. Байт 5,6: 0x32*0x86; Байт 7: 0х10 - двоичная настройка

300 24 FF BE 25 00 00 25 00

0x25 0x00 x00 - Заполнитель, до 8 параметров

300 15 00 25 00 00 25 00 00

Байт 0: 0x15 - 0b0001 (последняя строка данных) + 0x5 (счетчик принимаемых пакетов 5)

Отправляем ACK. Прибывляем к нашему предыдущему ACK количество полученных пакетов 0xB1 + 0x4 = 0xB5

Запрос KeepAlive, что мы еще на связи

740 A1 0F 8A FF 4A FF

Мы разрываем связь

ЭБУ в ответ тоже разрывает связь

Во второй версии мобильного приложения VAG Virtual Cockpit появилась возможность диагностировать двигатель и трансмиссию по протоколу VW TP 2.0.

VAG Virtual Cockpit - экран с данными от двигателя по протоколу VW TP 2.0

VAG Virtual Cockpit - экран с данными от двигателя по протоколу VW TP 2.0

Диагностический адаптер ELM327

Для меня некоторое время было вопросом, как получить данные из CAN шины и передать на телефон. Можно было бы разработать собственный шлюз с Wi-Fi или Bluetooth, как это делают производители сигнализаций, например Starline. Но изучив документацию на популярный автомобильный сканер ELM327 понял, что его можно настроить с помощью AT команд на доступ к CAN шине.

Копия диагностического сканера ELM327

Копия диагностического сканера ELM327 Не все ELM327 одинаково полезны

Оригинальный ELM327 от компании elmelectronics стоит порядка 50$, в России я таких не встречал в продаже. У нас продаются только китайские копии/подделки, разного качества и цены 10-30$. Бывают полноценные копии, которые поддерживают все протоколы, а бывают и те которые умеют отвечать только на несколько команд, остальные игнорируют, такие адаптеры не имеют доступ к CAN шине. Я например пользуюсь копией Viecar BLE 4.0, который поддерживает 100% всех функций оригинала.

Последовательность ELM327 AT команд для работы с UDS по CAN шине:

Для работы с протоколом KWP2000 через ELM327 нужно только указать адреса назначения и источника.

Последовательность ELM327 AT команд для работы с VW TP 2.0 по CAN шине:

Мобильное приложение VAG Virtual Cockpit

Для разработки мобильного приложения подключаемого к автомобилю требовалось:

Сниффером собрать трафик от диагностической утилиты VCDS

Изучить работу протоколов UDS, VW TP 2.0, KWP2000

Настроить диагностический сканер ELM327 на работу с UDS и VW TP 2.0

Изучить новый для меня язык программирования Swift

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

Пару слов про точность данных. Штатная панель приборов не точно показывает скорость - завышает показания на 5-10 км/ч, стрелка охлаждающей жидкости всегда на 90 °C, хотя реальная температура может быть 80 - 110 °C, стрелка уровня топлива до середины идет медленно, хотя топлива уже меньше половины и при нуле на самом деле топливо еще есть в баке. Производитель это делает для удобства и безопасности водителя.

На данный момент приложение показывает следующие параметры:

Приборная панель

Двигатель

Трансмиссия (температура)

1) Какая дверь открыта
2) Скорость
3) Обороты
4) Температура масла
5) Температура ОЖ
6) Топливо в баке в л.
7) Запас хода в км.
8) Средний расход
9) Время в машине
10) Пробег
11) Температура за бортом

1) Обороты
2) Массовый расход воздуха
3) Температура забора воздуха
4) Температура выхлопа (рассчитанная)
5) Критический уровень масла
6) Уровень масла
7) Наддув турбины (реальный)
8) Наддув турбины (ожидаемый)
9) Пропуски зажигания в цилиндрах
10) Углы откатов зажигания в цилиндрах

1) ATF AISIN (G93)
2) DSG6 (G93)
3) Блок управления DSG6 (G510)
4) Масло диска сцепления DSG6 (G509)
5) Мехатроник DSG7 (G510)
6) Процессор DSG7
7) Диск сцепления DSG7

Я стремлюсь чтобы приложение поддерживало как можно больше моделей автомобилей. Пока что поддерживаются производители: Volkswagen, Skoda, Seat, Audi. На разных комплектациях могут отображаться не все параметры, но это поправимо.

Сейчас я провожу тестирование версии 3.0. Приложение доступно только на iOS, после релиза 3.0 перейду к разработке версии для Android.

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