UDS

chk_pass·2026년 1월 11일
  • CAN 통신 위에서 동작하는 통합 진단 서비스

  • CAN에서 data가 UDS 메시지가 된다.


<구조>

PCI | SID | DID

  • CAN ID: 메시지를 송수신 할 ECU
  • PCI: 주로 UDS 메시지의 길이
  • SID: 서비스 식별자
    • Sub Function Byte: SID에 세부적인 옵션
  • DID: 데이터 식별자


SID

목록: https://en.wikipedia.org/wiki/Unified_Diagnostic_Services

Service ID (hex)Service
0x10Diagnostic Session Control
0x11ECU Reset
0x14Clear Diagnostic Information
0x19Read DTC Information
0x22Read Data By Identifier
0x23Read Memory By Address
0x27Security Access
0x28Communication Control
0x2ARead Data by Periodic ID
0x2EWrite Data By Identifier
0x2FInput Output Control By Identifier
0x31Routine Control
0x34Request Download
0x35Request Upload
0x36Transfer Data
0x37Transfer Exit
0x3DWrite Memory By Address
0x3ETester Present
0x85Control DTC Setting



response

<긍정응답>

ECU가 SID+0x40값으로 응답.

<부정응답>

0x7f라는 error id와 sid, nrc를 반환

7f | SID | NRC

여기서 nrc는 negative response code로 각 값별로 의미가 다름

0개의 댓글