I have been using J1939-21(Data link layer) many times, but now I'm confused.
First I know that a J1939 protocol is build up from a data frame and that data frame looks like this in practice.
<ID> <DATA OF 8 BYTES>
The rest handels the CAN-bus controller.
The ID
describes what type of message it is and where it comes from and where it want to arrive.
The DATA
describes 8 bytes of different 8-bit values from 0x00
to 0xFF
. That's all! Super simple!
But how should I interpret this table with a J1939 protocul from this Scania site? https://til.scania.com/w/bwm_0001161_99
If we begin with the ID. Here we can see that the meaning if this message is 19FF
and the message goes from 4A
and want to arrive at 85
. So the ID message is 0x19FF85FA
in hex.
Now to the data. As I know, every CAN-bus message have 8-bytes. So I assume that I would see something like this:
[Byte0, Byte1, Byte2, Byte3, Byte4, Byte5, Byte6, Byte7]
Example:
But I'm isint! Instead, I'm seeing this. What does this mean?
First, I know that this message are going to the ECU - Eletrical Control Unit, e.g PLC or controller. So this message is a R e c i e v e r
message.
Then we have the bytes. Here I can see that we have different bytes such as byte 1
and byte 1
. What??? I cannot understand this.
So here are some questions:
Is
B y t e
column only the index in[Byte0, Byte1, Byte2, Byte3, Byte4, Byte5, Byte6, Byte7]
andByte1
is acctullyByte0
in this indexing?What is
B i t
?How can the message TelecomConnectionStatus (Telecom Connection Status) have the length
4
but 4 TelecomNetworkTechnologyInUse (Telecom Network Technology In Use) looks like it have more lengths because it has more rows?
I don't understand this. Do you?