cancel
Showing results for 
Search instead for 
Did you mean: 

FDCAN2 doesn't seem to work with STM32G474e-EVAL board

ESchn.1
Associate II

I'm having problems getting my software to work with FDCAN2 on the STM32G474e-EVAL board. It works with FDCAN1, but w/ FDCAN2, messages accumulate in the Tx buffer until I get buffer fill errors.

I built the FDCAN_Com_IT example from the latest STM32GCube firmware bundle and it fails in the exact same manner. Board is terminated correctly and I believe the CAN pins are wired to each other correctly. What could be going wrong here? Thanks.

-es

1 ACCEPTED SOLUTION

Accepted Solutions
ESchn.1
Associate II

Ok, finally tracked this problem down. It would appear that some revisions of the STM32G474E-EVAL board default to having the FDCAN2 TX pin disconnected. If you solder the SB5 location on the board closed, the pin will be connected and FDCAN2 will work.

View solution in original post

11 REPLIES 11
SofLit
ST Employee

Hello,

Did you already test the example provided in STM32CubeG4 provided under the path Projects\STM32G474E-EVAL\Examples\FDCAN\FDCAN_Com_IT ? It uses FDCAN1 and FDCAN2. This is to ensure at least the HW part is OK...

To give better visibility on the answered topics, please click on "Accept as Solution" on the reply which solved your issue or answered your question.

Yes. The FDCAN_Com_IT application failed in the same manner (no transmission, buffer fill errors) when tested on two different STM32G474e-EVAL boards, so I'm reasonably sure it's not hardware or I've been profoundly unlucky.

-es

That's strange! I will try to run this example when I have this board on hands and get back to you for any feedback.

To give better visibility on the answered topics, please click on "Accept as Solution" on the reply which solved your issue or answered your question.

Thanks!

-es

KDJEM.1
ST Employee

Hi @ESchn.1​ ,

I tested FDCAN_Com_IT example and I didn't find any issue.

Please make sure that :

  • Jumper JP1 => fitted
  • Jumper JP2 => fitted
  • Jumper JP4 => fitted
  • Connect the 2 points CN12 CAN connector (CAN-H and CAN-L) of FDCAN1 instance, to the 2 points CN10 CAN connectors (resp. CAN-H and CAN-L) of FDCAN2 instance.

Thank you.

Kaouthar

To give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.

Hi Kaouthar,

Thank you for checking on this. I've definitely fitted jumpers JP1, JP2, and JP4 and correctly bridged FDCAN1 and FDCAN2, but I'm still seeing the same failure. What hash did you build the FDCAN_Com_IT example from?

-es

Hello @ESchn.1​ ,

I built the FDCAN_Com_IT example from the last STM32CubeG4 1.5.1 package revision by using STM32CubeIDE 1.12.1 toolchain.

Kaouthar

To give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.

Ok, that looks like what I'm using as well. I've double checked the jumpers and tested the conductivity of the wires connecting FDCAN1 to FDCAN2 and they're good. Any idea what could be going wrong here to leave FDCAN1 working but FDCAN2 failing?

-es

I'm still experiencing this problem and have reproduced it on multiple boards. JP1, JP2, and JP4 are definitely set correctly and the CN12 and CN10 are correctly wired together. Is there anything else that could be causing this behavior? (Other jumpers, perhaps?) I'm currently powering the board via a Micro-USB plugged into a powered USB strip. (with JP-12 set for that.) Could this be a power issue? I've also tried powering via USB-C but behavior hasn't changed.