I've been looking for a standalone single frequency carrier-phase based positioning method and I found out PPP (I know it's not the same). According to literature, the main issue of the carrier-phase based positioning is the resolution of the integer ambiguity and this is usually done by:

  1. Differencing the observables from the user receiver (or rover) with the measurements from a reference receiver that is spatially close in order to remove common biases.

  2. Removing the biases directly by either using a linear combination between observables, or estimating them or obtaining their values from an external source.

Now, I've recorded data with a single frequency ublox receiver and plotted it with RTKNAVI (real-time GUI-API from RTKLIB) as static PPP and single point positioning. The result is much better accuracy using the PPP method than with SPP one even if no reference or correction data is used.

How can this happen?

How is the integer ambiguity computed just using the raw-data from the ublox?

How can this be understood taking into account the previously mentioned points?

1 Answer 1


RTKLIB PPP, and Precise Point Positioning in general, models the atmospheric delays explicitly in the Kalman Filter of the algorithm, while the non-PPP solutions do not. Both Single and PPP may make use of the Ground Based or Satellite Based Augmentation Systems to improve their solutions, but the PPP system can dynamically adapt estimates of atmospheric delays to match local conditions, resulting in higher accuracies.

In the RTKLIB code, you could dig around with the differences in




In particular the udtrop_ppp(rtk_t *rtk) processing.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.