On Wed, Dec 5, 2012 at 8:58 AM, Stefan Tauner <stefan.tauner@xxxxxxxxxxxxxxxxxxxx> wrote: > On Tue, 4 Dec 2012 16:27:00 -0500 (EST) > Alan Stern <stern@xxxxxxxxxxxxxxxxxxx> wrote: > >> I don't think referencing times to SOF packets is the best approach, >> although it probably is the approach that would yield the most >> precision. How precise do you want your synchronization to be? > > It should be below 1ms accuracy, but being more precise does never hurt of > course :) > BTW anyone interested in really accurate USB synchronization should > read the paper "Sub-nanosecond Distributed Synchronisation via the > Universal Serial Bus"; they use custom hardware though. Interestingly you mentioned this article. Back in 2008, we have some discussions about this topic in Microchip forum. http://www.microchip.com/forums/tm.aspx?m=329799 >> Running NTP over a USB-based network link would certainly be the >> easiest solution, if your device can support it. Over the long run, it >> might even be more accurate on average than using SOF packets. > > We are talking about microcontrollers with a few kB RAM at most, so > just cross-compiling any (S)NTP client wont cut it probably :) > So the SOF approach seems to be way more elegant and easy to implement > to me... in theory. > > Another nice property is that SOF packets are sent for every frame in > any case (but errors) and they are broadcasted, which is both > advantageous regarding bandwidth usage and independent of the number of > devices attached. > > Regarding long-term stability/precision i am not sure i can agree with > you. If i throw the same amount of statistics/algorithm complexity at > the SOF scheme and a software-exclusive approach i dont see how the > latter could be better :) You might find some of the information in the Microchip forum helpful. -- Xiaofan -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html