sparkfun / SF32u4_boards

Support files for SparkFun's 32u4-based Arduino-compatible development boards.
70 stars 75 forks source link

8secs delay still present on software reset #6

Closed sej7278 closed 10 years ago

sej7278 commented 10 years ago

Not a bug, more an observation.

Power-on goes straight to sketch, grounding the reset pin goes straight to sketch, but the usual case of setting the serial port to 1200baud and open/closing it still has the 8secs delay like the regular Caterina bootloader.

Shouldn't line 232 of Caterina.c be the same as line 198 ?

mhord commented 10 years ago

At first glance, yes. But consider what happens when a software reset is issued: the application code exits, and the bootloader is entered. When this happens, the device has to re-enumerate on the USB bus, and the PID changes, causing a different driver to be loaded. That process takes time; hopefully less than 8 seconds, since that's all we've allocated!

A side note on this: the first time a 32u4 board is reprogrammed on a Windows machine, the driver loading process frequently takes more than 8 seconds. This can cause all kinds of mayhem, and I don't think there's a way around it.

sej7278 commented 10 years ago

yes i assumed the 8secs was for the switching usb etc. i don't use windows so no device drivers to load. thanks for the explanation anyway.