Skip to main content
Visitor II
August 16, 2022
Question

I am having trouble making a USB-CDC host work on a STM32F407 chip. The primary problem is it seems to get stuck in an endless loop in the CDC state ENUMERATION. I originally built the code using the STM32Cube application.

  • August 16, 2022
  • 1 reply
  • 748 views

I will mention at this point that I am connecting to a known working CDC device. I know it is working because I can connect the same port to a PC, and it enumerates properly, and I can pass data to/from the device.

In module usbh_core.c function USBH_Process() the state HOST_ENUMERATION gets set but fails to complete. That is, the call to 'status = USBH_HandleEnum(phost);' never returns USBH_OK so the process times out and the state gets set back to HOST_IDLE.

Has anyone seen this problem before?

    This topic has been closed for replies.

    1 reply

    Visitor II
    August 26, 2022

    Hello @BBert​ ,

    You can refer to the following example provided under the F4 Firmware Package:

    • Path: Projects\STM32469I-Discovery\Applications\USB_Host\CDC_Standalone

    I hope this helps.

    BeST Regards,

    Walid