AnsweredAssumed Answered

Weird USB enumeration issue

Question asked by nikolaou.christos on Jul 18, 2016
Latest reply on Jul 21, 2016 by nikolaou.christos
Hi,

Got a weird enumeration issue on a USB device in my USB host implementation.
Using STM32F746Discovery with CMSIS/HAL, re-utilising one of the provided USBHost library examples.

I have a specific external USB device that enumerates ok in all windows/linux systems.

Need to access that same USB device from the STM32F7 host.
For that I re-use one of the provided examples, eg the HID_RTOS.

The weird problem comes to this:
When I have the USB device pre-plugged and starting up/booting the STM32F7 board, it does enumerate ok.
When I have the USB device not plugged on the STM32F7 during board's inital boot and try to plug it in later, it does not enumerate! (I see though that STM32F7 gets an interrupt)

The mentioned USB device, gets power from the USB port and its a low speed ATTiny.

I have a feeling that there might be a chance that due to some weird speed issue the USB device cannot respond in time when it gets power upon plugged-in, but after some 200/300ms it ramps up speed and its ok.

Since I cannot modify  the USB device, is there any way to modify the USB host layer in STM32F7 in order to accept a bit delayed enumeration request?

Christos

Outcomes