INTERNATIONAL
STANDARD
ISO
14229-1
Third edition
2020-02
Road vehicles - Unified diagnostic
services (UDS) -
Part 1:
Application layer
Vehicules routiers - Services de diagnostic unifies (SDU) -
Partie 1: Couches application
~
Reference number
ISO 14229-1:2020(E)
ISO 14229-1:Z0Z0(E)
COPYRIGHT PROTECTED DOCUMENT
© ISO 2020
All rights reserved. Unless otherwise specified, or required in the context of its implementation, no part of this publication may
be reproduced or utilized otherwise in any form or by any means, electronic or mechanical, including photocopying, or posting
on the internet or an intranet, without prior written permission. Permission can be requested from either ISO at the address
below or ISO's member body in the country of the requester.
ISO copyright office
CP 401 • Ch. de Blandonnet 8
CH-1214 Vernier, Geneva
Phone: +41 22 749 0111
Fax: +41 22 749 09 47
Email: copyright@iso.org
Website: www.iso.org
Published in Switzerland
ISO 14229-1:2020(E)
Contents
Page
Foreword ......................................................................................................................................................................... ix
Introduction ..................................................................................................................................................................... x
1
2
3
4
5
Scope .................................................................................................................................................................... 1
Normative references .................................................................................................................................... 1
Terms and definitions .................................................................................................................................... 2
Symbols and abbreviated terms ................................................................................................................. 5
Conventions ....................................................................................................................................................... 5
Document overview ........................................................................................................................................ 6
6
Application layer services ............................................................................................................................ 7
7
General ................................................................................................................................................................ 7
7.1
Format description of application layer services ................................................................................ 9
7.2
Format description of service primitives ............................................................................................... 9
7.3
7 .3.1 General definition ............................................................................................................................................ 9
7.3.2 Service request and service indication primitives ........................................................................... 10
7.3.3 Service response and service confirm primitives ............................................................................. 11
7.3.4 Service request-confirm and service r esponse-confirm primitives .......................................... 11
7.4
Service data unit specification ................................................................................................................. 12
7.4.1 Mandatory parameters ............................................................................................................................... 12
7.4.2 Vehicle system requirements ................................................................................................................... 14
7 .4.3 Optional parameters - A_AE, application layer remote address .................................................. 15
8
Application layer protocol ......................................................................................................................... 15
8.1
General definition ......................................................................................................................................... 15
8.2
A_PDU, application protocol data unit .................................................................................................. 16
8.3
A_PCI, application protocol control information .............................................................................. 16
8.4
SI, service identifier ..................................................................................................................................... 17
8.5
A_NR_SI, Negative response service identifier ................................................................................... 17
8.6
Negative response/confirmation service primitive ......................................................................... 18
8.7
Server response implementation rules ................................................................................................ 18
8.7.1 General definitions ....................................................................................................................................... 18
8. 7.2 General server response behaviour ...................................................................................................... 19
8.7.3 Request message with SubFunction parameter and server response behaviour ................. 21
8. 7.4 Request message without SubFunction parameter and server response behaviour .......... 2 5
8. 7.5 Pseudo code example of server response behaviour ...................................................................... 27
8. 7.6 Multiple concurrent request messages with physical and functional addressing ................ 29
Service description conventions ............................................................................................................. 29
9
Service description ...................................................................................................................................... 29
9.1
9.2
Request message ........................................................................................................................................... 30
9.2.1 Request message definition ...................................................................................................................... 30
9.2.2 Request message SubFunction parameter $Level (LEV_) definition ......................................... 31
9.2.3 Request message data-parameter definition ..................................................................................... 33
9.3
Positive response message ........................................................................................................................ 33
9.3.1 Positive response message definition ................................................................................................... 33
9.3.2 Positive response message data-parameter definition .................................................................. 34
ISO 14229-1:2020(E)
9.4
Supported negative response codes (NRC_) ....................................................................................... 34
9.5 Message flow examples .............................................................................................................................. 35
10
Diagnostic and communication management functional unit ..................................................... 36
10.1 Overview ......................................................................................................................................................... 36
10.2 DiagnosticSessionControl (1016) service ............................................................................................. 36
10.2.1 Service description ...................................................................................................................................... 36
10.2.2 Request message .......................................................................................................................................... 40
10.2.3 Positive response message ....................................................................................................................... 41
10.2.4 Supported negative response codes (NRC_) ....................................................................................... 42
10.2.5 Message flow example(s) DiagnosticSessionControl - Start programmingSession ............ 43
10.3 ECUReset (1116) service ............................................................................................................................. 43
10.3.1 Service description ...................................................................................................................................... 43
10.3.2 Request message .......................................................................................................................................... 44
10.3.3 Positive response message ....................................................................................................................... 45
10.3.4 Supported negative response codes (NRC_) ....................................................................................... 46
10.3.5 Message flow example ECUReset ............................................................................................................ 47
10.4 SecurityAccess (2716) service ................................................................................................................... 47
10.4.1 Service description ...................................................................................................................................... 47
10.4.2 Request message .......................................................................................................................................... 49
10.4.3 Positive response message ....................................................................................................................... 51
10.4.4 Supported negative response codes (NRC_) ....................................................................................... 51
10.4.5 Message flow example(s) Security Access ............................................................................................ 52
10.5 CommunicationControl (2816) service ................................................................................................. 54
10.5.1 Service description ...................................................................................................................................... 54
10.5.2 Request message .......................................................................................................................................... 54
10.5.3 Positive response message ....................................................................................................................... 56
10.5.4 Supported negative response codes (NRC_) ....................................................................................... 56
10.5.5 Message flow example Communication Control ( disable transmission of network
management messages) ............................................................................................................................. 57
10.5.6 Message flow example CommunicationControl (switch a remote network into the
diagnostic-only scheduling mode where the node with address 000A16 is connected
to) ....................................................................................................................................................................... 57
10.5.7 Message flow example CommunicationControl (switch to application scheduling
mode with enhanced address information, the node 000A16, which is connected to a
sub-network, is addressed) ...................................................................................................................... 58
10.6 Authentication (2916) service .................................................................................................................. 59
10.6.1 Service overview .......................................................................................................................................... 59
10.6.2 Authentication with PKI Certificate Excha nge (APCE) .................................................................... 60
10.6.3 Authentication with Challenge-Response (ACR) .............................................................................. 65
10.6.4 Common requirements .............................................................................................................................. 69
10.6.5 Request message .......................................................................................................................................... 71
10.6.6 Positive response message ....................................................................................................................... 78
10.6.7 Supported negative response codes (NRC_) ....................................................................................... 85
10.6.8 Message flow example(s) Authentication ........................................................................................... 86
10.7 : TesterPresent (3E16) service .................................................................................................................. 108
10.7.:( Service description .................................................................................................................................... 108
10. 7 .2 Request message ........................................................................................................................................ 108
10.7.~ Positive response message ..................................................................................................................... 108
10.7.4: Supported negative response codes (NRC_) ..................................................................................... 109
10.7.~ Message flow example(s) TesterPresent ........................................................................................... 109
10.8 · ControlDTCSetting (8516) service ......................................................................................................... 110
10.8.1 Service description .................................................................................................................................... 110
10.8.2 Request message ........................................................................................................................................ 111
ISO 14229-1:2020(E)
10.8.3 Positive response message ..................................................................................................................... 112
10.8.4 Supported negative response codes (NRC_) ..................................................................................... 112
10.8.5 Message flow example(s) ControlDTCSetting ................................................................................. 113
10.9 ResponseOnEvent (8616) service ......................................................................................................... 114
10.9.1 Service description ................................................................................................................................... 114
10.9.2 Request message ........................................................................................................................................ 121
10.9.3 Positive response message ..................................................................................................................... 127
10.9.4 Supported negative response codes (NRC_) ..................................................................................... 130
10.9.5 Message flow example(s) ResponseOnEvent ................................................................................... 131
10.10 LinkControl (8716) service ...................................................................................................................... 146
Service description ........................................................................................................................... 146
10.10.1
Request message ............................................................................................................................... 147
10.10.2
Positive response message ............................................................................................................ 149
10.10.3
10.10.4
Supported negative response codes (NRC_) ............................................................................ 149
10.10.5 Message flow example(s) LinkControl ...................................................................................... 150
11
Data transmission functional unit ....................................................................................................... 152
11.1 Overview ....................................................................................................................................................... 152
11.2 ReadDataByldentifier (2216) service .................................................................................................. 153
11.2.1 Service description ................................................................................................................................... 153
11.2.2 Request message ........................................................................................................................................ 153
11.2.3 Positive response message ..................................................................................................................... 154
11.2.4 Supported negative response codes (NRC_) ..................................................................................... 155
11.2.5 Message flow example ReadDataByldentifier ................................................................................. 157
11.3 ReadMemoryByAddress (2316) service ............................................................................................. 159
11.3.1 Service description ................................................................................................................................... 159
11.3.2 Request message ........................................................................................................................................ 159
11.3.3 Positive response message ..................................................................................................................... 161
11.3.4 Supported negative response codes (NRC_) ..................................................................................... 161
11.3.5 Message flow example ReadMemoryByAddress ............................................................................ 163
11.4 ReadScalingDataByldentifier (2416) service .................................................................................... 166
11.4.1 Service description ................................................................................................................................... 166
11.4.2 Request message ........................................................................................................................................ 166
11.4.3 Positive response message ..................................................................................................................... 166
11.4.4 Supported negative response codes (NRC_) ..................................................................................... 167
11.4.5 Message flow example ReadScalingDataByldentifier .................................................................. 169
11.5 ReadDataByPeriodicldentifier (2A16) service ................................................................................. 172
11.5.1 Service description ................................................................................................................................... 172
11.5.2 Request message ........................................................................................................................................ 176
11.5.3 Positive response message ..................................................................................................................... 176
11.5.4 Supported negative response codes (NRC_) ..................................................................................... 177
11.5.5 Message flow example ReadDataByPeriodicldentifier ................................................................ 180
11.6 DynamicallyDefineDataldentifier (2C16) service ........................................................................... 191
11.6.1 Service description ................................................................................................................................... 191
11.6.2 Request message ........................................................................................................................................ 192
11.6.3 Positive response message ..................................................................................................................... 19 5
11.6.4 Supported negative response codes (NRC_) ..................................................................................... 196
11.6.5 Message flow examples DynamicallyDefineDataldentifier ........................................................ 197
11.7 WriteDataByldentifier (2E16) service ................................................................................................. 212
11.7.1 Service description ................................................................................................................................... 212
11.7.2 Request message ........................................................................................................................................ 212
11.7.3 Positive response message ..................................................................................................................... 213
11.7.4 Supported negative response codes (NRC_) ..................................................................................... 214
11.7.5 Message flow example WriteDataByldentifier ............................................................................... 215
ISO 14229-1:2020(E)
11.8 WriteMemoryByAddress (3D16) service ............................................................................................ 216
11.8.1 Service description .................................................................................................................................... 216
11.8.2 Request message ........................................................................................................................................ 217
11.8.3 Positive response message ..................................................................................................................... 218
11.8.4 Supported negative response codes (NRC_) ..................................................................................... 2 19
11.8.5 Message flow example WriteMemoryByAddress ........................................................................... 221
12
Stored data transmission functional unit .......................................................................................... 223
12.1 Overview ....................................................................................................................................................... 223
12.2 ClearDiagnosticlnformation (14-16) service ...................................................................................... 223
12.2.1 Service description .................................................................................................................................... 223
12.2.2 Request message ........................................................................................................................................ 224
12.2.3 Positive response message ..................................................................................................................... 225
12.2.4 Supported negative response codes (NRC_) ..................................................................................... 225
12.2.5 Message flow example ClearDiagnosticlnformation ..................................................................... 226
12.3 ReadDTCinformation (1916) service ................................................................................................... 227
12.3.1 Service description .................................................................................................................................... 227
12.3.2 Request message ........................................................................................................................................ 238
12.3.3 Positive response message ..................................................................................................................... 249
12.3.4 Supported negative response codes (NRC_) ..................................................................................... 263
12.3.5 Message flow examples - ReadDTClnformation ............................................................................. 264
13
InputOutput control functional unit ................................................................................................... 297
13.1 Overview ....................................................................................................................................................... 297
13.2
InputOutputControlByldentifier (2F 16) service .............................................................................. 297
13.2.1 Service description .................................................................................................................................... 297
13.2.2 Re quest message ........................................................................................................................................ 298
13.2.3 Positive response message ..................................................................................................................... 299
13.2.4 Supported negative response codes (NRC_) ..................................................................................... 300
13.2.5 Message flow example(s) InputOutputControlByldentifier ....................................................... 301
14
Routine functional unit ............................................................................................................................ 310
14.1 Overview ....................................................................................................................................................... 310
14.2 RoutineControl (3116) service ............................................................................................................... 311
14.2.1 Service description .................................................................................................................................... 3 11
14.2.2 Request message ........................................................................................................................................ 3 12
14.2.3 Positive r esponse message ..................................................................................................................... 314
14.2.4 Supported negative response codes (NRC_) ..................................................................................... 315
14.2.5 Message flow example(s) RoutineControl ........................................................................................ 317
15
Upload download functional unit ......................................................................................................... 321
15.1 Overview ....................................................................................................................................................... 321
15.2 RequestDownload (3416) service .......................................................................................................... 321
15.2.1 Service description .................................................................................................................................... 321
15.2.2 Request message ........................................................................................................................................ 322
15.2.3 Positive response message ..................................................................................................................... 323
15.2.4 Supported negative response codes (NRC_) ..................................................................................... 324
15.2.5 Message flow example(s) RequestDownload ................................................................................... 325
15.3 RequestUpload (3516) service ................................................................................................................ 325
15.3.1 Service description .................................................................................................................................... 325
15.3.2 Request message ........................................................................................................................................ 326
15.3.3 Positive response message ..................................................................................................................... 327
15.3.4 Supported negative response codes (NRC_) ..................................................................................... 328
15.3.5 Message flow example(s) RequestUpload ......................................................................................... 329
15.4 TransferData (3616) service ................................................................................................................... 330
15.4.1 Service description .................................................................................................................................... 330
ISO 14229-1:2020(E)
15.4.2 Request message ........................................................................................................................................ 330
15.4.3 Positive response message ..................................................................................................................... 331
15.4.4 Supported negative response codes (NRC_) ..................................................................................... 332
15.4.5 Message flow example(s) TransferData ............................................................................................ 334
15.5 RequestTransferExit (3716) service .................................................................................................... 334
15.5.1 Service description ................................................................................................................................... 334
15.5.2 Request message ........................................................................................................................................ 335
15.5.3 Positive response message ..................................................................................................................... 335
15.5.4 Supported negative response codes (NRC_) ..................................................................................... 336
15.5.5 Message flow example(s) for downloading/uploading data ..................................................... 337
15.6 RequestFileTransfer (3816) service .................................................................................................... 344
15.6.1 Service description ................................................................................................................................... 344
15.6.2 Request message ........................................................................................................................................ 344
15.6.3 Positive response message ..................................................................................................................... 346
15.6.4 Supported negative response codes (NRC_) ..................................................................................... 348
15.6.5 Message flow example(s) RequestFileTransfer .............................................................................. 350
16
Security sub-layer definition ................................................................................................................. 353
16.1 General .......................................................................................................................................................... 353
16.1.1 Purpose ......................................................................................................................................................... 353
16.1.2 Security sub-layer description .............................................................................................................. 353
16.1.3 Security sub-layer access ........................................................................................................................ 354
16.1.4 General server response behaviour ................................................................................................... 356
16.2 SecuredDataTransmission (8416) service ......................................................................................... 358
16.2.1 Service description ................................................................................................................................... 358
16.2.2 Request message ........................................................................................................................................ 358
16.2.3 Positive response message for successful internal message ..................................................... 360
16.2.4 Supported negative response codes (NRC_) ..................................................................................... 362
16.2.5 Message flow example SecuredDataTransmission ....................................................................... 363
17
Non-volatile server memory programming process .................................................................... 366
17.1 General information ................................................................................................................................. 366
17.2 Detailed programming sequence ......................................................................................................... 370
17.2.1 Programming phase #1 - Download of application software and/or application
da ta ................................................................................................................................................................. 370
17.3 Server reprogramming requirements ............................................................................................... 379
17 .3.1 Requirements for servers to support programming .................................................................... 3 79
17.3.2 Software, data identification and fingerprints ............................................................................... 382
17.3.3 Server routine access ............................................................................................................................... 383
17.4 Non-volatile server memory programming message flow examples ..................................... 383
17.4.1 General information ................................................................................................................................. 383
17.4.2 Programming phase #1 - Pre-Programming step ....................................................................... 383
17.4.3 Programming phase #1 - Programming step ................................................................................ 384
17.4.4 Programming phase #1 - Post-Progra mming step ..................................................................... 389
Annex A (normative) Global parameter definitions .................................................................................. 390
Annex B (normative) Diagnostic and communication management functional unit data-
parameter definitions .............................................................................................................................. 400
Annex C (normative) Data transmission functional unit data-parameter definitions .................. 405
Annex D (normative) Stored data transmission functional unit data-parameter definitions .... 422
Annex E (normative) Input output control functional unit data-parameter definitions .............. 444
Annex F (normative) Routine functional unit data-parameter definitions ....................................... 445
ISO 14229-1:2020(E)
Annex G (normative) Upload and download functional unit data-parameter .................................. 447
Annex H (informative) Examples for addressAndLengthFormatldentifier parameter values ... 448
Annex I (normative) Security access state chart .......................................................................................... 450
Annex J (informative) Recommended implementation for multiple client environments .......... 458
Bibliography ............................................................................................................................................................... 464