It looks like you're new here. If you want to get involved, click one of these buttons!
I was wondering, would it be possible to increase the TDoA accuracy if I connected an external 10MHz GNSS-disciplined rubidium standard to the KiwiSDR? Is there an intended, designed input for a better time signal?
I'm not an expert, but I think the short answer is no.
Forgetting about GPS time-stamping of the IQ samples for the moment, one thing the GPS does is correct for any error in the ADC clock. Improving the characteristics of that clock doesn't really matter. Maybe a clock with an improvement in the short term Allan variance (frequency stability) would be of some use. I don't know. Glenn will have something to say about this since he's done exactly what you're proposing (attaching an external Rb frequency standard).
The Kiwi has no provision for attachment of an external 1 PPS input from a GPS receiver that is specifically designed to be a timing receiver (such a distinction exists). That said, the performance of the positioning (hence timing) of the current code, thanks to Christoph's work, is pretty good. The best way to maximize GPS performance is by using a GPS active timing antenna mounted outside in the clear using good low-loss feed line.
There are many other factors that influence the accuracy and resolution of the TDoA solutions. See Christoph's 2019 SDRA talk for full details: https://www.youtube.com/watch?v=LpFoM_lBgxg
The other important point to realize is that Kiwi TDoA is not a "push button" application. It takes an amount of skill, repetition and luck to get good results, especially at HF. Professional SIGINT personnel go through considerable training to be able to manage the tools they have and interpret the results.
I agree with @jks. The dominant source of error is ionospheric propagation. In addition, not all KiwiSDRs report their position accurately, i.e., their positions are either put manually by the owners or get rounded in order not to reveal the exact location of a given KiwiSDR.
Also consider the fact that one sample at 12000 samples/sec corresponds to 25 km, and the bandwidth of most signals on shortwave is less than 12 kHz. So if the bandwidth of a signal is 3 kHz the corresponding pseudo-range resolution is 100 km.
Having said that, it would be interesting to compare the stability of the KiwiSDR GNSS-derived timestamps w.r.t. ones from a GNSS-disciplined rubidium standard.
I know very little about the TDoA algorithm but I suspect both @jks and @Christoph are correct. Between the limited bandwidth and especially ionospheric propagation, typical Kiwi clock imperfection probably does not become an issue.
For an appreciation of this, you are welcome to examine the phase of one of NIST's transmitters received via a visual line-of-sight 20km path and displayed on a Kiwi having a ~.1 ppb (1e-10) GPS-disciplined external clock:
(1) N6GN External Clock WWV15
and by a different 'stock' GPS-corrected Kiwi at the same distance and also not receiving via the ionosphere:
(2) N0EMP Kiwi GPS WWV15
Then have a look at a time/frequency signal via the ionosphere, CHU on 14670 kHz
(3) N6GN CHU 14670
or if conditions don't permit, perhaps 7850 kHz
N6GN CHU 7850
Whether or not the the phase wander from the standard Kiwi in (2) causes significantly extra error compared to the bandwidth and sample-length restrictions and ionospheric variations would need to be examined more closely but I rather doubt it. Thus, improving the Kiwi's local clock probably wouldn't make much difference in the TDoA accuracy or resolution.
I think this is the primary reason that long-distance HF standard frequency transmissions tend to be only useful to .1 ppm. 1e-7, or so. Even though as-transmitted error may be 1e-12 the ionospheric path length is varying too much, particularly near the MUF for better accuracy.
That is a great demo Glenn