2
\$\begingroup\$

I'm using the GD32F205 microcontroller and its internal USB bootloader.

I have set up the connections similar to GD32207C-EVAL evaluation board. In particular, BOOT0 is high, BOOT1 is low and external 8 MHz crystal is connected. This should activate the internal USB bootloader.

When connected, the device fails to enumerate several times, but then succeeds after more than 20 seconds. The error messages look like this:

usb 1-4: new full-speed USB device number 17 using xhci_hcd
usb 1-4: Device not responding to setup address.
usb 1-4: Device not responding to setup address.
usb 1-4: device not accepting address 17, error -71
\$\endgroup\$

1 Answer 1

2
\$\begingroup\$

After testing with a signal generator, I figured out that the USB bootloader works best with 25 MHz crystal. With that frequency it enumerates immediately.

With 8 MHz crystal the enumeration works after a delay, and with 12 MHz crystal it does not work at all.

(I did not find this fact documented anywhere, so I'm posting this Q&A here. For comparison, STM32 DFU bootloader works quickly with any integer crystal value 4-25 MHz.)

\$\endgroup\$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.