Skip to main content
Associate III
Jan 12, 2026 9:47 AM UTC
Solved

stm32u5 CAN, How to cancel resend failed messages

hello:

@mƎALLEm 

I'm currently working with the STM32U585 and ran into a problem abort CAN auto Retransmission.

Context:

  1. There are three devices on the CAN bus: stm32u5, A and B
  2. stm32u5 enable auto Retransmission
  3. stm32u5 need to keep sending them messages, regardless of whether they are connected or not
  4. device A and device B have hardware message filtering, So if A or B receives a message that is not intended for it, no ack will be sent(Is this correct?)

 

I want to know:

  1. If A is online and B is offline, how many times will the message sent to B be resent
  2. If it will be resent many times or never stops, how do I delete the failed resend messages after tx fifo is full
mƎALLEm
mƎALLEmBest answer
ST Technical Moderator
Jan 12, 2026 9:53 AM UTC

Hello,

The ACK is sent whatever it's recipient or not. The ACK has no relation with the ID but to the validity of a CAN frame.

So if A and B are recipients at least one of them will acknowledge the frame. So if A is offline, B will always acknowledge. Same thing, if B is offline A will acknowledge no matter the ID used.

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

1 reply

mƎALLEm
mƎALLEmBest answer
ST Technical Moderator
Jan 12, 2026 9:53 AM UTC

Hello,

The ACK is sent whatever it's recipient or not. The ACK has no relation with the ID but to the validity of a CAN frame.

So if A and B are recipients at least one of them will acknowledge the frame. So if A is offline, B will always acknowledge. Same thing, if B is offline A will acknowledge no matter the ID used.

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