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.

DP83TC811S-Q1: detect the openand short status of the Ethernet in real time

Part Number: DP83TC811S-Q1

Hi Team,

My customer need to detect the open circuit and short circuit status of the Ethernet in real time:

  • Will it affect the normal communication of DP83TC811S by polling and reading 0x001E and 0x016B registers in a cycle of 1 second?

Operation steps:

1. Write 0x001E bit15=1 Start cable measurement
2. Read the value of 0x016B, and when bit9 is valid, use bit8 to judge the open and short circuit status of the Ethernet.

The reason why we ask this question is because customer found that when they run OPEN/SHORT Detection, the communication will stop. After the OPEN/SHORT Detection, the communication become normal again.

So may I ask how do you recommend customer to run TDR(OPEN/SHORT Detection)?  How to make DP83TC811S-Q1 not affect normal communication transmission even in the process of diagnosis(OPEN/SHORT Detection)?

Thanks!

  • Hi Amelie,

    Running the TDR through register 0x001E will disrupt the normal operation and link status of the PHY. You will not be able to use TDR during normal operation, it is intended as a diagnostic tool when link is down to evaluate the quality of the cable.

    If you were to experience a cable open or short event during normal communication, the link will drop since the device is not able to communicate with the link partner. When the link is dropped, you can run the OPEN/SHORT detection to determine if that is indeed the cause of the link drop. Another diagnostic tool, the Signal Quality Indicator, allows for real time evaluation of the link quality during normal operation. You can use this data to determine if the cable link is deteriorating during communication.

    Regards,
    Justin 

  • hi  team:

    1 thanks  for your tips .if so ,the check steps has been rearranged . The follow is pseudo-code using C  program .

    while(true) {

    if(link_value==no_link) then    //  LSR Register 0x0133  bit12

         if(SQI_value==No Link) then //  0x0198

       Start cable measurement; //0x001E

       get_OPEN_SHORT_value; //0x016B

     sleep(five_seconds);

    }

    thanks .

  • Hi Jack,

    That looks acceptable. I may recommend removing the LSR Register statement, as it is redundant with the SQI value.

    Regards,
    Justin