In Part 1 and Part 2 we discussed how to use RTKLib for standard point positioning and baseline processing. In Part 3 we look at how to use RTKLib to perform Precise Point Positioning (PPP) with orbit and clock products from the IGS.

Unlike traditional high accuracy positioning methods, PPP does not rely on any one particular base station. Instead, extremely accurate orbit and clock products are used which are derived from a global network of reference stations. This allows users to achieve cm level accuracy without being limited by the baseline distance from any one particular base station.

The IGS has provided the best orbit and clock products available on a routine basis for the last 20 years. The products are derived from a global network of continuously operating reference stations maintained by both public and private organizations.

RTKLib is just one of several PPP tools that users can access free of charge. In the future posts we will also explore other free tools and PPP services. For now let's get started with RTKLib in PPP mode.

Getting Started

For this tutorial you can download the required data sets here. This folder contains RINEX observations, as well as the precise orbit and clock products produced by the IGS for the same day as the RINEX data.


Using PPP mode is actually quite simple in RTKLib. To set the PPP mode, just click Options. This will bring up the options dialog window.

Options Dialog Window

Change the Positioning mode to PPP Static. Since our files are dual frequency (GPS L1 + L2) this will automatically use the "ionosphere free" combination to remove the ionosphere delay. Check the PhWindup and Reject Ecl check boxes. Then click ok.

Now it is time to add the files used for processing. There are four files to add:

  • RINEX file: cags001.14o
  • Precise orbit file: igs17733.sp3
  • Precise clock file: igs17733.clk_30s
  • Broadcast ephemeris: brdc0010.14n

You can add files by clicking on the ... button besides the blank text boxes. To add the precise ephemeris files you may need to switch the Files of type to Precise Clock/Ephemeris as shown in the picture below:

Selecting the precise ephemeris files

Once they are added your dialog window should look similar to this:

Dialog window for PPP processing

Now press Execute. If things work properly, you should see Q=6 displayed in the progress bar indicating that PPP mode is being used.

Reviewing Results

Once the processing is complete, press Plot to see the results. They should look similar to this:

PPP Results for CAGS

If you switch to the position view you can see how the position varies over time in the north-south (N-S), east-west(E-W) and vertical (U-D) directions. Notice how for the first 3-4 hours the solution is up to several meters away for the final position. Also notice the the vertical (U-D) direction takes longer to converge. It may be more difficult to see here since the y-axis varies between the three plots. However, once the solution has converged the solution is very stable. This convergence period is somewhat longer then normal, but 90+ minutes are typically required to achieve an accuray of several cm.

Downloading Products

In order to run PPP yourself, it will be necessary to download the orbit and clock products from the IGS. There are several data repositories available for users to download precise orbit and clock products to procecss thier data in PPP mode. I tend to use the CDDIS repository as I find it reliable and fast.

The products are organized by GPS week and day of week. To convert to the correct date format you can use a date converter produced by California Spatial Reference Center. To unzip the files you may need a program such as 7Zip or Winrar which are both freely available.

Many of the online PPP services handle the data download process for you which make them more convienent. But they do not allow the same customization as RTKLib.

The orbit and clock products come in three formats. The table below summarizes the formats:

IGS Product Summary

Currently, there is very little difference between the rapid and the final version of the products but generally it is recommended to take the best available at the time of processing.


This tutorial provides the very basics to get up and running with RTKLib in PPP mode. Several important things we didn't touch on include:

  • IGS Antenna calibrations files
  • Various orbits types and thier effect on PPP
  • How to improve convergence time
  • How to tell the accuracy by comparing to a known point.

These are all subjects that we will go over in future posts. Stay tuned!