Basics of the CAN Protocol
CAN is an internationally standardized protocol. This section explains the contents of this standard and its correspondence to the OSI reference model.
Basic overview of CAN protocol
Regarding CAN protocol, the specifications were defined by its developer, Bosch, and were then standardized by the International Organization for Standardization (ISO) as ISO 11898 and ISO 11519. ISO 11898 is a standard for high-speed CAN communication (CAN-C) between 125 kbps and 1 Mbps. It is now classified into ISO 11898-1, a standard only for the data link layer, and ISO 11898-2, a standard only for the physical layer. ISO 11519 is a standard for low-speed CAN communication up to 125 kbps.
What is the OSI basic reference model?
Just like the same language is used during conversation, common language and rules need to be defined for information and communication. CAN and other information and communication standards have been standardized on the basis of the OSI basic reference model stipulated by the ISO. In the OSI reference model, the functions used for computer communication have been divided into a layered structure by the ISO. The CAN protocol has specifications for the transport, data link, and physical layers in the OSI basic reference model.
OSI basic reference model
Software control | 7 | Application layer |
---|---|---|
6 | Presentation layer | |
5 | Session layer | |
4 | Transport layer | |
3 | Network layer | |
Hardware control | 2 | Data link layer |
1 | Physical layer |
Contents defined in the transport layer (layer 4)
The transport layer only defines retransmission control. As described in “High-speed and reliable data sharing” in Features of CAN, the function to retransmit data when a transmission error occurs, called “permanent retry,” corresponds to this layer.
Contents defined in the data link layer (layer 2)
The data link layer, which is divided into the logical link control (LLC) and medium access control (MAC) sublayers, mainly defines conversion from electrical pulse signals to frames, arbitration during data collision, ACK responses for acknowledgment during data transmission, and detection/notification of various errors. The contents shown below have been standardized commonly in ISO 11898 and ISO 11519.
Defined items | ||
---|---|---|
Data link layer | LLC | Received message selection (acceptance filtering) |
Overload notification | ||
Error recovery | ||
MAC | Message framing | |
Connection control method | ||
Arbitration during data collision | ||
Fault confinement function | ||
Error notification | ||
Error detection | ||
Response method | ||
Communication method |
Contents defined in the physical layer (layer 1)
The physical layer, which defines physical characteristics and specifications, stipulates bit timing—such as bit synchronization/resynchronization and sampling points—and characteristics of transceivers and buses, but it does not standardize the shapes of connectors and cables. As for the physical layer, ISO 11898 and ISO 11519 have both common and different contents.
- Communication speed
-
- ISO 11898 (high-speed CAN)
- Up to 1 Mbps
-
- ISO 11519 (low-speed CAN)
- Up to 125 kbps
- CAN bus signals
-
- ISO 11898 (high-speed CAN)
-
- ISO 11519 (low-speed CAN)
- Maximum bus length
-
- ISO 11898 (high-speed CAN)
- 40 m/1 Mbps
-
- ISO 11519 (low-speed CAN)
- 1 Km/40 Kbps
- Maximum number of connected units
-
- ISO 11898 (high-speed CAN)
- 30
-
- ISO 11519 (low-speed CAN)
- 20
- Signal level
-
- ISO 11898 (high-speed CAN)
-
Bus state Recessive (1) Dominant (0) Min. Typ. Max. Min. Typ. Max. CANH 2.00 2.50 3.00 2.75 3.50 4.50 CANL 2.00 2.50 3.00 0.50 1.50 2.25 Potential difference -0.50 0.00 0.05 1.50 2.00 3.00
-
- ISO 11519 (low-speed CAN)
-
Bus state Recessive (1) Dominant (0) Min. Typ. Max. Min. Typ. Max. CANH 1.60 1.75 1.90 3.85 4.00 5.00 CANL 3.10 3.25 3.40 0.00 1.00 1.15 Potential difference -0.30 -1.50 — 0.30 3.00 —
- Impedance
-
- ISO 11898 (high-speed CAN)
- 120 Ω (85 Ω min. / 130 Ω max.)
-
- ISO 11519 (low-speed CAN)
- 120 Ω (85 Ω min. / 130 Ω max.)
- Bus resistivity
-
- ISO 11898 (high-speed CAN)
- 70 mΩ/m
-
- ISO 11519 (low-speed CAN)
- 90 mΩ/m
- Bus delay time
-
- ISO 11898 (high-speed CAN)
- 5 ns/m
-
- ISO 11519 (low-speed CAN)
- 5 ns/m
- Termination resistor
-
- ISO 11898 (high-speed CAN)
- 120 Ω (85 Ω min. / 130 Ω max.)
-
- ISO 11519 (low-speed CAN)
- 2.2 kΩ (2.09 kΩ min. / 2.31 kΩ max.)
- Others
-
- ISO 11898 (high-speed CAN)
- Twisted-pair cable (shielded/unshielded)
Loop bus
-
- ISO 11519 (low-speed CAN)
- Twisted-pair cable (shielded/unshielded)
Open bus
Capacitance between CAN_L and GND: 30 pF/m
Capacitance between CAN_H and GND: 30 pF/m
CAN also standardized by the SAE
In addition to the ISO standards, CAN has also been standardized by the Society of Automotive Engineers (SAE) as J2284 and J2411. Communication using CAN has also been standardized by other organizations including the CAN in Automation (CiA) and the Open Device Net Vendor Association (ODVA).