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.

RTOS/PROCESSOR-SDK-AM437X: EtherCAT Master error

Part Number: PROCESSOR-SDK-AM437X
Other Parts Discussed in Thread: SYSBIOS, AM4379

Tool/software: TI-RTOS

Hello Everyone,

I am trying to  run acontis ethercat master code  on my AM437x board. The RJ-45 cable connected between AM437x Ethernet port 0 (ETH0) of  and kollmorgan drive. 

CCS Version: 6.2.0.00050 

sdk:processor_sdk_rtos_am437x_3_03_00_06

sys\bios version 6.46.4.53

ethercat slave: kollmorgan drive(S700)

I download ESI.XML file from kollmorgan site and convert this xml file into c as per given in "http://software.acontis.com/EC-Master/2.9/EC-Master_V2.9-ClassB.pdf"(chapter 2.4.1.4.2).

but I got following output on Putty from serial:

SYS/BIOS EcMasterDemo CPSW Sample application
0000000057: Full command line: -auxclk 2000 -v 4 -t 10000 -perf -cpsw 1 1 0 m am 437x-idk
0000000057: Run demo now with cycle time 2000 usec
0000000057: Using AuxClock
0000000057: OsMeasGet100kHzFrequency(): 600 MHz
0000000057: ==========================
0000000057: Initialize EtherCAT Master
0000000057: ==========================
0000000057: EC-Master V3.0.1.12 (Protected) for SYSBIOS Copyright acontis techno logies GmbH @ 2018
0000000063: Port 1, Prio 0, Flags [Polling] [Master], Phy 0, PhyInterface 8, MA C 60:64:05:05:65:5b

0000000063: DMA buffer from uncached ram at 0x80391078
0000000072: VirtAddr: RegBase 0x4a100000, DmaDtorBase 0x4a102000, DmaBase 0x8039 2000
0000000072: PhysAddr: RegBase 0x4a100000, DmaDtorBase 0x4a102000, DmaBase 0x8039 2000
0000000079: CPSW3G found.
0000000079: HW-Id: 0x0019, RTL: 0, Major: 1, Minor: 0xf
0000000079: Tx Version 0x00180109
0000000079: Rx Version 0x00180109
0000000079: CPDMA_Rx_Ch_Map 0x77770000
0000000079: MDIO Version 0x40070106
0000000080: mdio ACK missing
0000000080: mdio reg 2 read error
0000000080: PHY initialization failed
0000000080: EtherCAT network adapter MAC: 60-64-05-05-65-5B
0000000084: CEcConfigXpat::StartElementHandler() - invalid first tag, expected E therCATConfig
0000000084: CEcConfigXpat::Init() Parse error at line 4 col 0
out of memory
0000000084: Data Length 691525 CurrentLength 6912
0000000084: ecatInitMaster() Cannot create EtherCAT device!
0000000084: ConfigLoad() Cannot initialize Master Stack!
0000000084: Disable running RX-DMA
0000000084: RX+TX DMA disabled. Delay 500
0000000084: ConfigureMaster(2, --, 691525) = ERROR: Wrong format of master XML f ile
0000000084: Cannot configure EtherCAT-Master: ERROR: Wrong format of master XML file (0x9811001b))
0000000084: ========================
0000000084: Shutdown EtherCAT Master
0000000084: ========================
0000000085: ==================================================================== ========
0000000085: PerfMsmt 'JOB_ProcessAllRxFrames' (min/avg/max) [usec]: 0.7/ 6. 5/ 6.6
0000000085: PerfMsmt 'JOB_SendAllCycFrames ' (min/avg/max) [usec]: 0.3/ 3. 4/ 3.5
0000000085: PerfMsmt 'JOB_MasterTimer ' (min/avg/max) [usec]: 0.3/ 20. 7/ 21.2
0000000085: PerfMsmt 'JOB_SendAcycFrames ' (min/avg/max) [usec]: 0.3/ 2. 8/ 2.9
0000000085: PerfMsmt 'Cycle Time ' (min/avg/max) [usec]: 388.5/ 413. 6/2001.9
0000000085: PerfMsmt 'myAppWorkPd ' (min/avg/max) [usec]: 0.8/ 1. 9/ 1.9
0000000094: EcMasterDemo stop.

So,Is anything going wrong? Please, suggest solution.

Thanks

  • Hi Sayali, I think your error is w.r.t ENI file. You need to convert ESI.xml file to an ENI.xml file, and then convert  the new ENI.xml to a "c" file by following "http://software.acontis.com/EC-Master/2.9/EC-Master_V2.9-ClassB.pdf"(chapter 2.4.1.4.2).

    I believe your question, is related to this other E2E. In that thread I added a link to a how-to-video on which you can see how to convert from ESI to ENI and xml file using EC-Engineer (4:38 - 6:02min). 

    A recommendation, servo slaves are quite complex, and not that easy to setup. I would suggest you first establish EtherCAT communication between an AM4379 IDK a simpler IO slave, and later, when things are working OK, and you are more familiar with the setup, you repeat the same exercise with your servo.

    Also, a question, have you get your servo working with TwinCAT3? This could be also a good starting point.

    thank you,

    Paula