Observation gaps or momentary loss occasionally causes large, transient, unphysical fixed RTK solutions. #183
Description
Occasionally, while tracking satellites below some elevation threshold (< 10 deg), momentary observation gaps of a single sample or more for a particular satellite will cause the RTK position solution to jump by some unphysical amount (10s kms within a few sample periods). Sometimes, the discrepancy will be several centimeters. Sometimes, this might cause IAR activity, otherwise not.
Here's an example from a test log at 2015-07-07_20-47-11 for @henryhallam 's ephemeris sanity checks (v0.18-21-gbcf1c76). Here, the SPP solution degrades, but the baseline solution totally chokes. RAIM will probably make this disappear, but this still seems like really buggy behavior.
The source for this image is here: https://github.com/swift-nav/investigations/blob/master/piksi/fixed2float/v0.19/v0.18-21-gbcf1c76.ipynb
And a closeup of that same time interval:
logs ------
approx_gps_time
2015-07-07 20:39:14.026341 ERROR: PRN 28 TOW mismatch: 247153960, 604795200
2015-07-07 20:39:14.242341 INFO: IAR: updates to 1
2015-07-07 20:39:14.243341 INFO: After projection, num_sats = 7
2015-07-07 20:39:14.941340 ERROR: PRN 28 Nav phase flip - half cycle slip...
2015-07-07 20:39:14.942340 INFO: PRN 28 subframe parity mismatch (word 2)
2015-07-07 20:39:15.241340 INFO: Disabling channel 1 (PRN 23)
2015-07-07 20:39:15.533339 INFO: acq: PRN 18 found @ 2747 Hz, 20 SNR
2015-07-07 20:39:15.635339 INFO: IAR: updates to 1
2015-07-07 20:39:15.636339 INFO: After projection, num_sats = 6
Name: text, dtype: object
------
There are plenty more examples of this@ https://github.com/swift-nav/investigations/blob/master/piksi/fixed2float/v0.19/fixed2float_categorizations_july_5.ipynb.
See also:
/cc @fnoble @imh @henryhallam @kovach @denniszollo @cbeighley