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.

TMDSCNCD28388D: Ethernet Connection

Part Number: TMDSCNCD28388D
Other Parts Discussed in Thread: C2000WARE

Hello,

I am having some issue in Establishing Ethernet connection.

"Ethernet_ptpSyncPktCount " variable isn't getting updated when I run One Board(TMDSCNF28388D) as master by loading code ethernet_ex5_ptp_offload_slave.c On M4 with cm_common_config_c28x.c on CPU1, Similarly I am running the code ethernet_ex5_ptp_offload_slave.c on other board, connected to each other by ethernet cable. My final goal is to establish Duplex communication using Ethernet.

Can anyone please tell me what I should do?

  • Hi,

    I hope you were able to run example 1 of ethernet which will validate that the clocking and pinmux configurations are done properly.

    Is the ptp ex4 working? 

    Can you first try running ptp ex4.

    What are the values of gPtpMasterState in ethernet_ex4_ptp_basic_master and gPtpSlaveState in ethernet_ex4_ptp_basic_slave after synchronisation.

    In ex5 can you check if there is any packet communication happening between the 2 devices by reading Ethernet_rxInterruptCount, Ethernet_txInterruptCount values.

    You can also use other Ethernet low level driver debug counters to see where is the code getting stuck.

    Regards,

    Yashwant

  • Below are the changes when ex4 was ran
    gPtpMasterState:
    syncTimestamp - secondsFiled lsb is being increased by 1 every second, nanosecondsField is also updated every second,
    delayReqRecvTimestamp:
    SecondsField is increased by 1 every 10sec, so is nanosecondsField
    syncSeqId is updated every second,
    sequenceId from delayReqHeader is also incremented by 1
    gPtpSlaveState: 
    lastSyncSeqld,clockUpdatecount and DelayReqSeqld are getting incremented continuously(though with differnt frequency), lsb of secondsFeild in syncRecvTimestamp and syncOriginTimestamp are also getting incremented, delayMS, delaySM , offsetFromMaster and meanPathDelay are oscillating 


  • Also can you elaborate a bit on the below statement:
    "You can also use other Ethernet low level driver debug counters to see where is the code getting stuck."

  • Ethernet_rxInterruptCount is incrementing whereas Ethernet_txInterruptCount remains unchanged.

  • I am also working on TMDSCNCD28388D board for a project. I have just completed half of my project, now I need to perform duplex communication, communicating these results between two boards. I went through the basic example of loopback and it is working fine in my case. How shall I proceed for my current task of duplex communication?

  • Just like Ethernet_rxInterruptCount there are other debug variables as well, i was referring to them.

    For ex5 can you run the master side node first and then the slave side node.

    As you are saying the counter Ethernet_numRxCallbackCustom is incrementing in the example which means there is communication happening between devices.

    Check the received pPacket->dataBuffer[14] if it has necessary data segments.

    Also there are stack based examples which can be referred for establishing duplex communication.

    Please refer to the document C2000Ware_3_04_00_00\libraries\communications\Ethernet\docs\Ethernet_Examples_Guide.pdf in C2000Ware.

    Regards,

    Yashwant