CAN messages missing random S32k146

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

CAN messages missing random S32k146

1,518 Views
saireddy_saredd
Contributor III

Hi,

I observed strange behavior with S32K146 regarding the CAN messages.

Sometimes only some messages sending via CAN and captured using PCAN.

We are working witm embOS RTOS and the transmit task sending every 100msec. All the messages sending at a time using blocking function. I observed burst transfer and after only one message sending.

I attached the implementation.

Sending Ids: 0x100x, 0x200x

Receiving Ids: 0x300x

Burst tranfer:

saireddy_saredd_0-1697630155010.png

Only one message sending 0x100 and missing Id 0x200x

saireddy_saredd_1-1697630265978.png

EVReady and EVMaxVoltage messages missing in the trace.

saireddy_saredd_0-1697631674781.png

 

Do I need check the Transmit mailbox status before start second transfer function?

 

Best Regards,

Saidhi reddy

 

PetrS 

Martin_ 

Jeremy_He

 

 

Tags (1)
0 Kudos
Reply
1 Reply

1,489 Views
PetrS
NXP TechSupport
NXP TechSupport

Hi,

checking a MB status before calling FLEXCAN_DRV_SendBlocking is not necessarily needed, I think.
FLEXCAN_DRV_SendBlocking is leaving after either message is successfully transmitted or timeout happens. But it is needed the MB interrupt is called and not blocked. Also FLEXCAN_DRV_SendBlocking is checking internal MB's driver state for IDLE at beginning and returns BUSY if not. 
So checking of return value could help here. Also try to not receive messages at all, just sending desired ones to know if all is sent.

BR, Petr

0 Kudos
Reply