1 Introduction and functional overview
2 Acronyms and Abbreviations
2.1 Typographical Conventions
3 Related documentation
3.1 Input documents & related standards and norms
3.2 Related specification
4 Constraints and assumptions
4.1 Limitations
4.2 Applicability to car domains
4.3 Applicability to emission-related environments (OBD)
5 Dependencies to other modules
5.1 File structure
6 Requirements Tracing
7 Functional specification
7.1 Error Classification
7.1.1 Development Errors
7.1.2 Runtime Errors
7.1.3 Transient Faults
7.1.4 Production Errors
7.1.5 Extended Production Errors
7.2 General design elements
7.2.1 Submodules within the Dcm module
7.2.2 Negative Response Code (NRC)
7.2.3 Non-volatile information
7.2.4 Types
7.2.4.1 Atomic types overview
7.2.4.2 Data array types overview
7.2.4.3 Data types constraints
7.2.4.4 Dcm_OpStatusType
7.2.4.5 Dcm_SesCtrlType
7.3 Diagnostic Session Layer (DSL)
7.3.1 Introduction
7.3.2 Use cases
7.3.3 Interaction with other modules
7.3.4 Functional description
7.3.4.1 Overview
7.3.4.2 Forward requests from the PduR module to the DSD submodule
7.3.4.2.1 Dcm_StartOfReception
7.3.4.2.2 Dcm_CopyRxData
7.3.4.2.3 Dcm_TpRxIndication
7.3.4.3 Concurrent ''TesterPresent'' (''keep alive logic'')
7.3.4.3.1 Dcm_CopyTxData
7.3.4.3.2 Dcm_TpTxConfirmation
7.3.4.4 Forward responses from the DSD submodule to the PduR module
7.3.4.5 Generic Connection Handling
7.3.4.6 Guarantee timing to tester by sending busy responses
7.3.4.7 Support of periodic transmission
7.3.4.8 Support of ROE transmission
7.3.4.8.1 ResponseOnEvent StateChar
7.3.4.8.1.1 Initializing Dcm (1)
7.3.4.8.1.2 Transition from 'ROE cleared' to 'ROE stopped' (2)
7.3.4.8.1.3 Transition from 'ROE stopped' to 'ROE cleared' (3)
7.3.4.8.1.4 Transition from 'ROE stopped' to 'ROE started' (4)
7.3.4.8.1.5 Transition from 'ROE started' to 'ROE stopped' (5)
7.3.4.8.1.6 Transition from 'ROE started' to 'ROE started' (6)
7.3.4.8.1.7 Transition from 'ROE started' to 'ROE cleared' (7)
7.3.4.8.1.8 Transition from 'ROE cleared' to 'ROE cleared' (8)
7.3.4.8.1.9 Transition from 'ROE cleared' to 'ROE started' (9)
7.3.4.8.1.10 Transition from 'ROE stopped' to 'ROE stopped' (10)
7.3.4.8.2 ROE sub-functions
7.3.4.8.3 EventWindowTime and StorageState
7.3.4.8.4 Pre-configuration of ResponseOnEvent
7.3.4.8.5 Handling of event-trigger
7.3.4.8.5.1 ROE event-trigger onDTCStatusChange (0x01)
7.3.4.8.5.2 ROE event-trigger onChangeOfDataIdentifier (0x03)
7.3.4.8.6 Trigger a ServiceToRespondTo
7.3.4.8.7 Send a ServiceToRespondTo
7.3.4.8.7.1 Roe transmission cycle
7.3.4.8.8 ResponseOnEvent in multiple client environments
7.3.4.9 Support of segmented response (paged-buffer)
7.3.4.10 Support of ResponsePending response triggered by the Application
7.3.4.11 Manage security level
7.3.4.11.1 Initialization sequence
7.3.4.11.2 AttemptCounter update
7.3.4.12 Manage session state
7.3.4.13 Keep track of active non-default sessions
7.3.4.14 Allow to modify timings
7.3.4.15 Handling of different diagnostic protocols
7.3.4.15.1 Different service tables
7.3.4.15.2 Prioritization of protocol
7.3.4.15.3 Preemption of protocol
7.3.4.15.4 Parallel OBD and UDS protocol processing
7.3.4.15.5 Detection of protocol start
7.3.4.15.6 Protocol stop
7.3.4.16 Manage resources
7.3.4.17 Communication Mode Handling
7.3.4.17.1 No Communication
7.3.4.17.2 Silent Communication
7.3.4.17.3 Full Communication
7.3.4.17.4 Diagnostic Activation State
7.4 Diagnostic Service Dispatcher (DSD)
7.4.1 Introduction
7.4.2 Use cases
7.4.2.1 Receive a request message and transmit a positive response message
7.4.2.2 Receive a request message and suppress a positive response
7.4.2.3 Receive a request message and suppress a negative response
7.4.2.4 Receive a request message and transmit a negative response message
7.4.2.5 Send a positive response message without corresponding request
7.4.2.6 Segmented Responses (paged-buffer)
7.4.3 Interaction of the DSD with other modules
7.4.3.1 Interaction of the DSD with the DSL main functionality
7.4.3.2 Interaction of the DSD with the DSP
7.4.4 Functional Description of the DSD
7.4.4.1 Support checking the diagnostic service identifier and adapting the diagnostic message
7.4.4.2 Handling of "suppressPosRspMsgIndicationBit"
7.4.4.3 Verification functionality
7.4.4.3.1 Verification of the Diagnostic Session
7.4.4.3.2 Verification of the Service Security Access levels
7.4.4.3.3 Verification of the Service mode dependencies
7.4.4.4 Check format and subfunction support
7.4.4.4.1 Verification of the Manufacturer Application environment/permission
7.4.4.4.2 Verification of the Supplier Application environment/permission
7.4.4.5 Distribution of diagnostic message to DSP submodule
7.4.4.6 Assemble positive or negative response
7.4.4.6.1 Positive Response
7.4.4.6.2 Negative Response
7.4.4.6.3 Suppression of response
7.4.4.7 Initiate transmission
7.5 Diagnostic Service Processing (DSP)
7.5.1 General
7.5.1.1 Check format and subfunction support
7.5.1.2 Assemble response
7.5.1.3 Negative Response Codes handling
7.5.1.4 Diagnostic mode declaration groups
7.5.1.5 Mode dependent request execution
7.5.1.6 Sender/Receiver Communication
7.5.1.7 Passing SwDataDefProps properties from DEXT file to the Dcm Service SW-C
7.5.1.7.1 DcmDspDiagnosticDataElementRef workflow
7.5.1.7.2 DcmDspAlternativeDataType.DcmApplicationDataType workflow
7.5.1.8 Asynchronous call behavior
7.5.2 UDS Services
7.5.2.1 General behavior using DEM interfaces
7.5.2.2 Service 0x10 - Diagnostic Session Control
7.5.2.3 Service 0x11 - ECUReset
7.5.2.4 Service 0x14 - Clear Diagnostic Information
7.5.2.5 Service 0x19 - Read DTC Information
7.5.2.5.1 Subfunctions 0x01, 0x07, 0x11 and 0x12
7.5.2.5.2 Subfunctions 0x02, 0x0A, 0x0F, 0x13, 0x15 and 0x17
7.5.2.5.3 Subfunction 0x08
7.5.2.5.4 Subfunction 0x09
7.5.2.5.5 Subfunctions 0x06/0x10/0x19
7.5.2.5.6 Subfunction 0x03
7.5.2.5.7 Subfunctions 0x04 and 0x18
7.5.2.5.8 Subfunction 0x05
7.5.2.5.9 Subfunctions 0x0B, 0x0C, 0x0D and 0x0E
7.5.2.5.10 Subfunction 0x14
7.5.2.5.11 Subfunction 0x42
7.5.2.5.12 Subfunction 0x55
7.5.2.6 Service 0x22 - ReadDataByIdentifier
7.5.2.6.1 Non-OBD DID
7.5.2.6.2 OBD DID
7.5.2.7 Service 0x24 - ReadScalingDataByIdentifier
7.5.2.8 Service 0x27 - SecurityAccess
7.5.2.9 Service 0x28 - CommunicationControl
7.5.2.10 Service 0x2A - ReadDataByPeriodicIdentifier
7.5.2.10.1 Scheduler PeriodicTransmission
7.5.2.11 Service 0x2C - DynamicallyDefineDataIdentifier
7.5.2.12 Service 0x2E - WriteDataByIdentifier
7.5.2.13 Service 0x2F - InputOutputControlByIdentifier
7.5.2.14 Service 0x31 - RoutineControl
7.5.2.15 Service 0x3E - Tester Present
7.5.2.16 Service 0x3D - WriteMemoryByAddress
7.5.2.17 Service 0x23 - ReadMemoryByAddress
7.5.2.18 Service 0x34 - RequestDownload
7.5.2.19 Service 0x35 - RequestUpload
7.5.2.20 Service 0x36 - TransferData
7.5.2.21 Service 0x37 - RequestTransferExit
7.5.2.22 Service 0x38 - RequestFileTransfer
7.5.2.23 Service 0x85 - ControlDTCSetting
7.5.2.24 Service 0x87 - LinkControl
7.5.3 OBD Services
7.5.3.1 Overview
7.5.3.2 General behavior
7.5.3.3 Service $01 - Request Current Powertrain Diagnostic Data
7.5.3.4 Service $02 - Request Power Train FreezeFrame Data
7.5.3.4.1 Service $02 - PID$02
7.5.3.4.2 Service $02 - availability PID
7.5.3.4.3 Service $02 - other PIDs
7.5.3.5 Service $03 $07 $0A - Obtaining DTCs
7.5.3.6 Service $04 - Clear/reset emission-related diagnostic information
7.5.3.7 Service $06 - Request On-Board Monitoring Test-results for Specific Monitored Systems
7.5.3.7.1 General requirements
7.5.3.7.2 Test results obtained via Dem interaction
7.5.3.8 Service $08 - Request Control of On-Board System, Test or Component
7.5.3.9 Service $09 - Request Vehicle Information
7.5.4 Interaction usecases
7.5.4.1 Jump to Bootloader
7.5.4.2 Jump due to ECUReset
7.5.4.3 Jump from Bootloader / ECUReset
7.5.4.4 Flags management
7.5.4.4.1 Jump to Bootloader
7.5.4.4.2 Jump from Bootloader
7.6 Error notification
7.7 Debugging
7.8 Synchronous and Asynchronous implementation
7.9 DID configuration
7.9.1 Individual DID
7.9.2 DID ranges
7.10 Startup behavior
8 API specification
8.1 Imported types
8.2 Type definitions
8.2.1 Dcm_StatusType
8.2.2 Dcm_CommunicationModeType
8.2.3 Dcm_ConfigType
8.2.4 Dcm_ReturnReadMemoryType
8.2.5 Dcm_ReturnWriteMemoryType
8.2.6 Dcm_EcuStartModeType
8.2.7 Dcm_ProgConditionsType
8.2.8 Dcm_MsgItemType
8.2.9 Dcm_MsgType
8.2.10 Dcm_MsgLenType
8.2.11 Dcm_MsgAddInfoType
8.2.12 Dcm_IdContextType
8.2.13 Dcm_MsgContextType
8.2.14 Dcm_ExtendedOpStatusType
8.3 Function definitions
8.3.1 Functions provided for other BSW components
8.3.1.1 Dcm_Init
8.3.1.2 Dcm_GetVersionInfo
8.3.1.3 Dcm_DemTriggerOnDTCStatus
8.3.1.4 Dcm_GetVin
8.3.2 Functions provided to BSW modules and to SW-Cs
8.3.2.1 Dcm_GetSecurityLevel
8.3.2.2 Dcm_GetSesCtrlType
8.3.2.3 Dcm_GetActiveProtocol
8.3.2.4 Dcm_ResetToDefaultSession
8.3.2.5 Dcm_TriggerOnEvent
8.3.2.6 Dcm_ SetActiveDiagnostic
8.4 Callback notifications
8.4.1 Dcm_StartOfReception
8.4.2 Dcm_CopyRxData
8.4.3 Dcm_TpRxIndication
8.4.4 Dcm_CopyTxData
8.4.5 Dcm_TpTxConfirmation
8.4.6 Dcm_TxConfirmation
8.4.7 Dcm_ComM_NoComModeEntered
8.4.8 Dcm_ComM_SilentComModeEntered
8.4.9 Dcm_ComM_FullComModeEntered
8.5 Callout Definitions
8.5.1 Dcm_ReadMemory
8.5.2 Dcm_WriteMemory
8.5.3 Dcm_SetProgConditions
8.5.4 Dcm_GetProgConditions
8.5.5 Dcm_ProcessRequestTransferExit
8.5.6 Dcm_ProcessRequestUpload
8.5.7 Dcm_ProcessRequestDownload
8.5.8 Dcm_ ProcessRequestFileTransfer
8.6 Scheduled functions
8.6.1 Dcm_MainFunction
8.7 Expected interfaces
8.7.1 Mandatory interfaces
8.7.2 Optional interfaces
8.7.3 Configurable interfaces
8.7.3.1 SecurityAccess
8.7.3.1.1 GetSeed
8.7.3.1.2 CompareKey
8.7.3.1.3 GetSecurityAttemptCounter
8.7.3.1.4 SetSecurityAttemptCounter
8.7.3.2 DataServices
8.7.3.2.1 ReadData
8.7.3.2.2 WriteData
8.7.3.2.3 ReadDataLength
8.7.3.2.4 ConditionCheckRead
8.7.3.2.5 GetScalingInformation
8.7.3.2.6 ReturnControlToECU
8.7.3.2.7 ResetToDefault
8.7.3.2.7.1 Synchronous interface
8.7.3.2.7.2 Asynchronous interface
8.7.3.2.8 FreezeCurrentState
8.7.3.2.8.1 Synchronous interface
8.7.3.2.8.2 Asynchronous interface
8.7.3.2.9 ShortTermAdjustment
8.7.3.2.9.1 Synchronous interface
8.7.3.2.9.2 Asynchronous interface
8.7.3.3 DataServices_DIDRange
8.7.3.3.1 IsDidAvailable
8.7.3.3.2 ReadDidData
8.7.3.3.3 WriteDidData
8.7.3.3.4 ReadDidRangeDataLength
8.7.3.4 InfoTypesServices
8.7.3.4.1 GetInfotypeValueData
8.7.3.5 RoutineServices
8.7.3.5.1 Xxx_Start Operation
8.7.3.5.2 Xxx_StartConfirmation Operation
8.7.3.5.3 Xxx_Stop Operation
8.7.3.5.4 Xxx_StopConfirmation Operation
8.7.3.5.5 Xxx_RequestResults Operation
8.7.3.5.6 Xxx_RequestResultsConfirmation Operation
8.7.3.6 RequestControlServices
8.7.3.6.1 RequestControl callout
8.7.3.7 CallbackDCMRequestServices
8.7.3.7.1 StartProtocol
8.7.3.7.2 StopProtocol
8.7.3.8 ServiceRequestNotification
8.7.3.8.1 Indication
8.7.3.8.2 Confirmation
8.7.3.9 ClearDTCCheckFnc
8.8 Dcm as Service-Component
8.8.1 Implementation Data Types
8.8.1.1 Dcm_OpStatusType
8.8.1.2 Dcm_ConfirmationStatusType
8.8.1.3 Dcm_SecLevelType
8.8.1.4 Dcm_SesCtrlType
8.8.1.5 Dcm_ProtocolType
8.8.1.6 Dcm_NegativeResponseCodeType
8.8.1.7 Dcm_DataArrayTypeUint8_{Data}Type
8.8.1.8 Dcm_DataArrayTypeUint16_{Data}Type
8.8.1.9 Dcm_DataArrayTypeUint32_{Data}Type
8.8.1.10 Dcm_DataArrayTypeSint8_{Data}Type
8.8.1.11 Dcm_DataArrayTypeSint16_{Data}Type
8.8.1.12 Dcm_DataArrayTypeSint32_{Data}Type
8.8.1.13 Dcm_RangeArray_{Range}Type
8.8.1.14 Dcm_InfoTypeServicesArray_{VehInfoData}Type
8.8.1.15 Dcm_RequestControlServicesInArray_{Tid}Type
8.8.1.16 Dcm_RequestControlServicesOutArray_{Tid}Type
8.8.1.17 Dcm_ScalingInfoArray_{Data}Type
8.8.1.18 Dcm_RequestDataOut_{Routine}_{Signal}PrimitivType
8.8.1.19 Dcm_RequestDataOut_{Routine}_{Signal}Type
8.8.1.20 Dcm_RequestDataOut_{Routine}_{Signal}ArrayType
8.8.1.21 Dcm_RequestFlexibleOutArrayData_{Routine}_{Signal}Type
8.8.1.22 Dcm_StartDataIn_{Routine}_{Signal}PrimitivType
8.8.1.23 Dcm_StartDataIn_{Routine}_{Signal}Type
8.8.1.24 Dcm_StartDataIn_{Routine}_{Signal}ArrayType
8.8.1.25 Dcm_StartDataOut_{Routine}_{Signal}PrimitivType
8.8.1.26 Dcm_StartDataOut_{Routine}_{Signal}Type
8.8.1.27 Dcm_StartDataOut_{Routine}_{Signal}ArrayType
8.8.1.28 Dcm_StartFlexibleInArrayData_{Routine}_{Signal}Type
8.8.1.29 Dcm_StartFlexibleOutArrayData_{Routine}_{Signal}Type
8.8.1.30 Dcm_StopDataIn_{Routine}_{Signal}PrimitivType
8.8.1.31 Dcm_StopDataIn_{Routine}_{Signal}Type
8.8.1.32 Dcm_StopDataIn_{Routine}_{Signal}ArrayType
8.8.1.33 Dcm_StopDataOut_{Routine}_{Signal}PrimitivType
8.8.1.34 Dcm_StopDataOut_{Routine}_{Signal}Type
8.8.1.35 Dcm_StopDataOut_{Routine}_{Signal}ArrayType
8.8.1.36 Dcm_StopFlexibleInArrayData_{Routine}_{Signal}Type
8.8.1.37 Dcm_StopFlexibleOutArrayData_{Routine}_{Signal}Type
8.8.1.38 Dcm_KeyArray_{SecurityLevel}Type
8.8.1.39 Dcm_SeedArray_{SecurityLevel}Type
8.8.1.40 Dcm_SecurityAccessDataRecordArray_{SecurityLevel}Type
8.8.1.41 Dcm_RequestDataArrayType
8.8.1.42 Dcm_ControlMask_{Data}Type
8.8.1.43 ControlMask types
8.8.1.44 Dcm_inputOutputControlParameterType
8.8.1.45 Dcm_IOOperationRequest_{Data}Type
8.8.1.46 Dcm_IOOperationResponseType
8.8.1.47 Dcm_DidSupportedType
8.8.2 Sender-Receiver-Interfaces
8.8.2.1 DataServices_{Data}
8.8.2.2 IOControlRequest_{Data}
8.8.2.3 IOControlResponse
8.8.3 Client-Server-Interfaces
8.8.3.1 SecurityAccess_{SecurityLevel}
8.8.3.2 DataServices_{Data}
8.8.3.2.1 ReadData
8.8.3.2.2 WriteData
8.8.3.2.3 ReadDataLength
8.8.3.2.4 ConditionCheckRead
8.8.3.2.5 GetScalingInformation
8.8.3.2.6 ReturnControlToEcu
8.8.3.2.7 ResetToDefault
8.8.3.2.8 FreezeCurrentState
8.8.3.2.9 ShortTermAdjustment
8.8.3.3 DataServices_DIDRange_{Range}
8.8.3.4 InfotypeServices_{VehInfoData}
8.8.3.5 RoutineServices_{RoutineName}
8.8.3.6 RequestControlServices_{Tid}
8.8.3.7 CallbackDCMRequestServices
8.8.3.8 ServiceRequestNotification
8.8.3.9 DCMServices
8.8.3.10 DCM_Roe
8.8.4 Ports
8.8.4.1 Dcm_CallbackDCMRequestServices_{Name}
8.8.4.2 DataServices_DIDRange_{Range}
8.8.4.3 DataServices_{Data}
8.8.4.4 IOControlRequest_{Data}
8.8.4.5 IOControlResponse_{Data}
8.8.4.6 DCM_Roe_{RoeName}
8.8.4.7 DCMServices
8.8.4.8 InfotypeServices_{VehInfoData}
8.8.4.9 RequestControlServices_{Tid}
8.8.4.10 ServiceRequestManufacturerNotification_{Name}
8.8.4.11 ServiceRequestSupplierNotification_{Name}
8.8.4.12 RoutineServices_{RoutineName}
8.8.4.13 SecurityAccess_{SecurityLevel}
8.8.4.14 Dcm_DiagnosticSessionControlModeSwitchInterface
8.8.4.15 Dcm_EcuResetModeSwitchInterface
8.8.4.16 Dcm_ModeRapidPowerShutDownModeSwitchInterface
8.8.4.17 Dcm_CommunicationControlModeSwitchInterface_{ComMChannelName}
8.8.4.18 Dcm_ControlDTCSettingModeSwitchInterface
8.8.4.19 Dcm_ResponseOnEventModeSwitchInterface_{RoeEventID}
8.8.4.20 Dcm_SecurityAccessModeSwitchInterface
8.8.5 ModeDeclarationGroups
8.8.5.1 DcmDiagnosticSessionControl
8.8.5.2 DcmEcuReset
8.8.5.3 DcmModeRapidPowerShutDown
8.8.5.4 DcmCommunicationControl
8.8.5.5 DcmControlDTCSetting
8.8.5.6 DcmResponseOnEvent
8.8.5.7 DcmSecurityAccess
8.8.6 Mode-Switch-Interfaces
8.8.6.1 Dcm_DiagnosticSessionControlModeSwitchInterface
8.8.6.2 Dcm_EcuResetModeSwitchInterface
8.8.6.3 Dcm_ModeRapidPowerShutDownModeSwitchInterface
8.8.6.4 Dcm_CommunicationControlModeSwitchInterface
8.8.6.5 Dcm_ControlDTCSettingModeSwitchInterface
8.8.6.6 Dcm_ResponseOnEventModeSwitchInterface
8.8.6.7 Dcm_SecurityAccessModeSwitchInterface
8.9 External diagnostic service processing
8.9.1 _
8.9.2 __
8.10 Internal interfaces (not normative)
8.10.1 DslInternal_SetSecurityLevel
8.10.2 DslInternal_SetSesCtrlType
8.10.3 DspInternal_DcmConfirmation
8.10.4 DslInternal_ResponseOnOneEvent
8.10.5 DslInternal_ResponseOnOneDataByPeriodicId
8.10.6 DsdInternal_StartPagedProcessing
8.10.7 DspInternal_CancelPagedBufferProcessing
8.10.8 DsdInternal_ProcessPage
9 Sequence diagrams
9.1 Overview
9.2 DSL (Diagnostic Session Layer)
9.2.1 Start Protocol
9.2.2 Process Busy behavior
9.2.3 Update Diagnostic Session Control when timeout occurs
9.2.4 Process single response of ReadDataByPeriodicIdentifier
9.2.5 Process single event-triggered response of ResponseOnEvent
9.2.6 Process concurrent requests
9.2.7 Interface to ComManager
9.2.7.1 Handling in Default Session
9.2.7.2 Handling in Non-Default Session
9.2.7.3 Session transitions
9.2.7.4 Communication States
9.2.8 Receive request message and transmit negative response message
9.2.9 Process Service Request with paged-buffer
9.2.10 Process copy data in reception
9.2.11 Process copy data in transmission
9.3 DSP (Diagnostic Service Processing)
9.3.1 Interface DSP - DEM (service 0x19, 0x14, 0x85)
9.3.2 Interface special services
9.3.2.1 Process Diagnostic Session Control
9.3.2.2 Process Tester Present
9.3.2.3 Process Security Access
9.3.2.4 Process ResponseOnEvent OnDtcChange
9.3.2.5 Process ResponseOnEvent OnChangeOfDataIdentifier
9.3.2.6 Process Jump to Bootloader
10 Configuration specification
10.1 How to read this chapter
10.2 Configuration constraints
10.3 Containers and configuration parameters
10.3.1 Dcm
10.3.2 DcmConfigSet
10.3.2.1 DcmPageBufferCfg
10.3.2.2 DcmProcessingConditions
10.3.3 DcmDsd
10.3.3.1 DcmDsd
10.3.3.2 DcmDsdService
10.3.3.3 DcmDsdServiceRequestManufacturerNotification
10.3.3.4 DcmDsdServiceRequestSupplierNotification
10.3.3.5 DcmDsdServiceTable
10.3.3.6 DcmDsdSubService
10.3.4 DcmDsl
10.3.4.1 DcmDsl
10.3.4.2 DcmDslBuffer
10.3.4.3 DcmDslCallbackDCMRequestService
10.3.4.4 DcmDslDiagResp
10.3.4.5 DcmDslProtocol
10.3.4.6 DcmDslProtocolRow
10.3.4.7 DcmDslConnection
10.3.4.8 DcmDslMainConnection
10.3.4.9 DcmDslProtocolRx
10.3.4.10 DcmDslProtocolTx
10.3.4.11 DcmDslPeriodicTransmission
10.3.4.12 DcmDslPeriodicConnection
10.3.4.13 DcmDslResponseOnEvent
10.3.5 DcmDsp
10.3.5.1 Communication Control
10.3.5.1.1 DcmDspComControl
10.3.5.1.2 DcmDspComControlAllChannel
10.3.5.1.3 DcmDspComControlSetting
10.3.5.1.4 DcmDspComControlSpecificChannel
10.3.5.1.5 DcmDspComControlSubNode
10.3.5.2 DcmDspCommonAuthorization
10.3.5.3 DIDs
10.3.5.3.1 DcmDspDid
10.3.5.3.2 DcmDspDidInfo
10.3.5.3.3 DcmDspDidRead
10.3.5.3.4 DcmDspDidSignal
10.3.5.3.5 DcmDspDidSupportInfo
10.3.5.3.6 DcmDspDidRange
10.3.5.3.7 DcmDspDidWrite
10.3.5.4 DcmDspControlDTCSetting
10.3.5.5 Data elements
10.3.5.5.1 DcmDspData
10.3.5.5.2 DcmDspDiagnosisScaling
10.3.5.5.3 DcmDspArgumentScaling
10.3.5.5.4 DcmDspAlternativeArgumentData
10.3.5.5.5 DcmDspTextTableMapping
10.3.5.5.6 DcmDspAlternativeDataInterface
10.3.5.5.7 DcmDspAlternativeDataType
10.3.5.5.8 DcmDspAlternativeDiagnosticDataElement
10.3.5.5.9 DcmDataElementInstance
10.3.5.5.10 DcmSubElementInDataElementInstance
10.3.5.5.11 DcmSubElementInImplDataElementInstance
10.3.5.5.12 DcmDspDidDataSupportInfo
10.3.5.5.13 DcmDspDataInfo
10.3.5.6 DcmDspDidControl
10.3.5.7 DcmDspDidControlEnableMask
10.3.5.8 Ecu Reset
10.3.5.8.1 DcmDspEcuReset
10.3.5.8.2 DcmDspEcuResetRow
10.3.5.9 Memory
10.3.5.9.1 DcmDspMemory
10.3.5.9.2 DcmDspAddressAndLengthFormatIdentifier
10.3.5.9.3 DcmDspMemoryIdInfo
10.3.5.9.4 DcmDspReadMemoryRangeByLabelInfo
10.3.5.9.5 DcmDspReadMemoryRangeInfo
10.3.5.9.6 DcmDspWriteMemoryRangeByLabelInfo
10.3.5.9.7 DcmDspWriteMemoryRangeInfo
10.3.5.10 PIDs
10.3.5.10.1 DcmDspPid
10.3.5.10.2 DcmDspPidSupportInfo
10.3.5.10.3 DcmDspPidData
10.3.5.10.4 DcmDspPidService01
10.3.5.10.5 DcmDspPidService02
10.3.5.10.6 DcmDspPidDataSupportInfo
10.3.5.11 DcmDspRequestControl
10.3.5.12 DcmDspRequestFileTransfer
10.3.5.13 Response on Event
10.3.5.13.1 DcmDspRoe
10.3.5.13.2 DcmDspRoeEvent
10.3.5.13.3 DcmDspRoeEventProperties
10.3.5.13.4 DcmDspRoeOnChangeOfDataIdentifier
10.3.5.13.5 DcmDspRoeOnDTCStatusChange
10.3.5.13.6 DcmDspRoeEventWindowTime
10.3.5.14 Routines
10.3.5.14.1 DcmDspRoutine
10.3.5.14.2 DcmDspRequestRoutineResults
10.3.5.14.3 DcmDspRequestRoutineResultsOut
10.3.5.14.4 DcmDspRequestRoutineResultsOutSignal
10.3.5.14.5 DcmDspStartRoutine
10.3.5.14.6 DcmDspStartRoutineIn
10.3.5.14.7 DcmDspStartRoutineInSignal
10.3.5.14.8 DcmDspStartRoutineOut
10.3.5.14.9 DcmDspStartRoutineOutSignal
10.3.5.14.10 DcmDspStopRoutine
10.3.5.14.11 DcmDspStopRoutineIn
10.3.5.14.12 DcmDspStopRoutineInSignal
10.3.5.14.13 DcmDspStopRoutineOut
10.3.5.14.14 DcmDspStopRoutineOutSignal
10.3.5.15 Session Security and Modes
10.3.5.15.1 DcmDspSecurity
10.3.5.15.2 DcmDspSecurityRow
10.3.5.15.3 DcmDspSession
10.3.5.15.4 DcmDspSessionRow
10.3.5.15.5 DcmModeCondition
10.3.5.15.6 DcmModeRule
10.3.5.16 DcmDspVehInfo
10.3.5.17 DcmDspVehInfoData
10.3.5.18 DcmDspPeriodicTransmission
10.3.5.19 DcmDspClearDTC
10.3.6 DcmGeneral
10.4 Protocol Configuration Example
10.5 Published Information
A Not applicable requirements