-
Notifications
You must be signed in to change notification settings - Fork 25
spp
SPP is the "simplest" resolution method, is it Pseudo Range (PR) code based, it will not consider carrier phase and will only consider a single carrier signal. SPP also relaxes the requirement on the provided data compared to PPP.
While all of this applies, it still does not mean you cannot achieve decent result with SPP, it all depends on the final accuracy you want to achieve and what decent means. SPP will hardly output PVT solutions below 1 meter of accuracy (so about 5 to 10ns timing accuracy).
RINEX-Cli
and RTK-rs
are powerful enough to be able cross this barrier under specific conditions:
- by tolerating longer averaging (providing say 48 hours of observations)
- providing very high quality data and applying appropriate criteria
Like any position solving strategies, SPP can be converted to CGGTTS, for remote clock comparison.
In this case, the CGGTTS resolution will be limit itself to single carrier pseudo range.
Our Navigation filter ecosystem is independent from the solving strategy.
This allows you to set the navigation filter to Kalman while working with SPP (Single carrier PR).
- Single carrier method: need to gather fewer signals
- Providing L2 or L5 observations will enable more candidates but will not improve overall performances
- Phase observation is not required
- No Ionosphere contribution cancellation, can only be modeled
- Troposphere is modeled and currently impossible to add to the Kalman filter, even when Filter is set to Kalman
- Precise products like SP3 and Clock RINEX are originally not intended to be loaded, but you can do it and it severly helps the solving process.
TODO: add example of SPP without SP3 and Clock
By providing good quality data and PPP compliant format, it is possible to obtain very good results, while still using a code based resolution method.
rinex-cli \
-f test_resources/CRNX/V3/ESBC00DNK_R_20201770000_01D_30S_MO.crx.gz \
-f test_resources/CLK/V3/GRG0MGXFIN_20201770000_01D_30S_CLK.CLK.gz \
-f test_resources/NAV/V3/ESBC00DNK_R_20201770000_01D_MN.rnx.gz \
-f test_resources/SP3/GRG0MGXFIN_20201770000_01D_15M_ORB.SP3.gz \
-P GPS \
-p -c rinex-cli/config/rtk/gpst_spp_basic.json \
| tee logs.txt
In this example, we switch to Kalman filter (most advanced filter), add more data quality criteria
cat conf.json
rinex-cli \
-f test_resources/CRNX/V3/ESBC00DNK_R_20201770000_01D_30S_MO.crx.gz \
-f test_resources/CLK/V3/GRG0MGXFIN_20201770000_01D_30S_CLK.CLK.gz \
-f test_resources/NAV/V3/ESBC00DNK_R_20201770000_01D_MN.rnx.gz \
-f test_resources/SP3/GRG0MGXFIN_20201770000_01D_15M_ORB.SP3.gz \
-P GAL \
-p -c conf.json \
| tee logs.txt
- Move on to Code Based (CPP) and obtain similar results without Ionosphere modeling
- Move on to Precise Point Positioning (PPP) for the best PVT solutions results
- Learn how to resolve CGGTTS solutions for timing applications

- Wiki
- RINEX Data
- Getting Started
- Filter Designer (Preprocessor)
- QC/Analysis mode
- File operations
- Post Processed Positioning (ppp)