Skip to main content
jvavra
Associate III
March 19, 2014
Question

Where Does a USB Device ACK Requests From Host?

  • March 19, 2014
  • 1 reply
  • 638 views
Posted on March 19, 2014 at 13:31

I've got a STM32F427 running as a USB device (HS, if that matters). Using a USB analyzer, I can see that the request from the host to set a device address is getting to the micro, but it fails to ACK the SETUP packet. I can't locate the function in the standard library that generates the ACK, nor does it seem to be something simply tacked on to the end of processing requests (such as USBD_SetAddress). Can anyone clarify where this is done?

Thanks!

#stm32-usb
This topic has been closed for replies.

1 reply

chen
Associate II
March 19, 2014
Posted on March 19, 2014 at 16:57

Hi

'' I can't locate the function in the standard library that generates the ACK, nor does it seem to be something simply tacked on to the end of processing requests (such as USBD_SetAddress). Can anyone clarify where this is done?''

Errrm - no I do not exactly.

''I've got a STM32F427 running as a USB device (HS, if that matters).''

Strictly not true if the USB comms is failing to the ACK to each packet!

Try checking the clock setup for the STM32 USB peripheral. The USB peripheral MUST have a 48Mhz clock to be able to accurately do timing for USB packet bits.