AnsweredAssumed Answered

FLEXCAN Receiving Issues

Question asked by David XY Zhou on Dec 12, 2016
Latest reply on Mar 6, 2017 by David XY Zhou

Hi,

I have K60 Towerboard, _K60P144M150SF3RM, with MQX4.2, and CodeWarrior 10.6.4.

I have a weird FlexCan issue. I have 10 MBoxes for Rx-ing. and 2 for Tx-ing. First 5 MBoxes are used for receiving specific CANIDs with Masks set for ID matching. and Next 5 Rx-ing MBoxes for generic CAN IDs. But only for Extended CAN IDs. 

The network has only extended CAN ID (No standard IDs).

 

The system is working for hours and days. There are more than 10 nodes in the systems.

 

Occasionally, the first MB stops receiving the CAN ID suddenly. It is confirmed that the CAN ID is on the networked and transmitted, because it can be received by other nodes. If it happens, that CAN ID will not be received until a software reset.

 

When I debugged into the issue, I found that the interrupt of receiving is not triggered for that specific ID only. Other receiving MBs (9 MBoxes) are still be able to receive the messages. And transmission is also working.

There are no error bits being set. If it is sets, they are cleared at end of the receiving Interrupt ISR, anyway. If this happens, a software reset fixes itself.

 

I also confirmed that the missing CAN ID is not received in any other MBoxes, Because the receiving ISR is not triggered at all.

 

My code is FlexCan based in the installation folder of examples for K60.

 

With your expertise, if you could give me some hints or suggestions that will be a great help to me.

 

Thank you,

David Zhou.

Outcomes