AnsweredAssumed Answered

FlexCAN: Is it possible to have an RX FIFO larger than 6 message depth?

Question asked by Kedar Patil on Oct 1, 2019
Latest reply on Oct 15, 2019 by Petr Stancik



I am exploring if the following approach is viable with the FlexCAN module in S32K144. 


I have previously worked with ATSAMC21 controller with the the Bosch M_CAN IP module. With that, it was possible to implement a DMA based RX FIFO of upto 64 Message Depth for Classical CAN message. By doing so, I could run a periodic task to get messages from the FIFO every 10ms without the need of enabling a RX interrupt. This was because the FIFO was big enough to store all the messages for a 10ms period at 500K baud. This would enable the controller to be in a lower power state between two task wake up instances, while not missing any messages.


In the S32K144, it looks like the RX FIFO is only 6 messages deep. This essentially means I cannot go upto 10ms without hitting an interrupt. Is there any way that the FIFO size can be increased to beyond 6 message depth, maybe using DMA? I would really appreciate some inputs in this regard.