Comments 123
www.obdsol.com/solutions/chips
с большим интересом отслеживаю подобные проекты, в надежде получить побольше информации о данных на шине CAN, но к сожалению, вы используете диагностику. В своем проекте я использую основную шину CAN, и нужны расшифровки пакетов, которыми обмениваются блоки при работающем автомобиле.
Опыт расшифровки данных диагностики получен. Теперь должно быть легче расшифровывать данные из CAN шины комфорта и двигателя. Собираюсь доработать панель приборов на RPi, подключив ее к шине комфорта.
habr.com/ru/post/497140
Вот только у меня авто нет, только приборная панель, задача — оживить
Панель от VW Jetta (та что с 1 разъемом синим), авто в которое имплантируется Nissan March K11, у него CAN шины нет от слова совсем. Сейчас собрана эмуляция: уровень топлива в баке, ABS для работы спидометра, режимы коробки, тахометр, большая часть индикации. Из того что не получается подобрать: индикации открытия дверей, ДХО. Прошивка ключей в приборку без гейта.
Вам нужен поиск в первую очередь по ключевым словам "can matrix", "dbc file", "arxml file" (без кавычек, естественно).
Но с этим вопросом всё непросто. Я уже 2 года неспешно пытаюсь подключить Android 8 магнитолу к OBD2 по USB, совершил два подхода, но пока что безрезультатно. Готовлюсь к третьему.
https://4pda.ru/forum/index.php?forums%5B%5D=751&topics%5B%5D=193433&act=search&source=pst&query=USB
Давно уже не совершал попыток в очередной раз подступиться к проблеме.
Что останавливает:
1. Неизвестный чип у приобретённых устройств — когда приобретал, не интересовался этим вопросом.
2. Неизвестный тип чипов устройств на Али. Во многих устройствах указан тот чип, который надо брать, но в комментариях очень часто пишут «обманули! это другой чип!!» — и не понятно — то ли и правда другой чип, то ли у комментатора что-то не получилось.
3. Большинство советов в интернет и на 4ПДА очень старые, для старых версий Android. Может быть, в более новом Android уже не заработают.
4. На всё это надо много времени и немного денег.
Времени у меня нет, но есть немного денег. И я бы предпочёл сейчас найти того, кто за некоторую денежку сделает мне хорошо — продаст адаптер USB/ODB2 и настроит его для работы на моей машине.
У меня ELM327 с блютузом, но, тоже за неделю в паре с сигналкой выедают 95А*ч до 10,5В.
Есть адаптеры с переключателем питания.
Подскажите — подружиться ли приложение с адаптером OBD Elleven?
Скорее всего, в той статье речь шла не об общей шине CAN, а о специализированной под управление рулём и газом. Но даже в этом случае требуется наличие моста, который будет фильтровать сообщения от других модулей и посылать программные сообщения. Если уже просто флудить пакетами, то может произойти что угодно. Проще говоря, управлять автомобилем, просто подсоединив CAN-интерфейс к диагностическому разъёму в 99% случаев невозможно.
Весьма опасная затея. Конечно, интересно, имеется ли какая защита на запись определенных значений на уровне прошивок.
В общем случае нельзя. Есть всего два способа управлять газом. Первый — аппаратное решение с электронным потенциометром. Второй — мост на один из ЭБУ, который так или иначе умеет контролировать дроссель. Это может быть как штатный блок круиза, так и блок помощи водителю.
врятли, я на Весту (мозги Рено Колеос 2) думал сделать доп кнопки круиза (+10), но эти комманды с руля идут напрямую в голову, а оттуда уже отсвечивают. те по кан шине такие комманды не ходят
я на первую калину ставил сторонний drivenge — очень понравилось, посмотрел их сайт, они поло поддерживают, наверно можно переколхозить на кадди — ВАГ обычно сильно стандартизован и совместим
С вашим опытом вам виднее. Я где дороги не знаю, еду по спидометру, а где знаю, то рассчитываю на максимальную мощность двигателя и здравый смысл.
В РФ больше ездят по спидометру и ещё в безопасном зазоре. В итоге на участке, где мерят среднюю я еду 89, а остальные 82-85.
Попробую принципиальную схему раздобыть, чтобы понять архитектуру решения.
Вряд ли Вы найдете ее в подробностях, но в общих чертах там так: реле с двумя переключающими группами перекидывает вход от ЭБУ между выходом педали и ЦАП внутри блока круиза. В режиме поддержания скорости ЦАП эмулирует сигнал педали газа, поддерживая заданную скорость. Ну и вход от педали всегда подключен внутри круиза к АЦП микроконтроллера для его отслеживания. Если хотите больше подробностей — пишите в личку :)
Сам сигнал с педали газа представляет собой две линии с напряжением, зависящим от нажатия педали (в педали просто два потенциометра). Обычно один из сигналов всегда в два раза больше второго по напряжению, то есть если на первом напряжение меняется в пределах 0.8-4.6 вольта, то на втором будет 0.4-2.3 вольта. Сам диапазон напряжений зависит от напряжения питания, подведенного к педали — оно может быть 3.3 или 5 вольт.
Собственно по этому фрагменту всё стало понятно — и да, вы были правы, оно в разрыв кабеля к педали газа подключается:

Как бы мне не хотелось туда лезть, но видимо придётся.
Можете попробовать порыться на форумах, а затем в бортовом компьютере с помощью шнурка.
VAG'и как конструктор. У меня на бывшей skoda fabia досточно было поменять подрулевой переключатель на тот что с кнопками круиза, и прописать в бортовом "у нас теперь есть круиз контроль".
Температура явно в десятых долях кельвина. 0x0b74 = 2932. А 293.2-273.1 как раз 20.1
Уровень масла — 56.800 мм
0x302E = 12334
0x30 = 48
0x2E = 46
Критический уровень масла — 23.432 мм
0x158E = 5518
0x15 = 21
0x8E = 142
Грубое решение:
12334*4,9-3600 = 56836
5518*4,9-3600 = 23438
Нужно сравнивать результат с натурными измерениями в других точках.
Поэтому эти и другие параметры я стал выводить на «дополнительную приборку».
То о чем вы говорить, называется активация скрытых функций. Планирую добавить несколько таких активаций, например за функцию включения противотуманной фары при повороте дилер брал 1500р.
вот огроменная тема на этот счёт.
www.club-yeti.ru/forum/showthread.php?t=123
Там забавно поковыряться. VCDS стоит копейки, на нашей платформе PQ35 можно не самый свежий шнурок иметь. И вообще мне в VAG нравилось (не знаю как сейчас дела обстоят), что можно много что сделать самому. Я поставил себе сам мультируль, поставил Maxidot (тут к дилеру надо ехать правда, чтобы поставили т.к. там пробег выставлять надо дилерским компом), VCDSом навключал что мне надо.
а сцепление DSG мне поменяли в 2017-ом по гарантии заводской (в последний можно сказать день) с тех пор — тьфу-тьфу-тьфу, DSG проблем не доставляет, но и ездим мы немного.
на невысокой скорости (до 40 км/ч емнип) противотуманка включается при поворота руля подсвечивая таким образом поворот.
Это не нищебродский вариант. У меня на туареге поворачивались основные фары и ещё включалась противотуманка, что было крайне удобно в некоторых ситуациях. Сама фара подсвечивает не совсем тоже самое, что может подсветить противотуманка.
Сейчас на всех более-менее свежих ВАГах есть «подсветка поворотов» на малом ходу. Обычно просто включается туманка. Могут еще быть боковые подсветки отдельным диодом фары или поворотом линзы (более старый вариант), но это уже для подсветки обочины или именно поворота на трассе.
за функцию включения противотуманной фары при повороте дилер брал 1500р.
Вот это киберпанк, однако.
— авто. включение/выключение света т.н. Coming home/Leaving home
— подсветка поворота противотуманкой
— опускание зеркал при вкл. заднего хода
— много их
вот к примеру
motorstate.com.ua/upload/product-manual/Rukovodstvo_po_kodirovaniyu_VAG%20na_primere_Skoda_Octavia_A5.pdf
Я себе VCDS-ом много чего навключал.
P.S.
Опускание зеркал на включение заднего вида — фигня, официально это было в комплектации с дорогими зеркалами и электросидениями, а на дешёвых эта функция елозит зеркалом отвратно :)
У General Motors просто несколько прошивок для одной и той же платформы. Например, Chevrolet Малибу можно русифицировать, залив прошивку от Cruz. А в Chevrolet Volt можно добавить распознавание дорожных знаков, прошив прошивкой от Opel Ampera. В самих прошивках никаких скрытых возможностей нет.
Вот для примера на фокус некоторые популярные опции которые выключены при покупке но их можно активировать:
Автозапирание дверей при начале движения
Помощь при старте в гору
Мониторинг давления шин DDS
Проводи водителя до дома
Отключение задних дворников при движении ЗХ
Включение отображения температуры на панели приборов
Когда опрашиваешь десяток датчиков, приходится идти на хитрости, что бы создавалось впечатление быстрой работы. На панели приборов я обороты опрашиваю каждый второй раз, и все равно стрелка не плавно передвигается.
Простой вопрос
Кто и как будет использовать ваш продукт? И чем он отличается от десятков других?
Ждём Android версию.
Есть ли в планах Android auto/Carplay приложение?
Как вот это например?
https://github.com/jilleb/mqb-pm
Есть самодельный электромотоцикл с контроллером АРТ 96600 (AE1405, Shanghai APT, Taizhou Quanshun Motor, SIAECOSYS) с CAN.
В нем SAE J1939-21. Описание ("Shanghai Advanced Power Technology") тут: APT CANBUS communication protocol.pdf
https://drive.google.com/file/d/1d39HafzjTfubXrjVYkO4C_sMPDgxwrT8/view
Вопрос: Как CAN-чайнику что-то посмотреть в APT через CAN (температуру, число оборотов — скорость, амперы-вольты и т.п.).
Насколько понял: нужно купить STN1100 или ELM327, подключить его к CANbus АРТ 96600 (три провода) и по блютузу к айфону (надеюсь, что позже и к андроид-смартфону) с загруженным TestFlight (по ссылке). Далее используя TestFlight как терминал посылать в АРТ 96600 "что-то", использую "Разбор UDS пакета в формате Single Frame".
Примерчик бы кодовой комбинации, например, для DC voltage \ Motor current для моего случая.
Или есть более простые способы общения через CAN с АРТ 96600? Производитель (SIAECOSYS \ QSMOTOR) вообще не желает общаться на тему CAN для своего устройства.
Надо купить ELM327, подключить его к компу (с нормальным терминалом экспериментировать гораздо удобнее) и проверять…
Кажется мне, необходимо и достаточно раздела Using J1939 в доке. Ну и фильтр настроить надо. Но я, надо сказать, не настоящий сварщик, с кан-шиной общался только БЕЗ этой elm.
А программу для телефона придётся самостоятельно писать. Ничего особо сложного, отправка десятка строчек в порт и парсинг двух ответов с отображением результата, но такой программы точно никто ещё не делал.
Так как в вашем случае вообще ничего не известно о формате пакетов, то нужно сниффером подключаться в шину и пытаться разгадывать пролетающие пакеты.
Возможно ли, теоретически, не разрезая педаль тормоза, через CAN шину сделать управление круизом?)
CAN скоро сдохнет, ethernet наше всё.
Зачем это все?)
KWP2000 payload. The first 2 bytes of the first packet sent contain the length of the message.
-
2914.927968 1 200 Tx d 7 1F C0 00 10 00 03 01
2914.934323 1 21F Rx d 7 00 D0 00 03 2E 03 01
2914.939959 1 32E Tx d 6 A0 0F 8A FF 32 FF
2914.945312 1 300 Rx d 6 A1 0F 8A FF 4F FF
2915.097217 1 32E Tx d 5 10 00 02 1A 9B
2915.105583 1 300 Rx d 1 B1
2915.114360 1 300 Rx d 6 10 00 03 7F 1A 11
2915.120126 1 32E Tx d 1 B1
2915.142627 1 32E Tx d 8 21 00 0D 22 F1 87 F1 89
2915.191109 1 32E Tx d 8 22 F1 91 F1 A3 F1 A5 F1
2915.211792 1 32E Tx d 2 13 DF
2915.215202 1 300 Rx d 1 B4
2915.269107 1 300 Rx d 6 11 80 03 7F 22 78 <---------
2915.275091 1 32E Tx d 1 B2
2915.334975 1 300 Rx d 8 22 00 31 62 F1 87 36 4E
2915.374331 1 300 Rx d 8 23 30 39 30 39 39 30 31
2915.382798 1 300 Rx d 8 24 20 20 F1 89 30 32 35
2915.385743 1 300 Rx d 8 25 34 F1 91 36 52 55 39
2915.388641 1 300 Rx d 8 26 33 37 30 38 37 20 20
2915.410020 1 300 Rx d 8 27 F1 A3 48 34 37 F1 A5
2915.422892 1 300 Rx d 8 28 00 06 47 4E 05 FA F1
2915.438445 1 300 Rx d 3 19 DF 00
2915.445937 1 32E Tx d 1 BA
11 80 03 7F 22 78
тут по идее должны быть длинна пакета, но длинна явно 3 байта, а старший бит используется как какой то флаг. Встречал этот флаг только в ответах Pending, что может говорить о том, что возможно это флаг показывает что дальше будет следовать другой пакет. Вопрос в том сколько ещё бит там используется под флаги. Пока сколько не искал найти не удалось. Может кому попадалась эта информация?
Размер 03, после него идет негативный (7F) ответ "запрос принят, требуется время для ответа" (код 78).
В принципе в вашем логе если посмотреть другие ответы от ЭБУ, они совпадают с этой схемой:
10 00 02 1A 9B: 10=опкод+счетчик, 00 = некий флаг + 4 бита размер, 02 = длины данных KWP Payload, 1A 9B сами данные
10 00 03 7F 1A 11: 10=опкод+счетчик, 00 = флаги+4 бита размер, 03 = длина данных KWP Payload, 7F 1A 11 — сами данные (негативный ответ: сервис 1A не поддерживается)
1. А есть ли какие-то opensource библиотеки по работе с подобным железом?
2. Какой сканер ELM327 стоит купить, чтобы можно было максимально полно продиагностировать машину класса второго Гольфа? У меня есть синенький ELM327 с Алиэкспресс, но минимум один раз была ошибка (желтый индикатор подушек безопасности) которую я не мог сбросить.
С elm327 как повезет, китайцы делают такие экземпляры в которых может работать только 1-2 функции из десятка. Я писал об этом здесь:
www.drive2.ru/l/535143030550692285
Хорошая статья от разработчика CarScanner:
www.carscanner.info/ru/choosing-obdii-adapter
Я использую Viecar BLE 4.0, он точно работает
Оригинальный ELM327 от компании elmelectronics стоит порядка 50$, в России я таких не встречал в продаже.Я тоже. Поэтому купил на Амазоне оригинальный американский адаптер OBDLink MX Bluetooth. Вещь!
As of firmware version 4.3.0 released on March 29, 2017, OBDLink MX fully supports the following ELM327 versions:
1.0, 1.0a, 1.1, 1.2, 1.2a, 1.3, 1.3a, 1.4, 1.4b.
These versions of ELM327 are not supported (yet):
2.0, 2.1, 2.2.
Хакаем CAN шину авто. Мобильное приложение вместо панели приборов