Skip to main content
PR.Atom
Associate
June 4, 2025
Question

STM32F412ZETx - CAN2 RX FIFO1 Interrupt Not Triggering (Tx Working)

  • June 4, 2025
  • 2 replies
  • 570 views

I'm working with an STM32F412ZETx microcontroller and encountering an issue with the CAN2 peripheral. The transmit (Tx) functionality is working correctly, but the receive (Rx) interrupt via FIFO1 is not triggering at all.

 

CAN2 transmit works fine. I can see messages on the bus. same setup with CAN1 (Rx FIFO0) works fine.

Is there anything specific I need to configure for CAN2 RX interrupts on STM32F412?

Could the filter bank or SlaveStartFilterBank setting be causing this?

Are there known limitations with CAN2 and FIFO1 on this device?

2 replies

Karl Yamashita
Principal
June 11, 2025

Did you enable the NVIC?

If a reply has proven helpful, click on Accept as Solution so that it'll show at top of the post.CAN Jammer an open source CAN bus hacking toolCANableV3 Open Source
mƎALLEm
Technical Moderator
June 11, 2025

Hello,

You have an issue with the filter bank configuration:

 sFilterConfig.FilterBank = 0;
 sFilterConfig.SlaveStartFilterBank = 14;

 FilterBank should be >= SlaveStartFilterBank.

Refer to this article: STM32 in dual CAN configuration: bxCAN Filter bank explanation and relation with CAN2 Start Bank parameter

"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."
mƎALLEm
Technical Moderator
June 11, 2025

@mƎALLEm wrote:

Hello,

You have an issue with the filter bank configuration:

 sFilterConfig.FilterBank = 0;
 sFilterConfig.SlaveStartFilterBank = 14;

 FilterBank should be >= SlaveStartFilterBank.

Refer to this article: STM32 in dual CAN configuration: bxCAN Filter bank explanation and relation with CAN2 Start Bank parameter


Sorry what I saw is the code related to CAN1.

As said by @Karl Yamashita you need to check if you enabled CAN2 NVIC Rx for FIFO1

"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."