Fancy satellite simulating hardware would be cool. In the interim, there are a few software simulators we can try to feed out through a HackRF. At the same time, it would be nice to try some other correlators like the gnss-sdr code. And there are probably more tests we can do with the simple sweeping sine trick. Like verifying that received samples have the same sweep frequency as transmitted.
The giant Doppler shift is pretty odd. It would be interesting to put together a sample of two satellite vehicle prn sequences and see if they end up with a matching Doppler shift. If they do, then we can probably just blame the mixer precision in the HackRF. I'll have my HackRF One and Jawbreaker on hard to compare. Maybe it's time to dust off the Noctar too. For the most recent tests, the HackRF One was set for 1.57542GHz at 4.092MS/s. The flow goes directly from File Source (in repeat mode) to osmocom Sink so I'm not doing any intentional frequency shifting. My output from soft-correlator looks the same as yours. $ while :; do cat data/prn1; done | ./soft-correlator # frequency of 1-bits: i-sign 50.0%, i-mag 100.0%, q-sign 50.0%, q-mag 0.0% # SV, S/N ratio, doppler shift (Hz), code phase (chips), sample clock error (chips/s) * 1 766.360819 -0.909289 0.000000 0.000590 # 1 satellites in view; average clock error 0.000590 chips/s I'm looking forward to hacking more on GPS stuff at noon. Who else is going to come? We need all the GPS brains! It seems like we must be really close to tipping this over the edge of making sense and doing what we want. For anyone interested in software defined GPS or the approaches we have been taking to debug it, there is an informal bi-weekly SDR meetup this Monday evening at Ctrl-H. I'll be there and would be happy to talk about the bits I understand and/or hack on GPS stuff more then. If Friday and Monday don't work for your schedule, suggest another time and I'll try to make it. -- Kenny -+---+++-++-++++--+------+-+-++--++--+-+-++--+++-++----+-++-+++---+----+--+----+ On Thu, 2015-06-04 at 10:59 -0700, Jamey Sharp wrote: > Awesome! And nice job on the pretty pictures! > > I think this is strong evidence that we should get access to a real > satellite simulator, soon. > > Though I don't understand why it saw a -14.8kHz Doppler shift. The > original file is a zero-IF sample. Did you set the HackRF at a center > frequency different than 1575.42MHz, or multiply the file sample by a > sine wave, perhaps? That seems outside the range of reasonable clock > errors to me. > > Hey, does your copy of soft-correlator produce the same output mine > does for the looped original prn1? It looks like we didn't push the > change that sets the IF center frequency to 0 instead of 1.95MHz. > > Notice the bogus satellites have very low signal/noise ratios > (although you should be skeptical of my math for computing those, > FYI). Apparently my heuristic is wrong for guessing that a satellite > is visible; I based it on my clock error estimate, and all of that is > something I made up, not something I've seen documented as the usual > way to build a receiver. > > Jamey > > On Jun 4, 2015 10:27 AM, "Kenny" <ke...@romhat.net> wrote: > For all you folks following along at home who want to see some > pretty > pictures, here you go! > > > https://drive.google.com/open?id=1pnFV5MWkx5YR9ZlutetgDrejNG9SZx6Zp6xbdKl48Ps&authuser=0 > > I sometimes have blissful moments of forgetting that Google > wants all of > my data, always. In this particular instance, we may as well > let them > help out. So there is a Google Drive folder linked at the > bottom of the > doc which contains "gpslog_big-outside.raw" along with various > other > files we have been talking about. > > Transmitting the prn1 converted to complex floats through the > HackRF and > grabbing a sample with jGPSv3 correlates! Check out that > signal-to-noise ratio for SV 1!. > > $ ./soft-correlator < data/gpslog_prn1_rx.raw > # frequency of 1-bits: i-sign 51.7%, i-mag 33.6%, q-sign > 48.8%, q-mag 30.0% > # SV, S/N ratio, doppler shift (Hz), code phase (chips), > sample clock error (chips/s) > * 1 601.457508 -14801.532243 253.000000 > 9.611385 > * 2 14.721936 -799.801893 330.000000 > 0.519352 > * 4 15.425549 -6801.062185 669.000000 > 4.416274 > * 11 14.114000 -10801.489275 302.000000 > 7.013954 > * 17 15.250208 2199.254809 77.000000 > -1.428088 > * 24 14.148221 -7794.920364 335.000000 > 5.061637 > * 28 13.145979 14199.180477 545.000000 > -9.220247 > * 30 13.199176 5798.007429 466.750000 > -28.764940 > # 8 satellites in view; average clock error -1.598834 chips/s > > I'm surprised to see that the added noise was enough to > correlate the > pseudo-noise sequence from other satellite vehicles. This was > done in > the basement, so I know it wasn't accidentally picking up any > real > satellites. > > -- > Kenny > > -+---+++-++-++++--+------+-+-++--++--+-+-++--+++-++----+-++-+++---+----+--+----+ > > > >
Description: S/MIME cryptographic signature
_______________________________________________ psas-avionics mailing list firstname.lastname@example.org http://lists.psas.pdx.edu/mailman/listinfo/psas-avionics