Professional Documents
Culture Documents
Server
function that is part of an electronic control unit and that provides the
diagnostic services
Tester
system that controls functions such as test, inspection, monitoring or
diagnosis of an on-vehicle electronic control unit and which may be
dedicated to a specific type of operator (e.g. a scan tool dedicated to
garage mechanics or a test tool dedicated to assembly plant agents)
Diagnostic data
data that is located in the memory of an electronic control unit which may
be inspected and/or possibly modified by the tester (diagnostic data
includes analogue inputs and outputs, digital inputs and outputs,
intermediate values and various status information)
Why DCM?
Diagnostics Communication
Manager
The functionality of Dcm module is used by external
diagnostic tools e.g. in the development, manufacturing or
service
Diagnostic services include functions such as test,
inspection, monitoring or diagnosis of on-board vehicle
servers (ECU).
The information transferred might consist of ECU fault
information,
parameter
reporting,
control
routines,
calibration values and other types of data used in performing
ECU diagnostics.
The Dcm module is network independent. All the network
specific functionality (the Specifics of networks like CAN, LIN,
FlexRay or MOST) is handled outside of the Dcm.
The PDU Router (PduR) module provides a networkindependent interface to the DCM module.
The Dcm requests data or functional state from SW-Cs via
port interfaces or from other BSW modules through direct
function calls if any of the data elements or functional states
DiagnosticSessionControl (0x10)
ECUReset (0x11)
SecurityAccess (0x27)
CommunicationControl(0x28)
TesterPresent (0x3E)
ControlDTCSetting (0x85)
ResponseOnEvent (0x86)
LinkControl (0x87)
ReadDataByIdentifier (0x22)
ReadMemoryByAddress (0x23)
ReadScalingDataByIdentifier (0x24)
ReadDataByPeriodicIdentifier (0x2A)
DynamicallyDefineDataIdentifier (0x2C)
WriteDataByIdentifier (0x2E)
ClearDiagnosticInformation (0x14)
ReadDTCInformation (0x19)
InputOutputControlByIdentifier (0x2F)
RoutineControl (0x31)
RequestDownload (0x34 hex)
RequestUpload (0x35)
TransferData (0x36 hex)
RequestTransferExit (0x37)
Debugging Module
To support a user (system integrator or BSW developer) during
development, in case the basic software does not behave as
expected
Collects as much information as possible about the runtime
behavior of the systems without halting the processor
Data is transmitted to an external host system via communication,
to enable the user to identify the source of a problem
An internal buffer is provided to decouple data collection from
Main tasks of the Debugging Module are to
data transmission
Collect and store data for tracing purposes
Collect and immediately transmit data to host
Modify data in target memory on host request
Transmit stored data to host
Accept commands to change the behavior of the Debugging
Module
Diagnostics Event
A Diagnostic Event defines the atomic unit that can be handled
by the Dem module
The status of a Diagnostic Event represents the result of a
monitor
The Dem receives the result of a monitor from SW-C via the RTE or
other BSW modules
The Dem module uses the EventId to manage the status of the
Diagnostic Event of a system and performs the required actions
for individual test results
Diagostic monitor
Diagostic monitor
A diagnostic monitor is a routine entity determining the proper
functionality of a component
The monitoring function identifies a specific fault type (e.g.
short to ground, open load, etc.) for a monitoring path
A monitoring path represents the physical system or a circuit,
that is being monitored (e.g. sensor input). Each monitoring
path is associated to exactly one diagnostic event.
If the monitor debounces on its own, the reporting API is called
only after a qualified result (passed or failed) is available
If the monitor uses Dem-internal debouncing mechanism, the
reporting API is called whenever the code with the functional
check is executed
OBD-relevant DTCs
DTC groups
The following DTC groups are provided:
emission-related DTC group (optional, fixed value =
0x000000)
powertrain DTC group (optional, configurable value)
chassis DTC group (optional, configurable value)
body DTC group (optional, configurable value)
network communication DTC group (optional, configurable
value)
further user-defined DTC groups (optional, configurable
value)
all DTCs DTC group (mandatory, fixed value = 0xFFFFFF)