Skip to main content
Visitor II
March 31, 2021
Solved

Ethernet example modification for STM32H745I-DISCO

  • March 31, 2021
  • 3 replies
  • 1345 views

I came across this Ethernet example:

https://community.st.com/s/article/How-to-create-project-for-STM32H7-with-Ethernet-and-LwIP-stack-working

It is giving me an issue regarding configuring HSE in bypass mode. The maximum core frequency l can get is 96MHz compared to 400 MHz in the example.

Thank you for any assistance.

    This topic has been closed for replies.
    Best answer by Pavel A.

    > The maximum core frequency l can get is 96MHz compared to 400 MHz in the example.

    This is a known issue. As too often with this forum, it's easier to reply again than search for the original answer.

    Go to RCC parameters and select voltage scale 0. Then it will let you have 400 MHz.

    0693W000008ySimQAE.png 

    > none of the ST provided board examples using BYPASS mode.

    Nucleo boards use BYPASS mode (at least some of them), and all Cube examples for these boards naturally use BYPASS mode.

    -- pa

    3 replies

    Graduate II
    March 31, 2021

    None of the board examples use BYPASS mode, not sure the logic there.

    Make sure HSE_VALUE is 25000000 in the stm32h7xx_hal_conf.h file

    Use the SystemClock_Config() from

    STM32Cube_FW_H7_V1.8.0\Projects\STM32H745I-DISCO\Applications\FatFs\FatFs_Shared_Device\CM7\Src\main.c

    https://www.st.com/content/ccc/resource/technical/layouts_and_diagrams/schematic_pack/group1/e3/ee/b5/14/fe/97/43/3d/MB1381-H745XI-B02_Schematic/files/MB1381-H745XI-B02_Schematic.pdf/jcr:content/translations/en.MB1381-H745XI-B02_Schematic.pdf

    DWill.4Author
    Visitor II
    March 31, 2021

    Thank you for replying.

    You are correct about none of the ST provided board examples using BYPASS mode. I was trying to implement the user created example in the link. Your advice will set the core to 400MHz. What is your opinion on the linkerscript?

    Pavel A.Answer
    Super User
    March 31, 2021

    > The maximum core frequency l can get is 96MHz compared to 400 MHz in the example.

    This is a known issue. As too often with this forum, it's easier to reply again than search for the original answer.

    Go to RCC parameters and select voltage scale 0. Then it will let you have 400 MHz.

    0693W000008ySimQAE.png 

    > none of the ST provided board examples using BYPASS mode.

    Nucleo boards use BYPASS mode (at least some of them), and all Cube examples for these boards naturally use BYPASS mode.

    -- pa

    Graduate II
    April 2, 2021

    Clive is right:

    https://github.com/STMicroelectronics/STM32CubeH7/blob/ccb11556044540590ca6e45056e6b65cdca2deb2/Projects/STM32H745I-DISCO/Applications/FatFs/FatFs_Shared_Device/CM7/Src/main.c#L281

    The value assigned should have been RCC_HSE_BYPASS. Well, that's just one of countless bugs in STM32 broken bloatware.