Skip to main content
Explorer
December 30, 2020
Question

STM32H723 Hangs on Ethernet... Bug?

  • December 30, 2020
  • 5 replies
  • 4898 views

Hello!

I got a new STM32 Nucleo-H723ZG, now i am testing about many days, but i have a big Problem, is use the new Stm32CubeIDE 1.5.2 with actually Firmware for the MCU.

The Problem is, i loaded a new Cube Project with Default Values, for the Board without any Changes, now when i run or debug my project, hangs my MCU on this Code:

HAL_ETH_Init:
 
 /* Ethernet Software reset */
 /* Set the SWR bit: resets all MAC subsystem internal registers and logic */
 /* After reset all the registers holds their respective reset values */
 SET_BIT(heth->Instance->DMAMR, ETH_DMAMR_SWR);
 
 /* Get tick */
 tickstart = HAL_GetTick();
 
 /* Wait for software reset */
 while (READ_BIT(heth->Instance->DMAMR, ETH_DMAMR_SWR) > 0U)
 {
 if(((HAL_GetTick() - tickstart ) > ETH_SWRESET_TIMEOUT))
 {
 /* Set Error Code */
 heth->ErrorCode = HAL_ETH_ERROR_TIMEOUT;
 /* Set State as Error */
 heth->gState = HAL_ETH_STATE_ERROR;
 /* Return Error */
 return HAL_ERROR;
 }
 }

i got an HAL_ERROR, and the MCU Goes to from the Main Function to the Error_Handler...

What is the Problem? This code is generated from the MxCube and its unchanged...

Thanks,

Daniel

    This topic has been closed for replies.

    5 replies

    Super User
    December 30, 2020

    Please try an example from Cube package for your board: this or others:

    https://github.com/STMicroelectronics/STM32CubeH7/tree/master/Projects/NUCLEO-H723ZG/Applications/LwIP/LwIP_UDP_Echo_Server

    (If you have downloaded Cube H7 package to your machine, it is already on your machine).

    These examples are known to work much better than Cube generated code.

    -- pa

    Visitor II
    January 21, 2021

    Hi Pavel,

    Just directly build and upload the firmware? NO other changes required?

    Please suggest.

    Thanks and Regards,

    JM

    Visitor II
    November 17, 2021

    Hello all,

    I'm running into the same trouble than explain above by Sany.

    To be more precise I do have a bunch of hardware and some of them are not working due to this issue while the other part is running properly.

    Does someone solve it ? Many thanks

    Edit: I'm running an STM32H750 chip

    Super User
    November 17, 2021

    STM32H750's closest relatives are STM32H753 and 743.

    Look for examples for boards with these chips.

    Explorer II
    November 17, 2021

    Hi,

    This may not be the answer, but I had a problem with H743 DMA from uart and it turned out to be something really simple:

    Regeneration with the .ioc places these in the wrong order:

     MX_GPIO_Init();

     MX_DMA_Init();

     MX_USART3_UART_Init();

    Correct order shown above.

    Hope this helps someone!!

    Chris

    Visitor II
    January 6, 2023

    check phy clk or rst0693W00000Y7Y9vQAF.png0693W00000Y7YAeQAN.png

    Visitor II
    July 3, 2023

    Hi DFell.1

    Have you solved this problem yet?

    I'm using Stm322h750 with custom board, and when active the ETH RMII, program runs into Error_Handler() and all other functions not working.