For optimal experience, consider the following (e.g., add information to the RINEX header):
XXXX MARKER NAME
unknown HuaweiNova5T YAL-L21 REC # / TYPE / VERS
2021 5 25 8 44 39.0000195 GPS TIME OF FIRST OBS
Experience showed that the following considerations and processing settings might improve the results:
10.^-(max([55-snr,0]) ./ a)
. A meaningful choice of the coefficient a is 20 to 5 and depends on the specific smartphone (e.g., Samsung Galaxy = 20).
Jump to Table of Content
Download the example data as an archive. This archive contains a RINEX file (Samsung Galaxy S20 FE), an IONEX file (GIOMO predicted, an ionosphere model from TU Wien), and a settings file (settings.mat) as a starting point. With this dataset, you should achieve similar results to the ones described in the raPPPid software paper.
Download raPPPid from GitHub and follow the instructions provided in the README.
Open Matlab and navigate to the WORK folder of raPPPid. Start the GUI with
raPPPid()
Download and extract the input data mentioned above. Copy the RINEX and IONEX to the raPPPid folder structure with CopyData2Folders()
Load the downloaded settings.mat file to the GUI. Your GUI should look similar to the screenshot below. Consider testing the ‘Analyze’ button, which analyzes the RINEX files. This option prints information to the command window and creates some plots some plots only based on the data in the RINEX file.
Start the processing with the RUN button. Be patient: The download and read-in of the input data will take some time (e.g., minutes) due to the characteristics of the stream corrections in the first processing. However, raPPPid will save the data in an internal format (*.mat). Therefore, the processing time is reduced massively in the further processings of this file.
After the processing is finished, change to the panel Single-Plot. Load the true coordinates by hitting the button ‘Load static’ (the smartphone was placed on a geodetic reference point).
Select the ‘Three coordinates Plot’ and hit ‘Plot’. A figure should open. Change the limits of the x-axis by typing the following command into the command window: ylim([-3 3])
. Congratulations! You have successfully processed and plotted raw GNSS data from a smartphone with raPPPid. Since the height component is worse than expected, you should do a re-processing: Activate the estimation of the ZWD and compare the results of these two processings and the ones included in the raPPPid paper.
Jump to Table of Content
Since version 2.0, raPPPid can process the raw sensor data from Android smartphones logged with GnssLogger App from Google. By doing so, we have more control over the observations and avoid imperfections introduced by the RINEX logger (e.g., Zangenehnejad et. al, 2023), allowing, for example, the processing of the phase observation.
Download this example dataset, containing …
Use CopyData2Folders()
to copy these files into the folder structure of raPPPid.
Load the parameter-file “smartphone_realtime.mat” into the GUI. Please change the following settings:
Now you can hit the RUN button. Please note that the first processing will take a considerable amount of time (e.g., 4-5 minutes) because the applied real-time corrections from the CNES archive are read-in.
After the processing is finished, change to the panel Multi-Plot (under Plotting). Add the last processing ('Add last'). Load the reference coordinates by writing PF04 into the correct field and change the definition of convergence. Your Position Convergence plot should look similar to the following one.
Congratulations! You have successfully processed raw GNSS data from a smartphone (code AND phase) and broken the one-meter accuracy level. If not, check if you really have activated the estimation of the ZWD. Thereby, you used real-time settings and corrections from CNES. In the next part of this example, the corrections from the Galileo HAS are used.
Change to the panel ‘Input File’ and deactivate GLONASS and Beidou because the Galileo HAS provides corrections only for GPS and Galileo. Furthermore, define a sensible processing name.
Previously, the corrections from the CNES archive have been used. To apply the correction from the Galileo HAS you have to select the recorded real-time correction stream manually. Furthermore, phase biases have to be deactivated because the Galileo HAS currently does not provide any phase biases. Therefore, change to panel ‘Biases’ (menu item: Models). Set the (Additional) Phase Biases Source to off. Then you can hit the RUN button to start the processing.
When the processing is finished, change to the Multi-Plot panel. Make sure that all definitions of convergence correspond to one meter, load the reference coordinates of PF04 (check the description above), and try to create the Coordinate Convergence plot. Your plot should look similar to the one provided above.
Congratulations! You have successfully processed raw GNSS data from a smartphone with the Galileo HAS. Although only GPS and Galileo observations are processed sub-meter accuracy is achieved.
Jump to Table of Content