Все знают авто-электриков и диагностов. Я себя называю IT-автоэлектрик. Объединяю физику автомобильных цепей и низкоуровневого программирования на С.
CAN шина это мост между двумя мирами автоэлектриков и IT специалиста. Но для многих этот мост, увы кажется непреодолимой пропастью. Ребята попробуйте программировать на Си и вы пойдёте по этому мосту. Я начинал программировать в телефоне termux. То есть для этого нужно только желание.
Я себя не считаю самым умным. Я просто нашел для себя мощную точку пересечения этих профессий и стал называть этот подход IT-автоэлектрик. Писать свои собственные утилиты на С чтоб заглянуть под капот CAN шины. Под капотом ДВС менее интересно.
Разрабатываю две утилиты «карта» map_id_j1939.c и «микроскоп» viz_j1939.c . Программы написанны теперь нужно проверить в деле. Снимаю лог candump -t a > file на заведомо исправной машине. Настраиваю фильтр своего микроскопа FECA это активные ошибки.
Читаем с лево на право от нуля. Byte0 — приоритет + 2 младших бита расширение. Byte1 — голова. Byte2 — хвост Byte3 — адресный. Читаем с лево на прово. Byte3 > [0] это ДВС смотрим поле данных чисто ошибок нет. Хотя по коробке 0xB не чисто . Но на панели ни один чек не светился. Не хочу обесценивать ни чей труд и бизнес. Не дорогой свисток + С + Linux = диагностика.
Что я сделаю теперь? Сниму разъём с датчика надува.

Поле данных двигателя внутреннего сгорания можем видеть ошибку. Считаем с лево на право давайте от 1 хотя ЭВМ считает от 0. Итак 3,4 и 3 старших бита 5 байта это SPN 5 младших бита 5 байта FMI 6 байт счётчик.

Получается SPN 102 FMI 4 счётчик 1 . Есть подозрение, что утилита работает.
Размер моих логов на сегодняшний день 1 — 3 мегабайта. Если вес лога гигабайты то по идее данные нужно положить в голову страницы и процессор полетит как пуля. Размер скомпилированного файла map_id_j1939.c и viz_j1939.c по 16.5 КБ.
В следующей статье покажу одну аномалию которую я вытянул картой ./map_id_j1939 это моя вторая утилита.
Люблю создавать утилиты с нуля и сейчас глубоко изучаю протокол j1939 на практике через разработку собственного софта. Работаю автоэлектриком по комерческому транспорту. Открыт к предложениям по работе и стажировке. Хочу вкатиться в IT. Все исходники проектов доступны в моём репозитории github.
https://github.com/Data7Viz/data7-can
