Skip to main content
Visitor II
September 21, 2025
Solved

STM32H753 CAN set up with both CAN-FD & CAN 2.0 frames

  • September 21, 2025
  • 2 replies
  • 457 views

Hi, I'm trying to configure an STM32H753 FDCAN peripheral to be compatible with both CAN-FD & CAN 2.0 frames, in both the Tx & Rx directions.

 

How should I configure the FD-CAN peripheral to achieve this? I've been through he RM0433 document as best I can and am struggling to find this information.

    This topic has been closed for replies.
    Best answer by mƎALLEm

    Hello,

    1- If you configure the peripheral in FDCAN frame format:

    hfdcan1.Init.FrameFormat = FDCAN_FRAME_FD_BRS

    And you can send Classic CAN frames by setting the Tx header:

    TxHeader.FDFormat = FDCAN_CLASSIC_CAN;

    2- But if you intend to send FDCAN frames to CAN2.0 CAN nodes, this is not possible.

    From this paper: Hybridization of CAN and CAN FD networks

    "While CAN FD controllers can interpret and transmit both CAN FD and Classical CAN messages, Classical CAN controllers will report CAN FD messages as an error. This mandates a strict separation of CAN FD and Classical CAN networks"

    2 replies

    Graduate II
    September 22, 2025

    Are you trying to send messages to FDCAN and CAN 2.0B nodes on the same bus? 

    mƎALLEmAnswer
    Technical Moderator
    September 23, 2025

    Hello,

    1- If you configure the peripheral in FDCAN frame format:

    hfdcan1.Init.FrameFormat = FDCAN_FRAME_FD_BRS

    And you can send Classic CAN frames by setting the Tx header:

    TxHeader.FDFormat = FDCAN_CLASSIC_CAN;

    2- But if you intend to send FDCAN frames to CAN2.0 CAN nodes, this is not possible.

    From this paper: Hybridization of CAN and CAN FD networks

    "While CAN FD controllers can interpret and transmit both CAN FD and Classical CAN messages, Classical CAN controllers will report CAN FD messages as an error. This mandates a strict separation of CAN FD and Classical CAN networks"