
Комментарии 13
Какие еще прикладные протоколы могут быть в автомобиле кроме UDS?
KWP2000(TP20) ещё, и наверно его предшественник TP16.
Чтобы прочитать DID надо использовать сервис 0x2E-Write Data By Identifier (WDBI)
Записать?
вот здесь прям красиво оформлено https://www.csselectronics.com/pages/uds-protocol-tutorial-unified-diagnostic-services поневоле сравнивается ;)
Как раз на днях купил новый мотоцикл, а там теперь только UDS и мои обычные OBD2 донглы уже не работают совсем.
Нашёл реализацию на Питоне (https://github.com/mdabrowski1990/uds) - попробую через USB CAN адаптер чего-нибудь вычитать...
Как раз на днях купил новый мотоцикл
Поздравляю Вас с приобретением!
Вероятно Вам пригодится USB-CAN переходник USB2CANFD_V1
https://habr.com/ru/articles/944112/
В UDS протоколе есть аналог MAC адреса?
С каким именно периодом надо отправлять UDS пакет TesterPresent?
Я в своём софте отправляю с периодом 1900 мс. Значения взято из утилиты прошивки Volvo SDA. Для более старых протоколов видел значения в 4 секунды. Кстати, есть такие штуки https://www.drive2.ru/l/676982229557064902/ можно сделать более универсальную, чтобы можно было те же прошивки обновлять через неё. Сам обдумываю что-то подобное сделать на базе ESP32-C6, чипы дешёвые и есть поддержка 2 КАН шин. Если ещё и k-line реализовать, то вообще универсальная штука будет. Хоть диагностику, хоть прошивку можно делать, хоть отправку сообщений в шину для всяких действий по условиям.
1--Что такое физическая адресация (physically addressed) в контексте протокола UDS?
2--В каком сервисе UDS фигурирует физический адрес модуля?
3--Сколько бит в уникальном физическом адресе UDS модуля ?
4--Сколько бит в функциональном адресе UDS ?
5--Что такое функциональная адресация (functionally addressed)в контексте протокола UDS?
Почему спека UDS оперирует какими-то волшебными 8ми байтовыми адресами, если в ID CAN пакета всего максимум 3,625 байт (29 бит)?

Откуда UDS серверу (ECU) брать оставшиеся 35 бит адреса (8*8 - 29 = 35)?
Существует ли какая-нибудь готовая клиентская Windows утилита (c GUI или консольный вариант), которая опрашивает ECU по CAN через UDS протокол?
Утилита UDS-client, которая работает на прикладном уровне модели OSI и умеет посылать и синтаксически разбирать (парсить) ответные UDS пакеты.
Чтобы, условно, прочитать стандартные в UDS DID параметры.
Такие как VIN номер, серийный номер ECU, дату производства ECU, дату программирования ECU, название производителя ECU и прочее.
Сколько бит в DTC (Diagnostic Trouble Code) коде UDS протокола?
Обзор Автомобильного Протокола UDS [ISO 14229-1]