Tool/software:
Hi Ti experts,
We experienced random packet lose phenomenon in our application. We checked PDI and SYNC0 arrival time in normal case and packet lose case. And it’s found that PDI is about 90 us before SYNC0 in normal case, which is a happy condition. But when packet lose happens, the PDI is lost in one cycle. *cycle time 4ms.
The following are recordings of Sync0 time - PDI arrival time. You can see the time difference is 4000us larger when issue happens. It means that PDI of one cycle is not triggered.
We want to know when this phenomenon (PDI doesn't arrive) could happen? we are sure it's not MC issue, since other slaves doesn't face this issue at same moment.
Our current implementation uses Sync 0 and PDI interruptions. Also we have a cyclic interrupt whose priority is higher for both sync 0 and pdi.
We suspect some operation in cyclic interrupt cleans the PDI ISR flag. Is there some ECAT register can reflect if PDI arrives physically?