Hi everyone,
I have a problem when receiving some CAN messages from other devices. I recently posted a similar question (already solved) maybe this problem is related with that one.
I have 3 different CAN busses, all of them standard frame, reception is made via interruption and sending via polling. The problem is that some messages are not received correctly, this is, the data contained in the messages does not reach the board, or it does but with a huge delay, and then stops receiving again.
I think that this capture from Freemaster will illustrate the problem. The variables at the bottom are from one message, and the variable at the top is from another message. At the red segments the data from the message is frozen or latched, like no incoming messages were being processed. At blue segments the data is received and processed correctly.

There are other times where the messages are received during more time, as in this picture, but the norm is that data keeps unprocessed.

There are some messages that always are sent, and others that are not. I don't know what is causing this problem, but it looks like some blocks are not being executed when they should.
I am not very familiar with Simulink settings. I have tried setting RX subsystems as atomic (maybe pointless) but the problem persists. The same board developed in C (different code but same CAN buses and similar messages) is working perfectly.
I can ensure that other ECUs are sending the correct messages with the correct data as I have checked it with both CANalyzer and Busmaster tools.
BR