Hi everyone,
I'm working with the SOES stack on the EVB_LAN9252_SPI_ATSAM51J19A board and using TwinCAT as the EtherCAT master.
I’ve successfully configured and tested RxPDOs with:
One uint32_t variable, or
Two uint16_t variables
In both cases, the slave enters OP state and the RxPDO values are updated correctly in TwinCAT.
However, when I try to:
Map two uint32_t variables, or
Map more than two uint16_t variables
…the slave still reaches OP state, but RxPDO values stop updating in TwinCAT. The only way to get them to update again is to reset the microcontroller.
The ESI XML and object dictionary are correctly aligned with the SOES configuration. I’ve verified the SyncManager sizes and the PDO mapping seems valid.
Has anyone experienced similar behavior? Could this be related to buffer alignment, SyncManager size, or something specific to the LAN9252 or ATSAM51 SPI implementation?
Any help or suggestions would be greatly appreciated!
Thanks in advance!