Skip to main content
matt-crc
Senior III
February 13, 2025
Solved

H743 ethernet clocking issue

  • February 13, 2025
  • 23 replies
  • 2693 views

Hello,

I started a new project using the H743, ethernet, LAN8742 and NetXDuo (on one of our custom boards).  Its a very simple project that initializes the hardware, initializes AzRtos, ThreadX, and NetXDuo, and starts TCP, UDP, and ICMP.  This project is just a base (Starting point) for much bigger projects.  When connected to the network, i can ping the board, it can either use a static IP or  the DHCP client.

The strange part is that the software works when the clock configuration is set to 400MHz.  If I try to set it to 480MHz, NetXDuo doesn't receive any packets from the network.  At 480MHz, the phy is working properly and it detects (prints a line) stating the status of the ethernet cable (plugged in / unplugged). The phy is sending a 50mhz clock to the H743, so I don't understand why the MCU works at 400 but not 480.   Anyway, I've been pulling my hair out trying to figure out why it doesn't work.  Everything in the Clock Configuration looks ok and CubeIDE does not complain about any of the values entered.  Does anyone have any clue or suggestions as to why it doesn't work at 480MHz?

Thanks

Matthew

This topic has been closed for replies.
Best answer by matt-crc

Hello,

Ok, we found the problem. At 400 Mhz the ethernet runs without issue, at 480MHz it doesn't work at all. When we increased the pin drive on all the ethernet pins, it started to work at 480mhz. Not sure why this happens since the RMII interface runs from the same 50MHz phy clock.

Thanks for the multiple responses and help

Matthew

23 replies

mbarg.1
Senior III
February 13, 2025

I am currently running several projects all @480mhz, and they all perform 100%.

I share an .ioc file that you can compare with your setup.

There is no reason why it should not work BUT some early nucleo boards had beta devices limited to 300 MHz - check your hw,

 

matt-crc
matt-crcAuthor
Senior III
February 13, 2025

Hi @mbarg.1 

I found an errata that says there is a hardware problem with some revisions of this chip.  Cannot go above 400MHz...

mattcrc_0-1739428556645.png

I think we recently purchased these chips from distribution....  

Matthew

mbarg.1
Senior III
February 13, 2025

kudos and solution accepted are always welcome - thanks

mƎALLEm
ST Technical Moderator
February 13, 2025

Hello,

As it's generated with CubeMx/CubeIDE I don't think there is an issue in the clock config and indeed rev V can reach 480MHz with VOS0.

I'm not expert of ETH but does the product run with a simple example at 480MHz? What is the product package are you using?

See also this errata:

SofLit_0-1739447426156.png

To give better visibility on the answered topics, please click "Best answer" on the reply which solved your issue or answered your question.
mƎALLEm
ST Technical Moderator
February 13, 2025

@mƎALLEm wrote:

See also this errata:

SofLit_0-1739447426156.png


Ok I see you are using LAN8742 (RMII) so you are not in this errata ..

To give better visibility on the answered topics, please click "Best answer" on the reply which solved your issue or answered your question.
matt-crc
matt-crcAuthorBest answer
Senior III
February 16, 2025

Hello,

Ok, we found the problem. At 400 Mhz the ethernet runs without issue, at 480MHz it doesn't work at all. When we increased the pin drive on all the ethernet pins, it started to work at 480mhz. Not sure why this happens since the RMII interface runs from the same 50MHz phy clock.

Thanks for the multiple responses and help

Matthew