View Single Post
Old 08-29-2012, 01:33 PM   #137
geekmaster
Carpe diem, c'est la vie.
geekmaster ought to be getting tired of karma fortunes by now.geekmaster ought to be getting tired of karma fortunes by now.geekmaster ought to be getting tired of karma fortunes by now.geekmaster ought to be getting tired of karma fortunes by now.geekmaster ought to be getting tired of karma fortunes by now.geekmaster ought to be getting tired of karma fortunes by now.geekmaster ought to be getting tired of karma fortunes by now.geekmaster ought to be getting tired of karma fortunes by now.geekmaster ought to be getting tired of karma fortunes by now.geekmaster ought to be getting tired of karma fortunes by now.geekmaster ought to be getting tired of karma fortunes by now.
 
geekmaster's Avatar
 
Posts: 6,433
Karma: 10773670
Join Date: Nov 2011
Location: Multiverse 6627A
Device: K1 to PW3
Quote:
Originally Posted by knc1 View Post
...
It is hard to imagine that USB can't transfer 32 packets in even the 1/2 second minimum time setting.
There is some useful information about USB timing and latency here:
http://www.ftdichip.com/Support/Docu...atencyFlow.pdf

Of particular interest is this quote: "From this it can be seen that small amounts of data (or the end of large amounts of data), will be subject to a 16 millisecond delay when transferring into the PC."

When taken with the fact that the RAM kernel code only services the watchdog timer every 32 packets, 16msec*32 = 512msec (more than 1/2 second), and there can be additional delays if there are multiple USB devices such as a USB mouse, USB keyboard, or USB mass storage device (especially if the file being flashed is on USB storage).

It appears that my previous suggestion to service the watchdog every 8 packets (or perhaps even every packet) is absolutely required here.

Of course, I only skimmed that USB document, so it may be more complicated than what I suggested above.

Last edited by geekmaster; 08-29-2012 at 02:24 PM.
geekmaster is offline   Reply With Quote