Вход

Просмотр полной версии : Управление стеклоподъемниками по шине данных.


doxtor
08.05.2017, 00:23
Собсно сабж. Делать было нефига, помониторил через ELM шину, научился из Putty (терминала) через AT-команды открывать/закрывать все двери кроме водительской и поднимать/опускать стекла по правой стороне. Научился читать состояние всех дверей (привет пафасным дебилам из русского Fortin'а, у меня это заняло 40 минут, а вы до сих пор запилить не можете). Собсно пока все выглядит тривиальным. Хочу спаять приблуду J1850-arduino для прямой записи в шину... Ну и вопрос, собсно... никто не ваял такую, чтобы мне велосипед и грабли не мучать? Вроде были схемы на эмулятор CD-ченьджера (там суть такая-же абсолютно)... но они все кривые и косые... никто до ума не доводил?

ЗЫ: ну и автодоводка стекол по установке на сигналку упирается в то, что с блоков через 40 секунд после выключения ACC снимается питание... Замониторить сей факт тяжеловато (дабы включить его обратно), но попробую... есть идейка, как энту посылку вычленить... Без этого - не феншуй - только костыльные варианты...

ЗЫЗЫ: кстати оставлять кетайский bluetooth ELM (коих щас как грязи) в разъеме - низя, выходит... ДЫРА в безопасности... Да и вообще надо позырить - не вылазит ли шина куданить на разъем фаркопа, например? А то ппц, блин... страшновато... :ag:

dimanoid
09.05.2017, 00:55
Блютус елм вообще нельзя оставлять. Он такие глюки врописывает, что клему снимать.
А по сабжу не слышал чтоб ктотто делал

oejek67
09.05.2017, 07:42
Блютус елм вообще нельзя оставлять. Он такие глюки врописывает, что клему снимать.
Во блин.У меня уже месяца четыре торчит.Сегодня вытащу.

doxtor
09.05.2017, 08:07
Блютус елм вообще нельзя оставлять. Он такие глюки врописывает, что клему снимать.
А по сабжу не слышал чтоб ктотто делал

Низнаю... стоит 2-й год... глюков не было... может "вы не умеете их правильно готовить?" ну в смысле версия не та? Другой вопрос, что там пин 1234 и с выключенным зажиганием свободно подключается... ну а далее ATSH xx yy zz ... 00 [enter] и дверки открылись... правда не смотрел еще - снимает с сигнализации или нет...

dimanoid
09.05.2017, 09:46
У меня когда "жёлтый" елм стоял, тоже проблем не было. Щас синий с кнопкой и такие глюки

Artery
12.05.2017, 13:25
doxtor, кодами не поделисси? А мониторил как? Тупо терминалом слушал блютуз-компорт на котором ЕЛМка висит?

ЗЫ Тоже потихоньку обАрдуиниваю машину ;)

doxtor
12.05.2017, 15:12
doxtor, кодами не поделисси? А мониторил как? Тупо терминалом слушал блютуз-компорт на котором ЕЛМка висит?

ЗЫ Тоже потихоньку обАрдуиниваю машину ;)

ELM управляется через AT-команды, на компе видится как bluetooth com-port и имеет свой номер порта. Цепляешься на этот порт терминалом, инициализируешся: ATZ, ATL1, ATH1 (если не путаю)... далее - ATMA - и любуешься "трафиком" на шине вида PP RR TT DD DD ... CC (приоритет приемник передатчик данные контрольная сумма)чтобы что-то понять, его по хорошему надо распарсить, но по простому - включаешь логирование всей 'той ботвиньи, запускаешь ATMA затем быстро n-раз нажимаешь нужную кнопку, полученный лог либо (как делали буржуи) - в эксель и искать n-одинаковых последовательностей, либо мне в принципе хватило блокнота и глаз... Далее, получив эти n примерно одинаковых последовательностей посылок делаем ATMR RRmn (эта штука парсит шину и выбирает только те посылки, в которых приемник = RRmn, где n - номер последовательности, а m - номер посылки в n-й последовательности) для каждого RR из этой последовательности, нажимаем кнопочку и смотрим - появляются отфильтрованные посылки ли нет. Если нет, меняем RR на следующий и т.д.
В итоге я выявил, что при нажатие кнопок управления стеклами или дверями используется RR равый A0h. Т.е. делай ATMR A0 [ENTER] - дави кнопку и смотри, что происходит... Менятся будут TT и данные... все коды я не записывал, но для примеру могу сказать, что

22 A0 01 00 [CC] (контрольную сумму ELM считает сам, поэтому ее не записывал) - открывает 3 двери, кроме водительской (багажник - не помню)

22 A0 04 00 [CC] - закрывает 3 двери, кроме водительской

22 A0 40 00 [CC] - заднее правое стекло вверх

22 A0 80 00 [CC] - заднее правое стекло вниз

переднее правое, если не путаю вместо 40 и 80 было 10 и 08...

Если анализировать DD в 22 A0 xx, то видно, что оно меняется в зависимости от открытых или закрытых дверей... т.е. похоже как раз тот самый статус дверей, который мне нужен для сигналки...

Записывал в шину через ATSH PP RR TT, затем 00 (просто 00) и [ENTER]. Сдается мне что а) это не совсем верно, б) в этот момент не вижу "ответки" по шине, в) впечатление, что посылка долбится rnd раз (а скорее t-милисекунд), т.к. после ENTER стекла опускаются/поднимаются ступенькой, высота которой рознится...

Теперь некоторые сделанные мной выводы (не знаю, правильные или нет) и "полученные результаты):

1. RR=A0 - пассажирский блок
2. надо научиться правильно писать в J1850, а еще лучше соорудить на ардуине девайс чтения/записи на прямую... в принципе живую схему почти нашел...
3. надо вычленить команду, гасящую питание через 40 секунд на дверных блоках и попробовать его "включать" обратно, иначе стекла через 40 секунд не подвигать...
4. То, что приемником является A0 абсолютно не говорит о том, что он является ИСПОЛНИТЕЛЕМ действия, т.е. при нажатие на кнопку водительского стекла посылка выглядит как 22 A0 02 00 [CC] но при этом запись такой команды в шину не вызывает никаких действий, т.е. сия посылка получается какбы сугубо "информационная" для A0... по крайней мере это мне пока-что так видится... может быть все проще...
5. при запущенном ATMA и включенном двигателе через некоторое время загорается чек. Если ATMA остановить - чек тутже тухнет.. Т.к. елм-ка занята терминалом, вычитать код ошибки не представляется возможным.
6. Нужно таки напрячься и покурить j1850 и форматы посылок, чтобы точно знать, что и как посылать...

Ну и на последок: идею изначально брал отсюда - https://theksmith.com/software/hack-vehicle-bus-cheap-easy-part-1/

там-же есть живые команды управления громкостью, seek и выбором пресета с руля. Все попробовал, все работают как в одну, так и в другую сторону... Т.е. уже сейчас сделать коробочку для управления с кнопок руля ЛЮБОЙ магнитолой - нет никаких проблем...

dimanoid
12.05.2017, 15:18
возможно шина j1850 физически изолирована от pci-bus, а чтобы открыть например порт связи нужно иницализировать отдельной командой какой то протокол связи одного с другим. или физически слать прямо в pci-bus

doxtor
12.05.2017, 15:23
возможно шина j1850 физически изолирована от pci-bus, а чтобы открыть например порт связи нужно иницализировать отдельной командой какой то протокол связи одного с другим. или физически слать прямо в pci-bus

если верить схеме, на разъем диагностики, на 2-ю ногу (коя везде называется J1850) приходит желто-фиолетовый провод с названием PCI BUS :ab:... т.е. это одно и тоже....

dimanoid
12.05.2017, 16:06
не факт что елм с этой ногой конектится даже. на сколько я помню j1850 многоуровневый протокол с разнесением данных толи по частотам, толли по пакетам и где чо как работает совместно с мультиплексом машины сказать оч сложно. на месте крайслера я бы кодировал данные pcibus чтоб как ты сказал машина не уехала сама. то, что ты видишь, возможно перекодированная команда. я хз короче, некогда разбираться. да и лень))))

doxtor
12.05.2017, 16:12
не факт что елм с этой ногой конектится даже. на сколько я помню j1850 многоуровневый протокол с разнесением данных толи по частотам, толли по пакетам и где чо как работает совместно с мультиплексом машины сказать оч сложно. на месте крайслера я бы кодировал данные pcibus чтоб как ты сказал машина не уехала сама. то, что ты видишь, возможно перекодированная команда. я хз короче, некогда разбираться. да и лень))))

В елм по умолчанию выбирается протокол автоматически... Можно выбрать принудительно. Я принудительно AT-командой выбираю J1850 :ab: Современная шина - шифруется... Причем в 90% случаев ключи только у производителя... т.е. без подключения к тырнету и диллерскому акку ничего не сделаешь. Ну а шина разработки конца 70-х скорее всего - нет. Первые CAN тоже были дырявы абсолютно с точки зрения безопасности (сам не копался, но у нас в конторе присутствовал отдельчик, специализрующися на "взломе" CAN... живые поделушки видел...)...

darkcorp
15.02.2023, 11:42
Апну тему. Есть что-нибудь новенькое?

Для изучения:
- краткое описание протокола J1850 http://www.interfacebus.com/Automotive_SAE_J1850_Bus.html
- эмулятор сд-чейнджера https://github.com/bboydt/Jeep-Bluetooth-Mod
- монитор шины https://github.com/jonofmac/vpw_analyzer
- сканер, который много чего делает https://github.com/laszlodaniel/ChryslerScanner
- список PID VPW http://www.fastfieros.com/tech/vpw_communication_protocol.htm

dampil_84
18.02.2023, 09:20
Всем привет! Пару лет назад, до того как родилась дочь, изучал плотно эту тему. Из достижений, сделал прототип на ардуинке модуля имулятор cd ченджера с управлением с штатных кнопок через Bluetooth модуль телефоном. Всё было собрано на макетной плате, но перенести на плату не успел, было пару неудачных попыток

doxtor
27.02.2023, 01:18
Апну тему. Есть что-нибудь новенькое?

Для изучения:
- краткое описание протокола J1850 http://www.interfacebus.com/Automotive_SAE_J1850_Bus.html
- эмулятор сд-чейнджера https://github.com/bboydt/Jeep-Bluetooth-Mod
- монитор шины https://github.com/jonofmac/vpw_analyzer
- сканер, который много чего делает https://github.com/laszlodaniel/ChryslerScanner
- список PID VPW http://www.fastfieros.com/tech/vpw_communication_protocol.htm

Дыы.... старость, годы... смена интересов :ag: Жип из разряда игрушки с гайками перешел в разряд дорогого старого поповоза. Ездить, и ладно... куда уж тут городушки какие городить...

Piton
27.02.2023, 18:03
Апну тему. Есть что-нибудь новенькое?

Для изучения:
- краткое описание протокола J1850 http://www.interfacebus.com/Automotive_SAE_J1850_Bus.html
- эмулятор сд-чейнджера https://github.com/bboydt/Jeep-Bluetooth-Mod
- монитор шины https://github.com/jonofmac/vpw_analyzer
- сканер, который много чего делает https://github.com/laszlodaniel/ChryslerScanner
- список PID VPW http://www.fastfieros.com/tech/vpw_communication_protocol.htm
Самое главное не написал. По стандарту J2178 многое на WJ работает

но мало кто читает стандарты.

например с заголовком 0х10 идет
; HEADER_10
Engine RPM - High Resolution 1/4 RPM UNM-16-31
Vehicle Speed - High Resolution - Metric 1/128 KPH UNM-16-5
Intake Manifold Absolute Pressure 1 kPaA UNM-08-101

а заголовок 0х3А по стандарту J2178 поддерживается но запрещен на вывод шины (программно включается).
; HEADER_3А
MSB PRN 1807 Transmission Lockup Status 2 bits
0 Unlock
1 Partial Lock
2 Full Lock
3 Invalid
LSB PRN 1810 Transmission Gear Engaged - Expanded 6 bits
00 Unknown
01 Neutral
02-0F Reserved
10 Reverse
11-1F Reserved for Reverse Gears
20 Forward 1
21 Forward 2
22 Forward 3
23 Forward 4
24 Forward 5
25 Forward 6
26-2F Reserved for Forward Gears
30-3E Reserved
3F Invalid

darkcorp
01.03.2023, 18:54
Где только найти стандарт J2178 в открытом доступе?

Piton
03.03.2023, 12:22
Где только найти стандарт J2178 в открытом доступе?

https://drive.google.com/drive/folders/11DsrqSsgcfb4Z-uhCoNJyWtXjjEwuhJy?usp=sharing