Тема: Считывание диаг. информации
Всем привет.
Есть задача считать показания датчиков (обороты, скорость, температура и т.д) с моторной шины (500к) с дальнейшей отправкой этих данных по UART.
Так как попытки отмониторить данные не увенчались успехом, решил попробовать через запрос-ответ.
Подключил ELM и параллельно canny.
Через CCM прекрасно видно как ELM общается с блоком управления двигателем:
ELM отправляет
7e0 02 01 05 00 00 00 00 00
(тут все понятно 7е0 - ID ECU, 02 - значимый байт, MODE, PID запроса температуры)
ECU отвечает
7e8 03 41 05 45 AA AA AA AA
(и тут все понятно 7е8 = ID запроса+8, 03 - значимый байт, 41 = MODE+40, PID, данные в значимом байте)
далее по формуле вычисляем, что температура = 29 градусов.
Вроде как все прекрасно, формат сообщений понятен, бери отправляй запросы, получай ответы, НО
отключив ELM и отправив через CCM запрос 7e0 02 01 05 00 00 00 00 00 получаем тишину.
При повторной отправке - пусто, на третий раз получаем CANERR!.
Собственно в чем вопрос. Может кто-то делал подобное? Может какие-то нюансы есть?
на фото лог
з.ы. еще вопрос. При работе CCM постоянно моргает COVF!. В хелпе написано, что используйте аппаратную фильтрацию, как ее использовать?