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.

AM6442: Ethercat Slave Simple Demo not Working on custom board.

Part Number: AM6442
Other Parts Discussed in Thread: SYSCONFIG

Hello,
I am trying to test the "Ethercat Slave Simple Demo" on one of our custom boards.
I have already tested the example on the AM64x EVM. Here the Ethercat Slave is recognized correctly. For Testing I use EC Engineer. The SDK I use is "ind_comms_sdk_am64x_09_00_00_03"
The setup of our custom board differs as follows:

  • I use the DP83848IVV/NOPB twice as phy and have configured these according to the Ethercat specifications. Both phys are recognized correctly.
  • I use the ICSSG0 instead of the ICSSG1 and set the correct pin config in the sysconfig.
  • MII0_RXLINK has a different polarity for the Phy. The polarity was adjusted as follows:
    #define ECAT_PHYPOLINVERT_IN (false)
    #define ECAT_PHYPOLINVERT_OUT (false)

I have ensured that the Ethercat data arrives correctly at the MII interface of the AM64:
MII_RXD0:3 -> Data measured
MII_RXCLK -> Clock correct
MII_RXER -> no errors
MII_RXDV -> Data valid
MII_TXCLK -> Clock correct

By initializing the example I get the following output which also looks correct:

Local Implementation
Pruicss  max =3 selected PRU:3
Did Map 0x30000000 len 0x2000 to 0x30000000 (dram0)
Did Map 0x30002000 len 0x2000 to 0x30002000 (dram1)
Did Map 0x30034000 len 0x4000 to 0x30034000 (iram0)
Did Map 0x30038000 len 0x4000 to 0x30038000 (iram1)
Did Map 0x30010000 len 0x10000 to 0x30010000 (shdram)
Did Map 0x30022000 len 0x400 to 0x30022000 (control0)
Did Map 0x30024000 len 0x400 to 0x30024000 (control1)
Did Map 0x30020000 len 0x2000 to 0x30020000 (intc)
Did Map 0x30026000 len 0x2000 to 0x30026000 (cfg)
Did Map 0x30028000 len 0x2000 to 0x30028000 (uart0)
Did Map 0x3002e000 len 0x2000 to 0x3002e000 (iep)
Did Map 0x30030000 len 0x2000 to 0x30030000 (ecap0)
Did Map 0x30032000 len 0x400 to 0x30032000 (mii_rt)
Did Map 0x30032000 len 0x1c00 to 0x30032000 (mdio)
Phy Reset: 9.3
Phy Reset: 9.4
pRegPerm = 0x30002000, dram1=0x30002000, offset = 0x00000000, size = 0x00001400
PRU ESC: Rev 0690 | Bld 050F | INTC base: 0x30020000 , id = 0x4e82a900
INTC.HIDISR addr: 0x30020038
RxPDO created 0x1600: 0x700e0fc0
RxPDO created 0x1601: 0x700e10c8
TxPDO created 0x1A00: 0x700e1160
TxPDO created 0x1A01: 0x700e1268
DTK_EEPROM_emulationPrepare:710: Set CatSyncMan[1]:sa=0x1000, len=0x100, ctrl=0x
DTK_EEPROM_emulationPrepare:719: Set CatSyncMan[2]:sa=0x1100, len=0x100, ctrl=0x
DTK_EEPROM_emulationPrepare:728: Set CatSyncMan[3]:sa=0x1200, len=0xc00, ctrl=0x
DTK_EEPROM_emulationPrepare:745: Set CatSyncMan[4]:sa=0x1e00, len=0xc00, ctrl=0x
EC_SLV_APP_SS_populateDescriptionObjectValues:1370 PDO Out Len: 0x40
Phy Reset: 9.3
Phy Reset: 9.4
Phy UnReset: 9.3
Phy UnReset: 9.4
Configure Phy bits: PhyAddr:16, LinPol:LOW, PhyAddr:17, LinPol:LOW, (0x30000)
DP83869 detected: 536894608
DP83869 detected: 536894608
PRU_PHY_detect:185 Phy 16 alive
PRU_PHY_detect:185 Phy 17 alive
PHY Disable Magnetics
PHY Enable Magnetics

****EC Slave*********************************************************
Numeric Version: 0x00010D00
Friendly Version: <KB EC Slave Stack v00.01.13.00>
Source Id: <580c65b05ff2113ca998c2196c8b880ca78b97d5>
****HWAL*************************************************************
Numeric Version: 0x00010006
Friendly Version: <KB HWAL v00.01.00.06>
Source Id: <d02dbbf5128782bf7b4950829445f4a19367be60>
****OSAL*************************************************************
Numeric Version: 0x00010101
Friendly Version: <KB OSAL v00.01.01.01>
Source Id: <03bbc16a6a8f13bd1eba7bb4f12d17a7df85b3df>
*********************************************************************
State change: 0x0 -> 0x1
SSC_checkTimer:MaxD:9519910 (9)
SSC_checkTimer:MaxET:52
SSC_checkTimer:MaxD:9999100 (9)
SSC_checkTimer:MaxD:9999590 (9)
SSC_checkTimer:MaxD:10000665 (10)
SSC_checkTimer:MaxD:10001115 (10)
SSC_checkTimer:MaxD:-1990770632 (2304)

The problem is that the MCU does not send any response to the Request via MII_TXD0:3 and MII_TXEN is also not active. Can you tell me where my configuration could be faulty and what steps I can take for further diagnosis?

Many thanks in advance.

Best regards
Christian Eissler