Home 9 Service 9 Basics 9 CAN FD

CAN FD – in simple terms

CAN FD (CAN with Flexible Data Rate) is the further development of the classic CAN bus. Compared with Classical CAN, CAN FD allows up to 64 bytes of payload per frame and a higher data rate during the data phase. This allows more data to be transferred more efficiently without abandoning the proven basic principle of CAN communication. CAN FD is now used wherever classic CAN networks reach their limits in throughput, diagnostics, or software updates.

What is CAN FD?

CAN FD stands for CAN with Flexible Data Rate. The protocol adds two key protperties to the classic CAN bus:
First, a CAN FD frame can carry significantly more payload than a classic CAN frame. Instead of a maximum of 8 bytes, CAN FD allows up to 64 bytes per message. Second, CAN FD permits a higher transmission speed during the data phase. This significantly increases network efficiency.

CAN FD was developed to better support modern applications with higher data volumes. These include, for example, diagnostic functions, ECU flash programming, measurement data acquisition, and systems with increasing communication density.

CAN FD vs. CAN — the key differences

The most important difference between Classical CAN and CAN FD lies in the combination of greater payload length and higher data throughput. CAN FD was designed to maintain the existing CAN concepts while enabling greater efficiency for modern applications.

Feature
Classical CAN
CAN FD
Maximum payload per frame
8 bytes
64 bytes
Data rate
uniform across the entire frame
higher data rate possible during the data phase
Bit Rate Switching (BRS)
no
yes
Efficiency with large data volumes
limited
significantly higher
Remote Frame
supported
not provided
Suitability for diagnostics / flashing
limited
very well suited
For many classic control tasks, the conventional CAN bus is still sufficient. However, as soon as larger amounts of data, shorter transmission times, or more efficient diagnostic and update processes are required, CAN FD offers clear advantages.

How does CAN FD work?

CAN FD is based on the familiar CAN principle, but extends the data frame with additional capabilities. Particularly important are the flexible data rate, the larger payload length, and new indicators in the frame format.

A CAN FD frame can be divided into two speed ranges:

  • During the arbitration phase, communication runs at a bit rate suited to the network topology.
  • During the data phase, the bit rate can be increased if **Bit Rate Switching (BRS)** is used.

This preserves the bus arbitration mechanism while making the actual data transfer much more efficient.

Picture CAN FD Base Frame Format

CAN FD base frame — arbitration phase and data phase

Bit Rate Switching (BRS)

Bit Rate Switching is one of the most important extensions of CAN FD. Arbitration is performed at a conservative bit rate. After successful bus arbitration, the data phase can be transmitted at a higher speed. This increases effective data throughput without changing the basic CAN bus principle.

More payload per message

While classic CAN messages are limited to 8 bytes of payload, CAN FD supports up to 64 bytes. This reduces the number of frames required for larger data blocks. As a result, overhead is reduced and communication efficiency improves.

Why CAN FD was developed

As the number of ECUs, diagnostic functions, and software components in machines and vehicles increases, communication requirements also grow. CAN FD was developed to better address these requirements within the familiar CAN world: more data per message, shorter transmission times, and higher efficiency within the existing system concept.

CAN FD frames and important fields

The CAN FD data frame resembles the classic CAN frame, but contains additional information for the extended functions. These include, in particular, indicators for the FD format, bit rate switching, and the status of the transmitting node.

In Classical CAN, only two data frame types were distinguished: Standard Frames (CAN 2.0A) with an 11-bit identifier and Extended Frames (CAN 2.0B) with a 29-bit identifier. These formats remain in place, but within CAN FD they receive new names.

Abbreviation
Meaning
Description
CBFF
Classical Base Frame Format
11-bit identifier, maximum 8 bytes payload (formerly Standard Frame)
CEFF
Classical Extended Frame Format
29-bit identifier, maximum 8 bytes payload (formerly Extended Frame)
FBFF
FD Base Frame Format
11-bit identifier, maximum 64 bytes payload
FEFF
FD Extended Frame Format
29-bit identifier, maximum 64 bytes payload
CAN Frame Formats

A CAN FD controller is downward-compatible, i.e. the previous formats of the classical CAN are recognized and can be processed. However, this does not work in the reverse direction: the frame formats FBFF and FEFF are unknown to a classical CAN controller and, consequently, error frames will be sent. This is why all devices in the network need to be equipped with a CAN FD controller to be able to use FD frame formats.

The most significant differences in the frame structure of a classical CAN data frame are shown in fig. 1.

Picture CAN FD Base Frame Format

CAN FD Base Frame Format

The CAN FD format does not support remote frames, the previous RTR bit after the identifier is replaced by the “Remote Request Substitution” (RRS) bit.

FDF – FD Format

The FDF bit marks a frame as a CAN FD message. This allows participants to recognize that it is not a classic CAN frame.

BRS – Bit Rate Switch

The BRS bit indicates that the bit rate is switched to a higher value during the data phase. If BRS is active, the speed advantage of CAN FD can be used deliberately.

ESI – Error State Indicator

Using the ESI (Error State Indicator) bit in the control field, the sender of a message now signals whether it is in the Error Active or Error Passive state, which significantly improves troubleshooting in networks.

To avoid obtaining a worse residual error probability than with Classical CAN due to the potentially higher number of stuff bits in a message, a Stuff-Bit Counter (3 bits + parity) was introduced. The new Stuff Count field is sent at the beginning of the CRC field. The new stuff-count field is sent at the beginning of the CRC field.

DLC in CAN FD

In a classical CAN frame the valid value range of the DLC field (Data Length Code) was within 0 to 8, whereas the valid range of values in a CAN FD frame reaches from 0 to 15. The value of the DLC field determines the number of bytes in the data field and is interpreted as follows:

Encoding of data lengths

DLC value
Data Field size (bytes)
0 .. 8
0 .. 8
9
12
10
16
11
20
DLC value
Data Field size (bytes)
12
24
13
32
14
48
15
64

Even without faster transmission during the data phase, the larger amount of data alone offers considerable advantages. At a nominal bit rate of 1 MBit/s the net transfer rate (i.e. the transfer rate of the data field) of a classical CAN controller is 576 kBit/s. A CAN FD frame with a data size of 64 bytes has a net transfer rate of 903 kBit/s.

Advantages of CAN FD

CAN FD offers several clear advantages over classic CAN.

Higher data throughput

Larger payload fields and a faster data phase allow more information to be transmitted in less time.

Less overhead

When larger amounts of data are transferred in a single frame, the number of individual messages decreases. This reduces protocol overhead and increases efficiency.

Ideal for diagnostics and updates

CAN FD is particularly suitable for diagnostic communication, logging, parameterization, and software updates because larger data blocks can be transmitted more quickly.

The proven CAN principle remains

CAN FD is not a completely new communication world, but an extension of the familiar CAN system. This makes adoption easier in many applications.

Typical use cases for CAN FD

CAN FD is mainly used wherever classic CAN communication should remain functionally intact, but throughput needs to increase.

ECU programming

Larger data volumes can be transferred much more efficiently than with classic CAN. This shortens update and programming times.

Diagnostics and service

Diagnostic data, measured values, and parameterization information can be transported more quickly. This is especially beneficial in more complex systems.

Measurement and test engineering

In test benches, test systems, and development environments, CAN FD enables more efficient transfer of larger data blocks.

Measurement and test engineering

Wherever robust CAN communication is already established but more data capacity is needed, CAN FD is a natural next development step.

FAQ about CAN FD

What does CAN FD mean?

CAN FD means CAN with Flexible Data Rate. It is an extension of the classic CAN bus with greater payload length and a higher data rate during the data phase.

What is the difference between Classical CAN and CAN FD?

The key difference is: Classical CAN supports up to 8 bytes of payload per frame, while CAN FD supports up to 64 bytes. In addition, CAN FD can transmit faster during the data phase through Bit Rate Switching.

How much data can CAN FD transfer?

CAN FD supports up to 64 bytes of payload per frame.

Is CAN FD backward compatible?

CAN FD controllers can also process classic CAN communication. Conversely, classic CAN nodes cannot process a CAN FD frame. Therefore, system compatibility must always be considered at the network level.

Does CAN FD support remote frames?

No. Remote frames are not provided in CAN FD.

When should CAN FD be used?

CAN FD is useful when more throughput, larger payload blocks, or more efficient diagnostic and update processes are required. As a general rule, new developments should always plan for controllers with CAN FD support.

More on the topic of CAN FD

MicroControl I/O modules BOX

I/O Modules

Acquire analog and digital signals and communicate via CAN FD.


Symbol of calendar for MicroControl training courses

Training

Get more details on CAN FD in the training course.


Symbol for MicroControl protocolstacks

Protocol stacks

Integrate CAN FD into the product


Available CAN FD Controllers

Development of CAN FD systems is determined by the available CAN controllers. The following list is an overview of currently available CAN FD microcontrollers, but without claiming to be complete.

Manufacturer
Controller
Description
CAN Core
Microchip
Externer CAN FD Controller, 1 x CAN, SPI Interface
Microchip
Microchip
Externer CAN FD Controller, 1 x CAN, SPI Interface
Microchip
NXP
Cortex-M4 (220 MHz), 2 x CAN FD
Bosch M_CAN
NXP
Cortex-M0 / Cortex-M4F (up to 112 MHz), 1 .. 3 x CAN FD
FlexCAN
ST
Cortex-M0+ (48 MHz), 1 x CAN FD
CANFDL
ST
Cortex-M0+ (64 MHz), 2 x CAN FD
CANFDL
ST
Cortex-M4 (170 MHz), 3 x CAN FD
CANFDL
ST
Cortex-M33 (250 MHz), 2 x CAN FD
Bosch M_CAN
ST
Cortex-M7 (400 MHz), 3 x CAN FD
Bosch M_CAN
ST
Cortex-M33 (110 MHz), 1 x CAN FD
CANFDL
ST
Cortex-M55 (800 MHz), 3 x CAN FD
Bosch M_CAN
ST
Cortex-M33 (96 MHz), 1 x CAN FD
CANFDL
ST
Cortex-M33 (160 MHz), 1 x CAN FD
CANFDL
TI
External CAN FD Controller with integrated Transceiver, 1 x CAN, SPI Interface
Bosch M_CAN

You would like to get more information?

+49 2241 - 25 65 9 - 0

Write an email or give us a call.