Part Number: TMS320F28P650DK
Other Parts Discussed in Thread: C2000WARE
Hi TI experts,
We have an application that we use TMS320F28P650DK to replace our old product. We found an issue that the new device cannot go OP using the old XML.
We identify the issue is that, the EtherCAT Master cannot read the SDO response if SM1 length is Odd.
The configuration of our old xml is like follows,

The start address of SM1 is 0x1110 and length is 253. The final byte is odd address. When the length is changed to 252, then the drive can go OP.
We are using beckhoff SSC stack. In function MBX_CopyToSendMailbox() in file mailbox.c, there is HW_EscWriteWord(u16dummy,(u16EscAddrSendMbx + u16SendMbxSize - 2));
that writes final dummy byte to SM1. We are able to identify that, if (u16EscAddrSendMbx + u16SendMbxSize - 2) is even, ESC register 0x80c, memory 0x50406 becomes 0x0232, that successfully read by host, after this line is executed.
Buf if (u16EscAddrSendMbx + u16SendMbxSize - 2) is odd, memory 0x50406 stays 0x8032, that SM1 is still in written. Which blocks host to read the SDO response.
This is a quite important application that some of the customers are reluctant to change XML, as old drives are still in use.











