The Controller Area Network (CAN) protocol is a widely recognized international serial communication standard. Initially developed by Bosch in Germany for the automotive industry, it was designed to provide a high-speed, low-wiring, multi-device bus protocol with strong electromagnetic interference (EMI) resistance and built-in error detection capabilities.

CAN bus networks are categorized into two types:
Closed-Loop Network: A 120Ω resistor is connected at both ends of the bus. This topology is suitable for short-distance applications with higher data rates (typically several hundred kbit/s).
Open-Loop Network: Two independent signal lines, each in series with a 2.2kΩ resistor. Ideal for long-distance deployments (up to kilometers) but with lower speeds (usually tens of kbit/s).


Data is transmitted via twisted-pair cables using differential signals, which is the primary source of EMI resistance. The CAN protocol defines five frame types, with the data frame structured as follows:
Start of Frame (SOF): Indicates the beginning of a data frame.
Arbitration Field: Determines message priority. When multiple devices transmit simultaneously, the device sending the most consecutive dominant bits gains bus access.
Control Field: Specifies the data length.
Data Field: The actual payload (limited to 8 bytes in standard CAN).
CRC Field: Ensures data integrity during transmission.
ACK Field: Confirms successful reception of the frame.
End of Frame (EOF): Marks the end of the data frame.
CAN FD (Flexible Data Rate) is an upgraded version of CAN, retaining the same physical layer (bus structure) but introducing critical improvements at the protocol layer. It was developed to address the growing demands of modern electronic systems, where increased device density and larger data payloads strained the original CAN protocol’s capabilities.
Frame Types | Frame usage |
Data frame | A frame containing an ID and data sent by a node is used by the sending unit to transmit data to the receiving unit. |
Remote frame | A node sends a data request with a specific ID to other nodes on the network. Once the sending node receives the remote control frame, it can send a data frame with the corresponding ID. |
Error frame | When a node detects an error, it sends an error notification frame to other nodes. |
Overload frame | If a receiving unit sends a frame when it is not ready to receive data, the sending node can temporarily suspend sending data frames after receiving an overload frame. |
Inter-frame space | A frame used to separate data frames, remote control frames, and preceding and following frames. |
CAN FD maintains the original CAN speed for the arbitration and control phases but switches to a higher variable speed for the data and CRC phases (from the BRS bit to the ACK field). This reduces latency for large data payloads.
By increasing the maximum data length from 8 bytes to 64 bytes, CAN FD minimizes the number of frames required for large datasets. Combined with the faster data phase, this significantly boosts overall transmission efficiency and speed.
In summary, CAN FD addresses the limitations of traditional CAN by offering larger data payloads and variable-speed transmission, making it ideal for modern automotive and industrial applications with high bandwidth demands. CAN, however, remains suitable for simpler systems with low data throughput requirements.