OBD-II protocol

UDS Mode 22: що приховують виробники за межами стандарту OBD-II

Що таке UDS (Unified Diagnostic Services) ISO 14229, різниця з OBD-II, як через Mode 22 читати DPF soot mass, VGT position, TPMS воltage, і чому 90% "цікавого" — саме тут.

ШІ-згенеровано 4 хв читання

Стандартний OBD-II (SAE J1979) — це Mode 01 живі параметри, Mode 03 DTC-коди, Mode 09 VIN, кілька інших. Всього ~200 стандартних PID, багато з яких не показують нічого специфічного для вашого авто. Все, що вас реально цікавить — тиск AdBlue, положення VGT, стан батарейки TPMS-датчика — живе за межами OBD-II, у UDS (Unified Diagnostic Services), стандарт ISO 14229. У пості — коротко про архітектуру і чому 90% «цікавого» саме тут.

Що таке UDS

UDS = Unified Diagnostic Services (ISO 14229). Розроблено як єдиний протокол діагностики для всіх виробників ЄС/США після 2007 року. Використовується всередині автомобіля між сервісним приладом і ECU (через CAN, LIN, Ethernet).

UDS має власний набір «сервісів» (аналог modes у OBD-II):

  • $10 — DiagnosticSessionControl (перехід у сервісний режим)
  • $22ReadDataByIdentifier (читання будь-якого параметра за 16-bit ID)
  • $27 — SecurityAccess (розблокування захищених функцій)
  • $2E — WriteDataByIdentifier (запис)
  • $31 — RoutineControl (запуск діагностичних routines)
  • $34-$37 — Upload / Download (перепрошивка ECU)

Ключовий для читання даних — $22 (ReadDataByIdentifier).

OBD-II Mode 22 — bridge to UDS

OBD-II дає ліміт: Mode 01 покриває тільки 200+ стандартних PID (0-byte identifiers). Для доступу до 65 535 виробничих ID — використовується OBD-II Mode 22, який фактично є проксі до UDS $22.

Запит:

22 F1 90    ← «прочитай ID 0xF190»

Відповідь:

62 F1 90 W V W Z Z Z 1 K Z 9 W 1 2 3 4 5 6    ← VIN

Чому 90% «цікавого» — у Mode 22

Приклад 1. DPF (дизель)

Стандартний OBD-II покаже тільки P2002 «Filter efficiency below threshold». Mode 22 (для VW):

  • ID 0x22A6 — Soot mass calculated (28.3 g)
  • ID 0x22A7 — Soot mass measured (31.5 g)
  • ID 0x22A8 — Regeneration count (145)
  • ID 0x22B5 — DPF differential pressure (24 mbar)
  • ID 0x22F4 — Time since last regen (34 hours)

Це те, що не побачить стандартний OBD-II.

Приклад 2. Turbo (VGT position)

Стандарт: MAP і boost. Mode 22 (для BMW N57):

  • ID 0x4A31 — VGT position (%)
  • ID 0x4A32 — VGT target position (%)
  • ID 0x4A50 — Waste gate duty cycle
  • ID 0x4B00 — Turbocharger inlet temperature

Все, що потрібно для турбо-діагностики.

Приклад 3. TPMS (в кожному колесі)

Стандарт: тільки C075X коди. Mode 22 (для Mercedes):

  • ID 0xF201 — TPMS LF pressure
  • ID 0xF202 — TPMS LF temperature
  • ID 0xF203 — TPMS LF battery voltage
  • ID 0xF204 — TPMS LF sensor ID (8 hex)

Тобто повний TPMS-моніторинг.

Складнощі UDS

1. Ідентифікатори НЕ стандартизовані

Той самий параметр (наприклад, oil temperature) має різні ID у різних виробників:

  • VW: 0x2200
  • BMW: 0x445F
  • Ford: 0xE010
  • Toyota: 0x1146

Тому універсальний ELM327 без бази PID не знає, що читати.

2. Deep-level DID вимагають SecurityAccess

Наприклад, WriteDataByIdentifier (запис) або запуск routines (регенерація DPF, скидання адаптацій) — вимагають seed-key challenge. Це вже реверс-інжиніринг протоколу.

3. Deep-level дані — тільки в extended session

Треба спочатку 10 03 (extended session), потім 27 XX (SecurityAccess), потім 22 XX XX (read). Тайм-аути суворі.

Що робить Car Diagnostics

Ми зібрали базу PID для ~15 виробників (VW Group, BMW, Mercedes, Toyota, Ford, GM, Renault, PSA, Hyundai/Kia, Volvo Trucks, Scania, Isuzu, Iveco, Chinese brands: Chery, Geely, Great Wall). Для кожного:

  • Розшифровка ID → людське значення
  • Одиниці виміру
  • Норми
  • Виробничі формули (не тільки лінійне масштабування)

Це те, що на платному тарифі — ~200 PID кожен маркер понад стандартних OBD-II.

Приклад practical

Ви хочете зрозуміти, чи скручений пробіг у Toyota Camry 2018:

  • Стандартний OBD-II: тільки VIN і DTC
  • Mode 22 (Toyota):
    • 0x1146 — Engine hours (наприклад 3450)
    • 0x1147 — Ignition cycles (7890)
    • 0x1148 — Distance since new (ECU internal, часто не збігається з кластером!)

Різниця Distance since new в ECU (240 000 км) і на одометрі (85 000 км) → 100% скручено. Див. пост про скручений пробіг.

Для читача-DIY

Якщо ви хочете колупатися самі:

  • BMW/MINI: DME/DDE ISTA документація (leaked, гуглиться)
  • VAG: ODIS-Service labelfiles
  • Ford: Ford IDS/FDRS calibration files
  • GM: GDS2 tester data
  • Mercedes: XENTRY / DAS databases

Car Diagnostics робить це «за вас» — просто читайте параметри з людськими іменами замість hex ID.

Спробуйте на безкоштовному тарифіпідключіть ELM327-адаптер. Виробничі Mode 22 PID — на платному тарифі з підтримкою вашої марки.