Post Go back to editing

ADIN1200 EtherCAT issue

Category: Hardware
Product Number: ADIN1200

Hello there,
I'm trying to create a EtherCAT slave device based on XMC4800 and ADIN1200. I've generated a firmware according to the "Getting started with XMC4800 EtherCAT" video tutorial (LINK ) on YouTube. Unfortunately there is no connection with the device.

On the oscilloscope, I can see that there are some packages coming from the PC at intervals within about one second. However, the LINK and LINK_ACK LEDs are off and also there is nothing on the MII lines. LINK_ST stays at logic LOW...

All the clocks are present. Voltages are stable. Reset is HIGH (3.3V)

My schematic is based on the Relax kit datasheet. (LINK )

Can somebody give me a clue what could gone wrong?

Please check screenshots below! 

Best regards!

  

  • Hi Dimitrov,

    Would you be able to provide a register dump from registers 0x00 to 0x1F for both of the devices to help point in the direction of the problem achieving a link? You can share these files through PM if  you like.

    The Link Status / PHY_CFG1 pin does not appear to have and external strapping resistors, can you confirm this? The PHY_CFG1 pin does not have any internal pull downs so it must have external strapping resistors.

    Resistors R3, 4, 39 and 40 are marked as DNP on the schematic, can you confirm these are not on place on the board.

    Regards,

    Mark

  • Exactly, remove all DNI, then add a 10k pull-down resistor for PHY_CFG1.
    I did so and it worked.

  • Hello Mark, 

    Thank you for your answer!
    I added the pulldown resistors, but there is no improvement so far.

    You can find the register dump in the table below. Both PHYs (0 and 1) have the same configuration.

    Register address PHY0
    0x0000 0x3000
    0x0001 0x7949
    0x0002 0x283
    0x0003 0xBC20
    0x0004 0x1E1
    0x0005 0x0
    0x0006 0x64
    0x0007 0x2001
    0x0008 0x0
    0x000A 0x0
    0x000F 0x0
    0x0010 0x0
    0x0011 0x0
    0x0012 0x602
    0x0013 0x1041
    0x0014 0x0
    0x0015 0x1
    0x0016 0x308
    0x0017 0x3048
    0x0018 0x0
    0x0019 0x0
    0x001A 0x300
    0x001B 0x1
    0x001C 0x210A
    0x001D 0x1855
    0x001F 0x3FC

    I'll double check the DNI resistors a little bit later.

    Best regards,

    Dimitrov

  • You should compare your schematic and INFINEON's schematic, then do not add DNI Components.
    Check ECAT.PO.LINK, it should be at pin C of BCR108.

    Note. You need to add 10k pull-down resistors in both ADIN1200 at pin PHY_CFG1.

    Additionally, you don't need to change any source code. It will work fine