This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

AM625: EtherCAT PDOs SM2&SM3 DefaultSize = 0

Part Number: AM625

Hi Team,

I use AM62 as EtherCAT master, AM64 as EtherCAT slave.

Why AM64 PDOs SM2&SM3 DefaultSize = 0? Is this setting reasonable?

 

root@am62xx-evm:~# ethercat cstruct -p 0
/* Master 0, Slave 0, "TI EtherCAT Toolkit for AM64X.R5F"
 * Vendor ID:       0xe000059d
 * Product code:    0x54490022
 * Revision number: 0x00010000
 */

ec_pdo_entry_info_t slave_0_pdo_entries[] = {
    {0x2000, 0x02, 8},
    {0x2000, 0x03, 8},
    {0x2000, 0x04, 16},
    {0x2000, 0x01, 32},
    {0x2002, 0x02, 8},
    {0x2002, 0x04, 16},
    {0x2002, 0x03, 8},
    {0x2002, 0x01, 32},
};

ec_pdo_info_t slave_0_pdos[] = {
    {0x1600, 3, slave_0_pdo_entries + 0},
    {0x1601, 1, slave_0_pdo_entries + 3},
    {0x1a00, 3, slave_0_pdo_entries + 4},
    {0x1a01, 1, slave_0_pdo_entries + 7},
};

ec_sync_info_t slave_0_syncs[] = {
    {0, EC_DIR_OUTPUT, 0, NULL, EC_WD_DISABLE},
    {1, EC_DIR_INPUT, 0, NULL, EC_WD_DISABLE},
    {2, EC_DIR_OUTPUT, 2, slave_0_pdos + 0, EC_WD_ENABLE},
    {3, EC_DIR_INPUT, 2, slave_0_pdos + 2, EC_WD_DISABLE},
    {0xff}
};

root@am62xx-evm:~# ethercat pdos

SM0: PhysAddr 0x1000, DefaultSize  256, ControlRegister 0x26, Enable 1

SM1: PhysAddr 0x1100, DefaultSize  256, ControlRegister 0x22, Enable 1

SM2: PhysAddr 0x1200, DefaultSize    0, ControlRegister 0x64, Enable 1

  RxPDO 0x1600 "RxPDO"

    PDO entry 0x2000:02,  8 bit, "i2c-leds"

    PDO entry 0x2000:03,  8 bit, "SubIndex 3"

    PDO entry 0x2000:04, 16 bit, "SubIndex 4"

  RxPDO 0x1601 "RxPDO2"

    PDO entry 0x2000:01, 32 bit, "SubIndex 1"

SM3: PhysAddr 0x1e00, DefaultSize    0, ControlRegister 0x20, Enable 1

  TxPDO 0x1a00 "TxPDO"

    PDO entry 0x2002:02,  8 bit, "SubIndex 2"

    PDO entry 0x2002:04, 16 bit, "SubIndex 4"

    PDO entry 0x2002:03,  8 bit, "SubIndex 3"

  TxPDO 0x1a01 "TxPDO2"

    PDO entry 0x2002:01, 32 bit, "SubIndex 1"