Skip to main content
Graduate II
February 13, 2025
Solved

H743 ethernet clocking issue

  • February 13, 2025
  • 3 replies
  • 2607 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

    3 replies

    Graduate
    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-crcAuthor
    Graduate II
    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

    Graduate
    February 13, 2025

    kudos and solution accepted are always welcome - thanks

    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

    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 ..

    matt-crcAuthorAnswer
    Graduate II
    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