PCCar.ru - Ваш автомобильный компьютер

PCCar.ru - Ваш автомобильный компьютер (http://pccar.ru/index.php)
-   Общение с машиной (http://pccar.ru/forumdisplay.php?f=14)
-   -   Blaupunkt RD4 + CANhacker (http://pccar.ru/showthread.php?t=19853)

autowp 03.11.2013 18:10

Blaupunkt RD4 + CANhacker
 
Вложений: 1
День добрый.

Пытаюсь "на столе" завести магнитолу Blaupunkt RD4 (Peugeot/Citroen).
Не заводится: только CD-дека активна (забирает/отдает диск).
Т.к. магнитола в машине берет на себя в т.ч. ф-ии управления БК, то это наверное не удивительно.

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

В качестве CAN адаптера использую http://amprog.ru/magazin2/canhacker-canusb с оригинальной программой-клиентом http://www.canhack.de/viewtopic.php?t=132

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

Может кто-нить что-нибудь подсказать, подтолкнуть в какую сторону копать?

awtoap 03.11.2013 19:13

Для начала надо было выяснить про наличии самого CAN у бошки. Возможно там что-то свое.

autowp 04.11.2013 04:23

Вложений: 1
Цитата:

Сообщение от awtoap (Сообщение 275947)
Для начала надо было выяснить про наличии самого CAN у бошки. Возможно там что-то свое.

Судя по распиновке
Part A
...
Pin 10: data CAN high
Pin 13: data CAN low
Pin 16: ground - "масса" магнитолы
...
и по многочисленным упоминаниям в сети, там именно CAN

Vic26 04.11.2013 13:10

для начала надо определить скорость CAN шины, без этого дальше не сдвинешься

autowp 06.11.2013 00:23

Скорость, судя по всему, 125kbps.

Магнитола рабочая - попробовал в машине - играет (только громко пищит каждые 2 сек, наверное какая-то защита).

Удалось получить первые признаки жизни: на скорости 125kbps, короткими проводами со снятым сопротивлением на canhacker (124 Ом между CAN-L и CAN-H) - получил "сигнал" [00 00] от ID=420 при включении питания магнитолы. Не при каждом включении - иногда загорается can error

Дальше ни с места: вернуть сопротивление - сигнал теряется, взять провод подлиннее (витую пару 2м) - сигнал теряется. Сопротивление со стороны магнитолы - сигнал теряется

Vic26 06.11.2013 15:24

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

autowp 06.11.2013 23:10

Цитата:

Сообщение от Vic26 (Сообщение 276244)
попробуй в машине почитать, если скорость правильная то будет много данных.

Пожалуй стоит попробовать. Чтобы не трогать провода - повеситься на CAN вместо магнитолы. Хотя я почти уверен в 125kbps

А пока ...

Предположил, что USB питание чем-то не устраивает и попробовал запитать CAN-адаптер от +12V через предусмотренные для этого контакты. Ничего не изменилось.

Полез напрямую в COM-порт через putty (терминал), из которого выудил, что код ошибки - 77.
Если я правильно понимаю, и это код от микросхемы SJA1000, то, согласно документации, ошибка расшифровывается как "form error/error delimiter". Чем мне это знание помогло? Увы, ничем )

awtoap 06.11.2013 23:21

Полярность кана не перепутал

autowp 06.11.2013 23:37

Цитата:

Сообщение от awtoap (Сообщение 276300)
Полярность кана не перепутал

Вот прям после вашего сообщения позвонил
между 13ым пином Part A и 2ым пином,
между 10ым пином Part A и 7ым пином

Всё правильно. И земля на месте (на обоих пинах)

awtoap 06.11.2013 23:45

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

autowp 07.11.2013 01:32

Цитата:

Сообщение от awtoap (Сообщение 276306)
Попробуй подключись к автомобильной шине...добейся стабильной работы железки.

Попробовал.

Скорость 125kbps. Снял дампы шины после включения зажигания и в простое. Все почти нормально ... в простое загорелся error, но продолжал писать лог - спишу это на колхозное соединение.

Сначала забыл снять терминатор (125Ом) - с ним ничего не принимало.

fmy1 08.11.2013 14:14

awtoap
А не стоит ли у тебя в магнитоле в качестве CAN трансивера tja1054t?
Судя по схеме на магнитолу так оно и есть. Но схема похоже не совсем от твоей, хотя и Blaupunkt RD4, нужно проверить. А в канхакере стоит PCA82C250. И они не совсем совместимы на физическом уровне, хотя и работают совместно, но коряво.
Скорей всего CAN шина в машине (комфорт) Fault-tolerant (Low Speed tja1054t ) А каннахер работает на High-Speed (PCA82C250).
Для корректной работы надо или заменить PCA82C250 в канхакере на что –то подходящее, или сделать адаптер High-Speed to Fault-tolerant . А можно ничего не делать)) У меня точно так же работает канхакер (коряво). Хотя магнитола не Blaupunkt и машина совсем не Citroen.) Хотел сначала всё переделать, но потом плюнул. Работает и слава богу.)

Vic26 08.11.2013 22:41

Я все таки думаю что скорость немного не совпадает, возможно там 125 с какими нибудь десятыми. Например у опеля одна шина 33.333 kbps а вторая 95.238 kbps
А CAN-транcиверы все совместимы между собой, если соответствуют стандарту.
Есть конечно вариант однопроводной CAN-шины, там другие трансиверы, но это не тот вариант.

autowp 09.11.2013 00:30

Вложений: 1
Да, TJA1054T и стоит.

На всякий случай прозвонил, что это именно он (ибо есть ещё CAN ченджера).

Fault-tolerant адаптеры (ISO 11898-3) - какие-то уж слишком дорогие, редкие, с гальванической развязкой и корпусом от на ДИН-рейку. Страшна

Есть какой-то прибор, который можете порекомендовать попробовать?

fmy1 09.11.2013 01:12

Цитата:

Сообщение от Vic26 (Сообщение 276526)
...
А CAN-транcиверы все совместимы между собой, если соответствуют стандарту...

Я не был бы столь категоричен.)
http://savepic.su/3752044.jpg
Цитата:

Сообщение от autowp (Сообщение 276545)
Да, TJA1054T и стоит.

На всякий случай прозвонил, что это именно он (ибо есть ещё CAN ченджера).
Fault-tolerant адаптеры (ISO 11898-3) - какие-то уж слишком дорогие, редкие, с гальванической развязкой и корпусом от на ДИН-рейку. Страшна
Есть какой-то прибор, который можете порекомендовать попробовать?

Таких готовых конверторов по вменяемой цене я тоже не встречал.
Только если самому спаять. Рублей в 300 наверно выйдет.)

autowp 09.11.2013 01:32

https://www.peak-system.com/produktc...serMan_eng.pdf

Вот что мне нужно )

85 евров. Ух, жлобы

awtoap 09.11.2013 01:40

Во бляха...я тоже считал, что физический уровень кан везде одинаковый.
Возможно этот переходник тебе поможет ). На края купить эту TJA и ноги RX TX присобачить к канхакеру, предварительно отсоединив эти линии от PCA.

fmy1 09.11.2013 02:03

Цитата:

Сообщение от autowp (Сообщение 276554)
https://www.peak-system.com/produktc...serMan_eng.pdf
Вот что мне нужно )
85 евров. Ух, жлобы


Вообще то 85 евров за пару микросхем стоимостью 100р. действительно жлобство.
Наверняка просто скрестили PCA82C251 и TJA1055, что по типу этого
http://savepic.su/3798117.jpg
(Но что то мне в ней не нравится))
А чего ты так переживаешь? Работает и работает, всё равно совершенства не достичь.

autowp 09.11.2013 02:05

Так не работает жешь толком. Дома вообще никак, а в машине с error'ами

autowp 09.11.2013 02:15

Пригляделся, на canhacker'е стоит не PCA82C250, а MCP2551, что впрочем ничего не меняет, не смотря на наличие фразы "The MCP2551 is a high-speed CAN, fault-tolerant device" в даташите

fmy1 09.11.2013 02:33

А ты в машине на какую шину подключал? На диагностическую или которая на приёмник?

autowp 09.11.2013 02:34

Цитата:

Сообщение от fmy1 (Сообщение 276566)
А ты в машине на какую шину подключал? На диагностическую или которая на приёмник?

Вместо приемника повесился

fmy1 09.11.2013 02:42

Это только предположение, на диагностической должна быть High-Speed.
У меня по крайней мере так. Частота на ней 500 kBd, а на комфорте 83.3 kBd
Можно попробовать. И сравнить.

fmy1 09.11.2013 02:44

И ещё. Всё таки уточни точную частоту шин. В сервис мануале должна быть.

awtoap 09.11.2013 03:23

fmy1 Как раз привел схему того переходника (без индикации разве что)

fmy1 10.11.2013 18:28

Вот для пыжиков случайно наткнулся.
http://savepic.su/3772248.jpg
http://savepic.su/3767128.jpg

Т.е выходит что 500kb/s (для диагностической)
И 125 (для комфорта)

Цитата:

Сообщение от awtoap (Сообщение 276571)
fmy1 Как раз привел схему того переходника (без индикации разве что)

Там не совсем всё ласково. )

autowp 10.11.2013 18:44

Цитата:

Сообщение от fmy1 (Сообщение 276675)
Вот для пыжиков случайно наткнулся.

Т.е выходит что 500kb/s


Там не совсем всё ласково. )

500 на Engine CAN, а на Comfort 125 - экспериментально уже подтвердилось.

>> Там не совсем всё ласково. )
А что там не ласково? Сейчас за неимением иного смотрю в сторону сборки переходника

fmy1 10.11.2013 18:56

Дык ты попробовал на 500? И как?

autowp 10.11.2013 19:04

Цитата:

Сообщение от fmy1 (Сообщение 276680)
Дык ты попробовал на 500? И как?

Дома: ни на какой другой сторости, кроме 125 вообще ничего не получил. НА 125 не стабильно получаю пару сообщений.

В машине: на 125 получил массу сообщений, но все равно не стабильно - контроллер сваливается в ошибку. На других скоростях тишина.

Пробовал ли я на 500 - вот прям точно сказать не могу - точно помню, что пробовал все меньшие (чем 125) скорости и точно пробовал 250.

На CAN Engine вообще ничего не пробовал

fmy1 10.11.2013 19:13

Цитата:

Сообщение от autowp (Сообщение 276681)

На CAN Engine вообще ничего не пробовал

Вот, а с этого и надо было начать.) В машине.
Прежде чем огород городить, убедится полностью в работоспособности.)

autowp 11.11.2013 23:19

Цитата:

Сообщение от fmy1 (Сообщение 276682)
Вот, а с этого и надо было начать.) В машине.
Прежде чем огород городить, убедится полностью в работоспособности.)

Убедился. В машине на 500kbps через OBD.

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

autowp 11.11.2013 23:50

Она ожила!

По порядку

1. Взял записанный в машине лог команд на комфорт шине при включении зажигания и запустил его циклически: магнитола зашелестела приводом и заиграла музыкой. Правда как-то очень тихо.
При этом canhacker постоянно с самой первой команды горит ошибкой.
Если взять запись шины, которую я сделал в момент простоя автомобиля с включенным зажиганием - магнитола не включится. Только с записи включения зажигания. Если остановить воспроизведение записи CAN, то магнитола выключается за 0.5-1сек после остановки.

2. Магнитола пищит раз в 1-2 секунды, заглушая музыку, о чём я снял видео (простите за вертикальный кадр - от счастья забыл все нормы приличия). Это защита. Надо прошить VIN.
Скорее всего среди команд, отправляемых при включении зажигания он присутствует и сверяется магнитофоном с сохраненным значением и можно было бы исправить прям в записи с шины, но гораздо проще подключить к машине и поменять, чем искать иголку в стоге сена.
[интересно, а подключить дома lexia к магнитоле в отсутствии BSI реально? =) ]



На видео видно как магнитола вырубается при попытке увеличить громкость - думаю, что всему виной маломощный БП. В машине такого не было.


Теперь надо найти ту самую команду, что вселяет в магнитофон жизненную силу

fmy1 12.11.2013 15:18

Цитата:

Сообщение от autowp (Сообщение 276785)
..............

Право, лучше бы не работал - я бы хоть вывод, что дело в девайсе сделал. .......

Так наоборот хорошо.) Девайс значит рабочий.
Цитата:

Сообщение от autowp (Сообщение 276789)
....

Это защита. Надо прошить VIN. .........

Теперь надо найти ту самую команду, что вселяет в магнитофон жизненную силу

Аналогично.
Надо циклически подавать команду (500мс), а иначе выключится. “Ключевые” команды (замок зажигания) с ID- 000
А вот с кодом на магнитолу не так. Он просто PIN код, не привязанный к VIN,у, но зашит в мозгах авто, и конечно по шине проползает, но в неявном виде, в общем не удалось его локализовать. И его не перешить.

autowp 13.11.2013 01:23

Попробовал завести дисплей (бк) по той же схеме

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



Что это может быть? Таки VIN-защита или дефект дисплея/подключения?

P.S. Шлю лучи негатива в карму продавану этого дисплея, не сообщившего о битых полосках пикселей

autowp 15.11.2013 00:22

Цитата:

Сообщение от fmy1 (Сообщение 276884)
Так наоборот хорошо.) Девайс значит рабочий.


Аналогично.
Надо циклически подавать команду (500мс), а иначе выключится. “Ключевые” команды (замок зажигания) с ID- 000

Изучил запись. Устройства/сообщения с ID=000 нет.

Чтобы "всё работало" надо раз в 100мс посылать команду
Код:

036      8 0E 00 00 0F 01 00 00 A0
(можно увеличить интервал до 200мс, но не более. На записи ровно 100мс)

Больше ничего не требуется.

На всей записи от ID=036 приходят только такие команды, кроме одного случая - в самом начале записи
Код:

036      8 0E 00 00 0F 03 00 00 A0
что вероятно соответствует промежуточному положению ключа, через которое он проходит до включения зажигания.

Магнитола и дисплей активно спамят на шину. Тут меня встретило неожиданное: по каким-то причинам я рассчитывал увидеть несколько (два) ID, соответствующих отправителю сообщения: дисплею и магнитоле, но это оказалось не так.

Код:

ID (binary)    ID      DLC Data                    Period Count
000 1101 1111  0DF      3  10 00 50                0      1306
001 0011 0001  131      5  81 00 00 00 00          0      6434 
001 0101 1011  15B      8  04 00 00 00 00 00 00 00 0      1357 
001 0110 0101  165      4  CC C0 20 00            0      6522 
001 0110 0111  167      8  09 06 FF FF 7F FF 00 00 0      6417 
001 1010 0101  1A5      1  ED                      0      1264 
001 1110 0000  1E0      5  91 00 A2 00 80          0      1321 
001 1110 0101  1E5      7  3F 3F 42 3F 3F 47 0F    0      1353 
001 1110 1101  1ED      1  10                      0      1324 
010 0010 0101  225      5  20 00 40 04 82          0      1303 
010 0110 0101  265      4  80 00 00 00            0      1304 
010 1010 0101  2A5      8  00 00 00 00 00 00 00 00 0      1258 
011 0010 0101  325      3  00 03 00                0      1319 
011 0110 0101  365      5  0A 36 13 00 00          0      1266 
011 1010 0101  3A5      6  01 01 2F 01 2B 00      0      1329 
011 1110 0101  3E5      6  00 00 00 00 00 00      0      1229 
011 1111 0110  3F6      7  00 7D D0 00 00 C0 01    0      702   
100 0010 0000  420      2  00 00                  0      141   
100 1010 0101  4A5      8  50 F8 EB 80 03 04 05 06 0      4     
101 0010 0000  520      8  00 00 00 00 26 00 00 00 0      599   
101 0010 0101  525      8  05 00 00 00 00 00 00 00 0      660   
101 1110 0000  5E0      8  20 1E 03 04 05 0E 20 0D 0      63   
101 1110 0101  5E5      8  25 1A 07 04 0C 00 20 11 0      67

По всей видимости ID используется не для идентификации отправителя, а для идентификации типа сообщения (например: сообщение об изменении громкости).

З.Ы. Дисплей перестал моргать. Почему - не понял

fmy1 15.11.2013 19:50

Цитата:

Сообщение от autowp (Сообщение 277271)
Изучил запись. Устройства/сообщения с ID=000 нет.

Я и не утверждал. Это у меня так.) Это одно из условий, хотя и не единственное, но позволяющее включить магнитолу.
Цитата:

Сообщение от autowp (Сообщение 277271)
Изучил запись. Устройства/сообщения с ID=000 нет.
Чтобы "всё работало" надо раз в 100мс посылать команду
(можно увеличить интервал до 200мс, но не более. На записи ровно 100мс)

Ну выходит что мне повезло в пять раз больше.)))
Цитата:

Сообщение от autowp (Сообщение 277271)
а для идентификации типа сообщения

Ага, можно сказать и так.
Цитата:

Сообщение от autowp (Сообщение 277271)
З.Ы. Дисплей перестал моргать. Почему - не понял

Это он понял тщетность своих попыток и смерился со своей судьбой.)

А ты на “столе” запускаешь всю эту хрень без резистора?
И какая цель изысканий?

autowp 15.11.2013 19:59

Цитата:

Сообщение от fmy1 (Сообщение 277336)
А ты на “столе” запускаешь всю эту хрень без резистора?

Да, потому как с ним читать с шины не получается (писать - вроде нормально)

>> И какая цель изысканий?

Андроид в машину.
Главное - процесс. Впрочем, чтобы процесс имел цель, я её придумал

- микровзаимодействие через кан с магнитолой
- графический интерфейс срабатывания парктроника на экране андроида

autowp 15.11.2013 20:01

>> Это одно из условий, хотя и не единственное, но позволяющее включить магнитолу.

Как минимум магнитолу ещё можно включать непосредственным нажатием на power, но дома она так не включается. Почему - пока не понимаю. Без зажигания на кан-комфорте никаких сигналов нет, значит контект одинаковый дома и в авто

autowp 15.11.2013 22:51

Отучил магнитолу от старого VIN и приучил к новому.

Впрочем всего этого можно было не делать, знай я старый VIN.

По порядку.

Магнитола по-видимому не совсем такая как у меня, потому что DiagBox её не признал, однако это не помешало посмотреть в ней старый VIN и поменять на новый. VIN хранится полностью.
К сожалению включить AUX и отключить "наличие усилителя" не удалось из-за лаконичного "failed to programming", что наверное связано с unknown ECU. Можно было бы попробовать прикинуться Citroen C5 II и попробовать снова, но терпеть тормозной DiagBox не было больше сил.

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

Стал было методом "половинного деления" искать команду отправки PIN/VIN/checksum ... но остановился и решил проверить самое простое - наличие своего вина в ASCII .

В общем вот он, через 300мс после включения зажигания
Код:

2B6      8 32 31 34 39 36 34 36 34
21496464

Не смотря на то, что хранится полный VIN, на шину выдается только serial number и соответственно только он и сравнивается.

Достаточно один раз отправить после подачи питания на магнитолу. Повторять команду нет смысла.

fmy1 16.11.2013 15:58

Цитата:

Сообщение от autowp (Сообщение 277338)
Да, потому как с ним читать с шины не получается (писать - вроде нормально)

А ты попробуй. Данные не читаются, да и хрен с ними. И понаблюдай. )
Цитата:

Сообщение от autowp (Сообщение 277339)
Как минимум магнитолу ещё можно включать непосредственным нажатием на power....

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

Сообщение от autowp (Сообщение 277350)
Отучил магнитолу от старого VIN и приучил к новому.

Поздравлям!


Часовой пояс GMT +4, время: 13:04.

Работает на vBulletin® версия 3.8.4.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot