On Tue, Aug 14, 2018 at 10:34 PM Tom Van Baak <[email protected]> wrote: > One version of this would be to make the pulse width 100 ns * (1+STOD), where > STOD (Seconds-Time-Of-Day) varies from 00000 to 86399. So your pulse width > would vary from 100 ns to 8640000 ns = 8.64 ms. If 100 ns is too short use a > range of, say, 1 us to 86400 us (86.4 ms). Maybe there's a reason no one has > implemented this but I always thought it would be a cool self-clocking, > self-identifying, IRIG-like format. And trivial to implement both the sender > and receiver with a microcontroller
I wonder if the self clocking wouldn't be a bit tricky in that you'd have to distinguish very close ratios, e.g. 86398/86399 vs 86397/86398. One downside of this scheme is that it requires handling a range of 86400x in pulse size, not so good if you care about keeping them short. But this is wasteful because the seconds in a day come in a predictable order. I once needed to solve a non-timing related problem of recovering a 48-bit sequence number used for synchronizing a stream cipher with receivers that could tune in at any time but could only spend 8-bits per packet, I solved it using a de Bruijn sequence. Applied here, you'd have two unambiguous pulse lengths and a 2^17 de bruijn sequence. You send pulses based on your position in the sequence. The receiver can unambiguously recover its position after seeing 17 pulses due to the debruijn property. Even short vs long can be clocked from the sequence because every 17 pulses will have a least one of each (except for the time a run of 17 ones or the time 17 zeros come up, but since 2^17 > 86400 you can position this out of the sequence that you're using). 17 might be more than you'd like, but it can be made smaller by having more pulses to distinguish from... so you can get a trade-off between recovery time vs pulses that need to be distinguished. With this added flexibility it might be plausible to add additional data like a small day number field, so even more devices can enjoy the GPS wraparound problems. :P _______________________________________________ time-nuts mailing list -- [email protected] To unsubscribe, go to http://lists.febo.com/mailman/listinfo/time-nuts_lists.febo.com and follow the instructions there.
