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