Skip to main content
Visitor II
January 15, 2025
Question

NUCLEO-H7S3L8 USB_HS Clock Reset Timeout

  • January 15, 2025
  • 1 reply
  • 1247 views

The USB_OTG_HS peripheral keeps timing out on init and hanging the whole program.

I have created a STM32 project using the NUCLEO-H7S3L8 board from the new project menu. I have enabled the USB_OTG_HS as device only (but left the middleware disabled) and written a simple blinky main. The code always times out on the "MX_USB_OTG_HS_PCD_Init". Specifically USB_CoreReset() times out in "stm32h7rsxx>USB_CoreInit". I have tried multiple different USB clock configurations (HSE, HSE/2 and PLL3Q) but it still times out.

Some people have suggested (Solved: STM32U595 timeout in USB_CoreReset() - STMicroelectronics Community) including the below in "HAL_PCD_MspInit" but STMCube cannot find it and I can't where to include it from

_HAL_RCC_SYSCFG_CLK_ENABLE();

I have included my project.zip but it is just the board default project. I have XSPI1, XSPI2 and ExternalMemLoader disabledExternal disabled., And have enabled the High-Speed Crystal/Ceramic Resonator, the blue LED and the USB_OTG_HS as device only.

I'm really struggling to find a way forward, I would appreciate any guidance.

    This topic has been closed for replies.

    1 reply

    Super User
    January 15, 2025

    > I have enabled the USB_OTG_HS as device only (but left the middleware disabled)

    So just try to set it (in Cube) to the function, you want.

    (I never tried : enable USB , but not setting it to do something)

    On the NUCLEO-H7S3L8 i could try it next days...but not now. (No time now.)

    LinduriAuthor
    Visitor II
    January 15, 2025

    If I set the function it still timeout at USB_CoreReset(). I'm trying to use TinyUSB instead of the STM32 USB Middleware so don't want to set the device function in the IOC.