AXIOMATIC AX030200 User manual

USER MANUAL UMAX030200
16 Analog I/O, SAE J1939
USER MANUAL
P/N: AX030200

Version 2.0.3 Preliminary Documentation – May be Subject to Change ii
VERSION HISTORY
Version Date Author Modifications
1.0.0 October 10, 2006 Anna Murray Initial Draft
1.2.0 November 14, 2006 Anna Murray Added "Command Timeout" feature
Updated EA Screen Captures
UM version stepped to 1.2.0 to match other ECUs
1.2.1 November 21, 2006 Anna Murray Added ECU Address setpoint to miscellaneous group
1.3.0 August 15, 2007 Anna Murray Added low frequency support description (s/w
V4.1.0+) Added CAN termination resistor information
2.0.0 July 22, 2008 Anna Murray Removed Fault Setpoint references
Updated screen captures
2.0.1 March 10, 2009 Manraj S. Pannu Dimensional drawing updated. Registered
trademark (®) added to Electronic Assistant.
2.0.2 January 18, 2011 Amanda Wilkins Added Technical Specifications
2.0.3 May 23, 2012 Amanda Wilkins Updated Dimensional Drawing with current
dimensions
ACCRONYMS
ACK Positive Acknowledgement
AIN Analog Input
CFB Current Feedback
DM Diagnostic Message (from SAE J1939 standard)
DOUT Digital Output
DTC Diagnostic Trouble Code
EA Axiomatic Electronic Assistant®, p/n AX070502 (A Service Tool for Axiomatic ECUs)
ECU Electronic Control Unit (from SAE J1939 standard)
FIN Frequency Input
NAK Negative Acknowledgement
PDU1 A format for messages that are to be sent to a destination address,
either specific or global
PDU2 A format used to send information that has been labeled using the Group Extension
technique, and does not contain a destination address.
PGN Parameter Group Number (from SAE J1939 standard)
PropB Message that uses a Proprietary B PGN
PWM Pulse Width Modulation
RPM Rotations per Minute
SPN Suspect Parameter Number (from SAE J1939 standard)
%dc Percent Duty Cycle (measured from a PWM input)

Version 2.0.3 Preliminary Documentation – May be Subject to Change iii
TABLE OF CONTENTS
1. GENERAL …………………………………………………………………………………………………..………………. 4
1.1. References………………………………………………………………………………………………………….. 4
1.2. Description of ECU………………………………………………………………………………………………… 5
1.3. Description of Analog Inputs……………………………………………………………………………………… 5
1.4. Description of Analog Outputs……………………………………………………………………………………. 7
1.5. Introduction to SAE J1939 Features…...………………………………………………………………………... 10
1.6. Dimensions and Pinout……………………………………………………………………………………………. 11
2. AXIOMATIC PROPRIETARY B MESSAGES...…………………………………………………………….…………... 12
2.1. Single Channel Messages………………………………………………………………………………………… 12
2.2. Multiple Channel Messages………………………………………………………………………………………. 14
3. DIAGNOSTIC MESSAGES……………………………………………………………………………………………….. 15
3.1. Input FMIs………………………………………………………………………………………………………….. 16
3.2. Diagnostic Log……………………………………………………………………………………………………… 17
3.3. Clearing Active DTCs……………………………………………………………………………………………… 17
4. ECU SETPOINTS…………………………………………………………………………………………………………… 18
4.1. Input Measurement Setpoints……………………………………………………………………………………. 18
4.2. Input Profile Setpoints...…………………………………………………………………………………………… 20
4.3. J1939 Transmit Message (Input) Setpoints…………………………………………………………………….. 20
4.4. Output Control Setpoints………………………………………………………………………………………….. 22
4.5. Output Profile Setpoints…………………………………………………………………………………………… 22
4.6. J1939 Command Message (Output) Setpoints………………………………………………………………… 23
4.7. J1939 Feedback Message (Output) Setpoints…………………………………………………………………. 24
4.8. Diagnostic Setpoints………………………………………………………………………………………………. 25
4.9. Miscellaneous Setpoints…………………………………………………………………………………………... 27
5. USING ECU WITH AXIOMATIC ELECTRONIC ASSISTANT
®
……………………………………………………… 28
5.1. Installing the Electronic Assistant
®
……………………………………………………………………………… 28
5.2. Screen Captures…………………………………………………………………………………………………… 28
APPENDIX A – Technical Specifications …………………………………………………………………………………….. 32
LIST OF FIGURES
1. Analog Output Single Profile……………………………………………………………………………………………….. 8
2. Analog Output Dual Profile A………………………………………………………………………………………………. 9
3. Analog Output Dual Profile B………………………………………………………………………………………………. 9
4. Dimensions and Pinout ………….………………………………………………………………………………………… 11

Version 2.0.3 Preliminary Documentation – May be Subject to Change 4-36
1. GENERAL
1.1. References
J1939 Recommended Practice for a Serial Control and Communications
Vehicle Network, SAE, January 2005
J1939/21 Data Link Layer, SAE, April 2001
J1939/71 Vehicle Application Layer, SAE, December 2004
J1939/73 Application Layer-Diagnostics, SAE, March 2004
J1939/81 Network Management, SAE, May 2003
TDAX030200 Technical Datasheet, 16 Analog I/O, Axiomatic Technologies 2006
UMAX07050x User Manual, Electronic Assistant®and USB-CAN, Axiomatic
Technologies, 2006
NOTE: In order to use the CAN bus, termination resistors are required as per the
standard CAN 2.0B. Ensure that there are 120Ω, 0.25W minimum, metal film (or
similar) resistors on either end of the network. They are to be placed between
the CAN_H and CAN_L terminals, with all ECUs on the network between them.

Version 2.0.3 Preliminary Documentation – May be Subject to Change 5-36
1.2. Description of ECU
The 16 Analog I/O electronic control unit (ECU) is a device intended to provide control of up to
eight analog signal level outputs over a J1939 network. Each output channel could be
independently configured to be either a –5V to 5V, 0 to 5V, -10V to 10V, 0 to 10V, 0 to 20mA or 4
to 20mA output. Each output has associated with it an AGND reference pin.
The ECU also has eight analog inputs which can be independently configured to accept a 0 to 5V,
0 to10V, 0(4)-20mA, PWM, Frequency/RPM, 16-bit Counter, or an active high digital input. Each
input has associated with it an Analog Ground (AGND) reference pin, and a +5V or 20mA
reference pin. Inputs can be configured to periodically send the measured input data to a J1939
CAN network.
As an alternative to being controlled by a message received from the CAN bus, an output could be
configured to use any of the on board inputs as either a control signal or an enable signal.
For more information about the I/O specifications, refer to Technical Datasheet TDAX030200.
1.3. Description of Analog Inputs
Each analog input can be configured for any one of the following options, and the properties and
behavior of the input in each mode is described below. Unless noted otherwise, the reference pin
associated with each input channel is set to +5V. See section 4.1 for more information.
Input Disabled: The input is not used, and no CAN messages associated with this channel will
be sent to the network.
0 to 5 Volt: The input is configured to accept a voltage input in the range of 0 to 5V.
Signals above 5V will be rectified to 5V. The ECU will interpret the offset in
volts and the resolution setpoint as V/bit, when sending the message. Error
detection setpoints will be interpreted in volts.
0 to 10 Volt: The input is configured to accept a voltage input in the range of 0 to 10V.
Signals above 10V will be rectified to 10V.The ECU will interpret the offset in
volts and the resolution setpoint as V/bit, when sending the message. Error
detection setpoints will be interpreted in volts.
0(4) to 20 Milliamp: The input is configured to accept a current input in the range of 0 to 20 mA.
Signals above 20mA will be rectified to 20mA.The ECU will interpret the offset
in milliamps and the resolution setpoint as mA/bit, when sending the message.
Error detection setpoints will be interpreted in milliamps. In this mode, the
reference pin associate with the input channel will source a constant 20mA.
PWM Duty Cycle: The input is configured to measure the duty cycle of a pulse width modulated
(PWM) signal in the range of 0 to 100%dc. The ECU will interpret the offset in
percent duty cycle (%dc) and the resolution setpoint as %dc/bit, when sending
the message. Error detection setpoints will be interpreted in %dc.

Version 2.0.3 Preliminary Documentation – May be Subject to Change 6-36
Frequency/RPM: The input is configured to count the number of pulse that occur over the period
of the Measuring Window setpoint, and calculate the frequency of the pulses.
If the Pulse per Revolution setpoint is zero, the ECU will interpret the offset in
hertz and the resolution setpoint as Hz/bit, when sending the message. Error
detection setpoints will be interpreted in hertz. If the Pulse per Revolution
setpoint is non-zero the frequency will be converted into an RPM input. The
ECU will interpret the offset in rotations per minute (RPM) and the resolution
setpoint as RPM/bit, when sending the message. Error detection setpoints will
be interpreted in RPM.
NOTE: The difference between Frequency and Counter mode is that the
Frequency mode measures the number of pulses that occur in the Measuring
Window period and calculates frequency, while the counter gives the period of
time (in milliseconds) it takes for the number of pulses in the Measuring Window
to be read at the input.
NOTE: If the Input Maximum setpoint is set for a low frequency (<=50Hz), the
controller will use a different technique to measure the frequency. Instead of
measuring the pulses in the Measuring Window (this parameter is ignored) it will
measure the time between rising edges of the signal. If more than 10 seconds
pass without a transition, the input will be read as zero. The frequency range in
this mode is 0.5-50Hz, with up to 2 decimal places of resolution.
16-bit Counter: The input is configured to count pulses on the input until the value in the
Measuring Window setpoint is reached. While the counter is active, a timer
with a 1ms resolution is running in the background. When the count has been
reached, the value in the 1ms timer is captured and updated to the input
feedback variable. The timer is reset until the count value once again reaches
the Measuring Window. Input and error detection setpoints are not used, since
error detection is not possible in this mode, and a counter input cannot be
used to control an output.
WARNING: If set to be a 16-bit counter, the input can no longer be used as
either a control signal or an enable input to any of the outputs on the ECU.
Digital (High): The input is configured to read the state of an active high digital input. (Switch
is connected to a +V signal when ON.) The ECU will interpret the offset as a
state (OFF=0 or ON=1) and the resolution setpoint as state/bit, when sending
the message. Error detection setpoints are not used, since error detection is
not possible in this mode.

Version 2.0.3 Preliminary Documentation – May be Subject to Change 7-36
1.4. Description of Analog Outputs
Each analog output can be configured for one of the following options, and the properties and
behavior of the output in each mode is described below. See section 4.4 for more information.
0 to 5 Volt: The output is configured to drive a voltage output in the range of 0V to 5V. If
feedback messages are used to send the output value to the bus, then the
message will be sent with a resolution of 1mV/bit, and a 0mV offset.
-5 to 5 Volt: The output is configured to drive a voltage output in the range of –5V to 5V. If
feedback messages are used to send the output value to the bus, then the
message will be sent with a resolution of 1mV/bit, and a -5000mV offset.
0 to 10 Volt: The output is configured to drive a voltage output in the range of 0V to 10V. If
feedback messages are used to send the output value to the bus, then the
message will be sent with a resolution of 1mV/bit, and a 0mV offset.
-10 to 10 Volt: The output is configured to drive a voltage output in the range of –10V to 10V.
If feedback messages are used to send the output value to the bus, then the
message will be sent with a resolution of 1mV/bit, and a -10000mV offset.
0(4) to 20 Milliamp: The output is configured to source a current in the range of 0mA to 20mA. If
feedback messages are used to send the output value to the bus, then the
message will be sent with a resolution of 1uA/bit, and a 0uA offset.

Version 2.0.3 Preliminary Documentation – May be Subject to Change 8-36
For each output type, if the control signal is one of the inputs on the board, then there are up to six
output profiles that can be selected to determine how the output will react to a change at the input.
See the graphs below for a description of the profiles. See sections 4.2 and 4.5 for a description of
the profile setpoints.
WARNING: If the control input is set to a Digital type, the output will simply jump
to the maximum setpoint when the input is ON, and jump to the minimum
setpoint when the output is OFF.
NOTE: For outputs that are controlled using a J1939 Command Message, only the
"Single Profile" responses will be used (single or dual slope)
SINGLE PROFILE
Maximum
I [mA]
INPUT
0
Error Minimum
ERROR MODE
ERROR MODE
Breakpoint
Minimum
Minimum Breakpoint Minimum Maximum
Error Maximum
Single Slope
Dual Slope
Either, with Error Checking
Either, no Error Checking
Figure 1 – Analog Output Single Profile

Version 2.0.3 Preliminary Documentation – May be Subject to Change 9-36
DUAL PROFILE A
Maximum
I [mA]
INPUT
ERROR MODE
Breakpoint
Minimum
Deadband Maximum Breakpoint Maximum Maximum
Error Maximum
Single Slope
Dual Slope
Either, with Error Checking
Either, no Error Checking
Figure 2 – Analog Output Dual Profile A
DUAL PROFILE B
Maximum
I [mA]
INPUT
0
Error Minimum
ERROR MODE
Breakpoint
Minimum
Minimum Breakpoint Minimum Deadband Minimum
Single Slope
Dual Slope
Either, with Error Checking
Either, no Error Checking
Figure 3 – Analog Output Dual Profile B

Version 2.0.3 Preliminary Documentation – May be Subject to Change 10-36
1.5. Introduction to SAE J1939 Features
The software was designed to provide flexibility to the user with respect to messages sent to and
from the ECU by providing:
•Configurable ECU Instance in the NAME (to allow multiple ECUs on the same network)
•Configurable Input Parameters
•Configurable Output Parameters
•Configurable PGN and Data Parameters
•Configurable Diagnostic Messaging Parameters, as required
•Diagnostic Log, maintained in non-volatile memory
Note: Configurable parameters are also called setpoints
This document assumes the reader is familiar with the SAE J1939 standard.
Terminology from the standard is used, but is not described in this document.
The ECU is compliant with the standard SAE J1939, and supports the following PGNs from the
standard.
From J1939-21 - Data Link Layer
•Request 59904 ($00EA00)
•Acknowledgment 59392 ($00E800)
•Transport Protocol – Connection Management 60416 ($00EC00)
•Transport Protocol – Data Transfer Message 60160 ($00EB00)
•Proprietary B 65280 ($00FF00) to
65535 ($00FFFF)
Note 1: the user could also configure an input channel to send messages to another node using the Proprietary A
PGN, 61184 ($00EF00)
Note 2: See Section 2, “Axiomatic Proprietary B Messages,” for the description of how data is sent when using a
Proprietary B PGN
From J1939-73 - Diagnostics
•DM1 - Active Diagnostic Trouble Codes 65226 ($00FECA)
•DM2 – Previously Active Diagnostic Trouble Codes 65227 ($00FECB)
•DM3 - Diagnostic Data Clear/Reset for Previously Active DTCs 65228 ($00FECC)
•DM11 - Diagnostic Data Clear/Reset for Active DTCs 65235 ($00FED3)
From J1939-81 - Network Management
•Address Claimed/Cannot Claim 60928 ($00EE00)
•Commanded Address 65240 ($00FED8)
From J1939-71 – Vehicle Application Layer
None of the application layer PGNs are supported as part of the default configurations. However,
the user could configure any of the inputs messages to be sent using a PGN from this section, or
for any of the outputs to respond to a command message with a PGN from this section.

Version 2.0.3 Preliminary Documentation – May be Subject to Change 11-36
1.6. Dimensions and Pinout
Figure 4 – Dimensions and Pinout
(Mating Plug is DRC16-40SA or DRC18-40SA with sockets 0462-201-16141)

Version 2.0.3 Preliminary Documentation – May be Subject to Change 12-36
2. AXIOMATIC PROPRIETARY B MESSAGES
Any input or output on the controller by default uses a Proprietary B message to send data to the
network bus. Axiomatic employs a simple scheme to allow Axiomatic controllers to communicate
with each other using PropB messages.
See sections 4.3 and 4.7 for a complete description of the transmitted J1939 Message setpoints
and how changing them will affect the messages sent to the network for each input (measured
value) or output (feedback) channel.
See section 4.6 for a complete description of the received J1939 Message setpoints, and how
changing them will affect how the ECU interprets the data in the command messages for each
output channel.
2.1. Single Channel Messages
For any Proprietary B PGN that is used to send data associated with only one channel, the format
of the data in the message will be as described below.
The PropB message structure for this controller is as defined below.
Byte[0] AXIO_MSG_IDENTIFIER_BYTE
Byte[1] AXIO_STATUS_BYTE
Byte[2] Data (byte) SB of Data (word) LSB of Data (dword)
Byte[3] $FF (byte) SB of Data (word) Second LSB of Data (dword)
Byte[4] $FF (byte) FF (word) Second MSB of Data (dword)
Byte[5] $FF (byte) FF (word) MSB of Data (dword)
Byte[6] $FF (All)
Byte[7] $FF (All)
Note1: Least Significant Byte = LSB, Most Significant Byte = MSB
Note2: $xx represents a hexadecimal value, $FF = Not Used/Don’t Care
Note3: byte = unsigned char, word = unsigned int, dword = unsigned long
Note4: A PropB message is always sent with 8 bytes of data
There are four AXIO_MSG_IDENTIFIER_BYTE that could be used by the controller
PROPRIETARY_ANALOG_INPUT_MSG $0A (all input configurations except digital)
PROPRIETARY_DIGITAL_INPUT_MSG $0D (digital input configuration only)
PROPRIETARY_FEEDBACK_MSG $0F (feedback of the output setpoint)
PROPRIETARY_COMMAND_MSG $0C (if controlling an output on another ECU)
There are four possible states of the AXIO_STATUS_BYTE
DISABLED = $00
ENABLED = $01
OUT_OF_RANGE_LOW = $02
OUT_OF_RANGE_HIGH = $03
This scheme could be used to tell another Axiomatic ECU that there is an error at the input, even if
diagnostic messaging is not enabled for that input channel. For command messages, the status
byte must be $01 for the corresponding output to come on. Even if a non-zero value is present in

Version 2.0.3 Preliminary Documentation – May be Subject to Change 13-36
data portion of the message, the output will not be turned on, unless enabled by a valid input
signal.
If an output's "Command PGN" is a PropB PGN and if the "Axiomatic Proprietary B scheme is
used" is set to TRUE, the ECU uses the Axiomatic Proprietary B scheme when interpreting the
data in the message. In this case, if the AXIO_MSG_IDENTIFIER_BYTE is not set to $0C
(command) the message is ignored. If the AXIO_STATUS_BYTE is not set to $01 (enabled) the
output logic state will be set to OFF, regardless of the rest of the data in the message. If the status
is set to $01, then the data in the message will determine the state of the output logic.
An output's feedback message is always sent using a PropB PGN. If and only if the "Axiomatic
Proprietary B scheme is used" is set to TRUE, then the Axiomatic Proprietary scheme is used. For
feedback messages, the AXIO_MSG_IDENTIFIER_BYTE will be set to $0F, and, since diagnostics
are not available on the outputs, the AXIO_STATUS_BYTE will always be $01. The data will reflect
the setpoint of the output signal.
Example 1: Analog Input Measured Message
An input channel is configured for a 0-5V input, and will send the data to the bus using PGN
65280. The value is sent as a word with a resolution of 0.001V/bit. The actual value measured by
the controller for this input is 2.522V. The message sent to the bus is as shown below in Hex.
29 Bit ID #bytes ID Status Value
18FF0080 8 0A 01 DA 09 FF FF FF FF
Example 2: Digital Input Measured Message
An input channel is configured for a digital input, and will send the data to the bus using PGN
65281. The value is sent as a byte with a resolution of 1 state/bit. The actual value measured by
the controller for this input is OFF. The message sent to the bus is as shown below in Hex. Note
that the Status byte indicates that the input is OK (will always be $01 for a digital input) while the
data shows that the input state is off.
29 Bit ID #bytes ID Status Value
18FF0081 8 0D 01 00 FF FF FF FF FF
Example 3: Frequency Input Command Message
An input channel is configured as a PWM input, and will be used to command the state of an
output. The data will be sent to the bus using PGN 65282, and will be sent with a resolution of
0.1%dc/bit. The actual value measured by the controller for this input is 82.3% duty cycle. The
message sent to the bus is as shown below in Hex.
29 Bit ID #bytes ID Status Value
18FF0280 8 0C 01 37 03 FF FF FF FF
The same input is set up such that any input value below 5% will be seen as an error. The actual
value measured by the controller for this input is 2.7% duty cycle. In this case, the output will be
commanded off, rather than set to the minimum input. The message sent to the bus is as shown
below in Hex.
29 Bit ID #bytes ID Status Value
18FF0280 8 0C 02 1B 00 FF FF FF FF

Version 2.0.3 Preliminary Documentation – May be Subject to Change 14-36
Example 4: Output Feedback Message
A –5 to 5V output channel is configured to periodically send the feedback message to the network.
The data will be sent to the bus using PGN 65283 and for this output type it has a resolution of
1mV/bit with a -5000mV offset. The controller has the output set to –2.74V, and the message sent
to the bus is as shown, with 2260mV as the data.
29 Bit ID #bytes ID Status Value
18FF0380 8 0F 01 D4 08 FF FF FF FF
2.2. Multiple Channel Messages
For any Proprietary B PGN that is used to send data associated with more than one channel, the
format of the data in the message will be as described below. The same will apply for all other
PGNs shared by multiple channels.
The Repetition Rate of the message that will be sent to the bus will be the one from the LOWEST
index channel. This means that if this channel has the repetition set to zero, the message will NOT
be sent to the bus, even if other higher number channels with the same Transmit PGN have a non-
zero repetition rate.
Each channel will use its own resolution and offset for the data.
WARNING: If more than one channel sharing a PGN has the same data index into the
array, the data from the HIGHEST channel will be sent. This problem will also be
present if a 2 or 4 byte setpoint is indexed such that the higher bytes of the data will
overlap with the data from another channel. If the WORD or DWORD data is from an
input channel with lower number, the MSB (s) of the data will be overwritten. If it is
from an input channel with a higher number, the MSB(s) of the data will overwrite the
LSB(s) of the other channel.
It is the responsibility of the user to ensure that this doesn’t happen.
WARNING: For Input messages, if the Axiomatic Proprietary B scheme is used, and
the LOWEST index channel has its "Message Type" set to "Command", byte 0 of the
message will always be $0C, and byte 1 will always be set to $01, even when the PGN
is shared. If the Data Index of any of the input channels is set to 0 or 1, the measured
data will be overwritten by the Axiomatic Proprietary B data.
It is the responsibility of the user to ensure that this doesn’t happen.
WARNING: The ECU can only share the same PGN for the same type of messages.
This means that an input measured message MUST NOT share a PGN with an output
feedback message. If this happens, the ECU will not use the multiple channel
message scheme described above, but rather send the PGN twice, once as the input
message, and again as the feedback message.
It is the responsibility of the user to ensure that this doesn’t happen.

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.

Version 2.0.3 Preliminary Documentation – May be Subject to Change 16-36
3.1. Input FMIs
There are seven different FMIs that can be associated with the input channels, but a maximum of
only two are possible for any channel at any given time. The type of FMI that will be associated
with an input channel is dependant on the “Input Sensor Type”, and the “Diagnostic Lamp Type”
setpoints.
Input Sensor Type FMI # FMI Name
All (using Red Stop Lamp) 0 DATA_ABOVE_NORMAL_SHUTDOWN
All (using Red Stop Lamp) 1 DATA_BELOW_NORMAL_SHUTDOWN
0 to 5 Volt 3 VOLTAGE_ABOVE_NORMAL
0 to 5 Volt 4 VOLTAGE_BELOW_NORMAL
0(4) to 20 Milliamp 6 CURRENT_ABOVE_NORMAL
0(4) to 20 Milliamp 5 CURRENT_BELOW_NORMAL
PWM Duty Cycle and Frequency/RPM 8 ABNORMAL_FREQ_OR_DC
Note: For Inputs configured as 16-Bit Counter or Digital, error detection is not possible
If the LampType is the Red Stop Lamp, then, regardless of what type of input is used
•A value less than Minimum Error will generate a DATA_BELOW_NORMAL_SHUTDOWN
•A value greater than Maximum Error will generate a DATA_ABOVE_NORMAL_SHUTDOWN
Otherwise, for inputs configured as a voltage input
•A value less than Error Minimum will generate a VOLTAGE_BELOW_NORMAL
•A value greater than Error Maximum will generate a VOLTAGE_ABOVE_NORMAL
For inputs configured as a current input
•A value less than Error Minimum will generate a CURRENT_BELOW_NORMAL
•A value greater than Error Maximum will generate a CURRENT _ABOVE_NORMAL
For inputs configured as a PWM or Frequency/RPM input
•A value less than Error Minimum will generate a ABNORMAL_FREQ_OR_DC
•A value greater than Error Maximum will generate a ABNORMAL_FREQ_OR_DC

Version 2.0.3 Preliminary Documentation – May be Subject to Change 17-36
3.2. Diagnostic Log
In order to support requests for DM2, the controller stores diagnostic data in a non-volatile log.
There are two diagnostic log entries associated with each input channel. Each entry is a record of
the SPN, FMI and OC for any fault that has occurred.
If the “Generate Diagnostic Messages” setpoint for the I/O channel is set to false, the OC for any
DTCs for that channel will NOT be updated in the log, even if the controller detects the associated
fault.
As soon as the controller detects a new (previously inactive) fault, it will start decrementing the
delay timer for that channel. If the fault has remained present during the delay time, then the
controller will set the DTC to active, and will increment the OC in the log. A DM1 will immediately
be generated that includes the new DTC. While there are any active DTCs, a DM1 will be sent
every second, as per the standard.
If the controller receives a request for a “Diagnostic Data Clear/Reset for Previously Active DTCs”
(DM3) it will clear the OC of ALL the inactive DTCs in the log. The OC for active diagnostics is not
changed.
If the user changes either the “SPN” or the “Diagnostic Lamp Type” setpoints, the diagnostic
entries for that channel are updated, and the OC is set to zero.
3.3. Clearing Active DTCs
The “Diagnostic Lamp Type” setpoint will not only determine what lamp is set in a DM1 or DM2, but
also how active diagnostics will be cleared.
For input channels that set the Protect Lamp or Amber Warning Lamp when detecting a fault, if the
fault goes away, then the controller automatically makes the SPN/FMI combination previously
active, and will no longer include it in the DM1.
For an input error to be considered to have been cleared, the input must have either gone above
the minimum error, or dropped below the maximum error, by the amount shown in the table below.
Voltage Current PWM Frequency
250 mV 250 uA 1.0% 10 Hz/RPM
However, for channels that set the Red Stop Lamp, DTCs are NOT automatically made inactive
once the fault clears. Instead, they can only be cleared upon request for a “Diagnostic Data
Clear/Reset for Active DTCs” (DM11).
Upon receiving a request for a DM11, the controller will check the status of all the active DTCs that
set the Red Stop Lamp. If the fault is still present, then the DTC remains active. Otherwise, the
DTC is made previously active, and it is no longer included in the DM1.
If any one of the Red Stop Lamp channels still has an active fault when the request for the DM11 is
received, the controller will respond with a NAK, indicating that it was not able to complete the
request. If, however, all the DTCs have now been made previously active, it will respond with an
ACK. If all the faults in the module are cleared at this point, i.e. all DTCs are now inactive, the
controller will send a DM1 message indicating that there are no longer any active DTCs.

Version 2.0.3 Preliminary Documentation – May be Subject to Change 18-36
4. ECU SETPOINTS
4.1. Input Measurement Setpoints
There are five setpoints per channel that are associated with the input and how the data is
measured. This section describes how changing these values could affect the measurement
accuracy.
Name Range Default Notes
Input
Sensor
Type (IST)
0: Input Disabled
1: 0 to 5 Volt
2: 0 to 10 Volt
3: 0(4) to 20 Milliamp
4: PWM Duty Cycle
5: Frequency/RPM
6: 16-bit Counter
7: Digital (High)
1: 0 to 5 Volt
See section 1.3 for more details about
each input type.
Pulse Per
Revolution 0 to 1000 0 This setpoint is only used if the IST is set
to 5: Frequency/RPM, otherwise it is
ignored. If set to zero, the data is reported
in Hertz. If non-zero, the controller reports
the input as RPM.
Measuring
Window IST = 5
100 to 10000ms
IST = 6
0 to 65535 pulses
1000ms If IST is set to 5: Frequency/RPM, this
setpoint determines the period at which
the controller will measure the pulses to
determine the frequency.
If IST is set to 6: 16-Bit Counter, the
controller will measure the time (1ms
resolution) it takes for the number of
pulse in the measuring window to be
counted at the input.
If IST is set to anything else, this setpoint
is ignored.
Filter Type 0: No Filtering
1: Moving Average
2: Repeating Average
0: No Filtering See “Input Measurement Accuracy and
Filtering”
Filter
Constant 1 to 1000 1 See “Input Accuracy Measurement and
Filtering”

Version 2.0.3 Preliminary Documentation – May be Subject to Change 19-36
Input Measurement Accuracy and Filtering
All inputs, except for frequency inputs, are sampled every 1ms. The user can select the type
of filter that is applied to the measured data, before it is transmitted to the bus. The available filters
are:
•Filter Type 0 = No Filter
•Filter Type 1 = Moving Average
•Filter Type 2 = Repeating Average
Calculation with no filter:
Value = Input
When the message is sent to the bus, the data is simply a ‘snapshot’ of the value after the latest
measurement taken by the AtoD converter or interrupt function.
Calculation with the moving average filter:
ValueN= ValueN-1 +
‘Filter Constant’ is another setpoint that can be adjusted by the user.
When the message is sent to the bus, the data is what was calculated in ValueNafter the latest
measurement taken by the AtoD converter or interrupt function. Selecting the appropriate Filter
Constant can reduce the effect of noise on the accuracy of the input measurements.
Calculation with the repeating average filter:
Value =
At every reading of the input value, it is added to the sum. At every Nth read, the sum is divided by
N, and the result is saved for transmission to the bus. The value and counter will be set to zero for
the next read. The value of N is stored in the ‘Filter Constant’ setpoint.
When the message is sent to the bus, the data is what was calculated in Value after the latest
measurement taken by the AtoD converter or interrupt function.
Frequency and Counter Inputs
Frequency and counter inputs are measured based on the value in the ‘Measuring Window’
setpoint. Filters are not available for these types of inputs, and the data in ‘Filter Type’ is ignored.
For frequency inputs, the sampling period should be selected to get the best resolution of the input,
and thus more accurate measurements of the frequency. For example, a gear with 100 teeth
rotating a 1200 RPM will have a high frequency of 2000 Hz, so sampling every 100ms will give an
‘ideal’ value of 200 pulses. If a couple of pulses are missed, and only 198 pulses are counted, the
calculated RPM will be 1188, which is only a 1% error. However, that same gear rotating at only
300 RPM would give a 4% error if two pulses were missed in the 100ms measuring window.
(Input – ValueN-1)
FilterConstant
ΣInputN
N

Version 2.0.3 Preliminary Documentation – May be Subject to Change 20-36
4.2. Input Profile Setpoints
There are six setpoints per channel that are associated with how the measured input will control a
proportional output on the ECU. See the Figures 1, 2and 3in section 1.4 for more details about
the output versus input profiles.
Name Range Default Notes
AI Minimum AI Error Minimum
to
AI Breakpoint Minimum
IST=0 to 5 Volt
IST=0 to 10 Volt
IST=0(4) to 20mA
IST=PWM
IST=Frequency/RPM
IST=Other
0.5V
0.5V
4mA
5%
500Hz
N/A
Used with
Single Profile (both)
or
Dual Profile B (both)
AI Breakpoint
Minimum
AI Minimum
to
AI Deadband Minimum
IST=0 to 5 Volt
IST=0 to 10 Volt
IST=0(4) to 20mA
IST=PWM
IST=Frequency/RPM
IST=Other
1.4V
2.6V
7.5mA
26%
2600Hz
N/A
Used with
Single Profile, Dual Slope
or
Dual Profile B, Dual Slope
AI Deadband
Minimum
AI Breakpoint Minimum
to
AI Deadband Maximum
IST=0 to 5 Volt
IST=0 to 10 Volt
IST=0(4) to 20mA
IST=PWM
IST=Frequency/RPM
IST=Other
2.3V
4.7V
11mA
47%
4700Hz
N/A
Used only with
Dual Profile B (both)
AI Deadband
Maximum
AI Deadband Minimum
to
AI Breakpoint Maximum
IST=0 to 5 Volt
IST=0 to 10 Volt
IST=0(4) to 20mA
IST=PWM
IST=Frequency/RPM
IST=Other
2.7V
5.3V
13mA
53%
5300Hz
N/A
Used only with
Dual Profile A (both)
AI Breakpoint
Maximum
AI Deadband Maximum
to
AI Maximum
IST=0 to 5 Volt
IST=0 to 10 Volt
IST=0(4) to 20mA
IST=PWM
IST=Frequency/RPM
IST=Other
3.6V
7.4V
16.5mA
74%
7400Hz
N/A
Used only with
Dual Profile A, Dual Slope
AI Maximum AI Breakpoint Maximum
to
AI Error Maximum
IST=0 to 5 Volt
IST=0 to 10 Volt
IST=0(4) to 20mA
IST=PWM
IST=Frequency/RPM
IST=Other
4.5V
9.5V
20mA
95%
9500Hz
N/A
Used with
Single Profile (both)
or
Dual Profile A (both)
4.3. J1939 Transmit Message (Input) Setpoints
There are nine setpoints per channel that are associated with the J1939 message that is sent to
the network bus. The user should be familiar with the SAE J1939 standard, and select values for
PGN/SPN combinations as appropriate from section J1939/71.
Table of contents
Other AXIOMATIC I/O System manuals
Popular I/O System manuals by other brands

Parker
Parker P2M Node 24 DO user manual

Pilz
Pilz PSSu E S 2AO U operating manual

CAME
CAME OH/IR installation instructions

Signalogic
Signalogic SigMRF user guide

Veris Industries
Veris Industries Hawkeye H-8000 Series installation instructions

Measurement Computing
Measurement Computing PCI-DAS6013 user guide

National Instruments
National Instruments SCXI-1162HV user manual

National Instruments
National Instruments NI-5761 USER GUIDE AND SPECIFICATIONS

ICP DAS USA
ICP DAS USA PIO-D144 Series user manual

Pilz
Pilz PSSu E S 2DO 2 operating manual

Seneca
Seneca R-P Series user manual

ADLINK Technology
ADLINK Technology NuDAQ 723 Series user manual