Understanding the CAN concepts and functionality
17:07 02 Dec 2025

I'm really new with CAN protocol and I'm trying to understand different concepts.
As I understand the CAN is a standard for nodes (ECUs) network communication with three main versions, CAN 2.0, CAN FD and CAN XL.
There are also two versions of CAN 2.0, which are CAN 2.0A or Standard CAN and the CAN 2.0B or Extended CAN that differs only by the CAN ID length (11-bit for 2.0A and 29-bit for 2.0B)
Then there's this other standard named SAE J1939 that is used mainly in trucks that enabled a system for stablishing the type and purpose of the message by using the 29-bit CAN ID, within this 29-bit there's this 18-bit long PGN parameter.
So, it seems that PGNs are like definitions of what information does the message includes, if I see a CAN ID: 0c820e0f the PGN is 8200 which means Tire Configuration Command Information.
At this point I think I have it clear, the confusion starts with the PAYLOAD part, which I could guess that this PGN would indicate different information, but how can I tell which byte is used for what?

Is this when the DBC comes for?

I think that these PGNs are linked to these DBCs and these are like translator, so I would have to worry what does each byte means while this PGN is linked to a DBC file,.

Is my understanding correct?

So, the next question is OBD-II related, as I understand this is a protocol that converts this CAN data into DTC,.

Which documentation relates to how the OBD-II does this process?

This is because I'm looking at these SAE J1850 and it seems that it changes the interface, different from the J1939 that uses the CAN ID to indicate certain data, it seems that SAE J1850 changes the connector interface and add VPW or PWM to retrieve the data, but I'm trying to understand how this affect does the data.

How does it work?

I'm guessing that this is a signal modulation for transmit a kind of regulation or depending on the width is the process the device is running.
I really want to get deep into this knowledge, so I'm looking for more detailed information.

can-bus