cancel
Showing results for 
Search instead for 
Did you mean: 

NUCLEO-F767ZI dead Ethernet, no active line LED's :: SOLVED

Joerg Wagner
Senior III

Hello.

I cannot use Ethernet with my 2 weeks old NUCLEO-F767ZI (chip version Z).

Probably the LAN8742A does not work properly anymore.

After initilization I perform a check:

if (HAL_ETH_ReadPHYRegister(&heth, PHY_BSR, &regvalue)==HAL_OK) {
  if (regvalue&0x04) {
     // cable connected, but with this board never reached
    ...
  }
}

No LED of the connector is active.

The software works on other boards. (Latest FW, etc.)

Is there a chance to rescue the board?

Thank you Joerg

1 ACCEPTED SOLUTION

Accepted Solutions
Joerg Wagner
Senior III

I have a solution for my problem:

Disable Auto negotiation, use Full-Duplex and 100MBit/s.

In HAL_ETH_Init() Auto negotiation returns with HAL_TIMEOUT and is not proper initialized.

View solution in original post

21 REPLIES 21

If the same software works on another board, and if all other aspects of the software do work on this board, it still may be then either the PHY, the magnetics, the RJ socket, or any of the dozen of components around these...

Grab an oscilloscope, and start with the ETH clock (25/50MHz).

JW

Piranha
Chief II

Also try running with/without debugger and do flash mass erase.

Joerg Wagner
Senior III

Software works on 30 other boards.

ETH clock is present, Jumper JP6 and JP7 shortened with solder.

It takes too much time to think about if the PHY is bad.

Board goes into the trash, not the first one.

Thank you for your time.

Piranha
Chief II

Do all boards have the same defect? Maybe MAC address conflicts and switch disabling it's ports?

I have 5 exactly the same boards all working perfectly for about 2 years.

Joerg Wagner
Senior III

No, just one board.

In the past I got rid of boards with chip version A.

I use always the board ID as part of the MAC to avoid this.

Testing means one DHCP server, laptop and board. No other devices.

Piranha
Chief II

Just for a curiosity and to be more sure, you can try my demo firmware:

https://community.st.com/s/question/0D50X0000AhNBoWSQW/actually-working-stm32-ethernet-and-lwip-demonstration-firmware

If it shows IP address in a terminal and you can ping it, then... it gets more interesting. :))

It works. Does it use FreeRTOS?

Joerg Wagner
Senior III

I have a solution for my problem:

Disable Auto negotiation, use Full-Duplex and 100MBit/s.

In HAL_ETH_Init() Auto negotiation returns with HAL_TIMEOUT and is not proper initialized.