Version 2.0.3 Preliminary Documentation – May be Subject to Change 15-36
3. DIAGNOSTIC MESSAGES
Each input channel could be configured to send diagnostic messages to the network if the input
goes out of range, as described below.
If the Input Sensor Type setpoint is set to either 16-bit Counter or Digital, diagnostics are not
permitted for that channel. Otherwise, whether or not faults will be detected for an input channel is
dependent on the settings of the “Minimum Error” and “Maximum Error” setpoints.
If these are set
to the limits of the range (i.e. 0V or 5V), then fault detection is not possible.
In this case, even
if the “Generate Diagnostic Messages” setpoint is true, a DTC will never be created.
When sending an “Active Diagnostic Trouble Code” (DM1) or a “Previously Active Diagnostic
Trouble Codes” (DM2) message, the controller will use the appropriate Diagnostic Trouble Code
(DTC). As defined by the standard, this is a combination of the Suspect Parameter Number (SPN),
the Failure Mode Indicator (FMI), Occurrence Count (OC) and the SPN Conversion Method (CM).
The CM used by the Axiomatic controller is the recommend setting of 0. The SPN is a configurable
setpoint, as described in section
4.8
. Note, however, if the SPN is left at the default value of zero, a
DTC will never be created even if the “Generate Diagnostic Messages” setpoint is true. (An SPN=0
is a violation of the standard) Each input channel will be associated with the appropriate FMIs, as
described in sections
3.1
. The OC for any DTC will be stored in a non-volatile diagnostic log, as
described in section
3.2
.
If a previously inactive DTC becomes active, a DM1 will be sent immediately to reflect this. While
there are any active DTCs in the controller, it will send the DM1 every second as per the standard.
As soon as the last active DTC goes inactive, it will send a DM1 indicating that there are no more
active DTCs, after which it will stop sending the DM1.
If there is more than one active DTC at any given time, the regular DM1 message will be sent
using a multipacket Broadcast Announce Message (BAM). If the controller receives a request for a
DM1 while this is true, it will send the multipacket message to the Requester Address using the
Transport Protocol (TP).
Previously active DTCs (a non-zero OC) are available upon request for a DM2 message. If there is
more than one previously active DTC, the multipacket DM2 will be sent to the Requester Address
using the Transport Protocol (TP).
See section
4.8
for a complete description of the J1939 Diagnostic setpoints and how changing
them will affect if and how Diagnostic Messages (DM) will be sent to the J1939 bus.