Introduction

Position determination with the help of smartphones is becoming more and more precise. Cell phones can nowadays receive signals from multi-constellation GNSS satellites on two frequency bands (see, e.g. (Barbeau 2018; Darugna 2021)). Due to the different propagation and refraction properties of the two signals, atmospheric influences and multi-path effects can be reduced and the measurements can be more accurate. It is conceivable that simple tasks of applied surveying can be performed with smartphones in the future. This saves time and cost, since no additional hardware has to be purchased and the smartphone is a constant companion anyway. This study investigates possible applications for smartphones with dual-frequency receivers in applied surveying. Several applications are considered and measurements are carried out. It is determined whether a meaningful use is possible and the limits of the technology are shown. In order to investigate to what extent smartphones are suitable for measurement tasks, the accuracy to be achieved, the measurement effort, the repeatability of the measurement results and the quality of the measurement data are of particular interest. Several measurements are carried out to investigate them. The data is recorded with the Pixel 5 of the American manufacturer Google LLC, which has been available since October 2020.

The measurements took place on the roof of the Electrical Engineering Institute (EI) building of the TU Wien (Vienna University of Technology) and in a park in front of the main building (i.e. Karlsplatz). Raw data are recorded in a long-term measurement whereby in this paper a 150-min observation interval is analysed. The smartphone is thereby located on a coordinate known reference point (measuring pillar) in order to be able to derive the achieved accuracy. In addition, a reference station in the form of a classic geodetic GNSS receiver with precision antenna is set up on a second measuring pillar. Additionally to the long-term measurement, several shorter measurements are carried out over a period of 20 min. These are used to simulate real measurement tasks such as data acquisition for GIS (Geographic Information Systems), such as tree cadastre, lantern cadastre and traffic signs. Furthermore, measurements are carried out along a straight line to investigate tasks related to line documentation, such as underground power lines. In post-processing, the collected observation data are evaluated and different methods for determining position are investigated. For this purpose, the open source software of the Real Time Kinematic Library (RTKLib) is used, which allows an analysis of the raw data in the Receiver Independent Exchange Format (RINEX). The methods of single point determination, such as Single Point Positioning (SPP) and Precise Point Positioning (PPP), as well as Differential GNSS (DGNSS) are compared. Both with the own reference station on the measuring pillar on the roof and the CORS (Continuous Operating Reference Stations) network of Real-time Positioning Austria (EPOSA) are used to determine the baselines for Differential GNSS. In addition to the positioning methods, the results of the different GNSS systems are compared. The number of satellites available, the signal-to-noise ratio (SNR) and the continuity of the signals are considered. Depending on the GNSS system, the Google Pixel 5 smartphone can record the signals at up to two carrier frequencies. It is therefore possible to analyse the satellite signals as a function of frequency. The differences between the frequency bands the GPS L1 and L5 and the Galileo E1 and E5a are therefore investigated.

The paper is structured as follows: in the ‘Basics and approach’ section, current studies in smartphone GNSS positioning are briefly reviewed and then the basics of the employed smartphone and the chosen approach for the investigations are presented. This investigation is followed by comprehensive analyses of the long-term observations in the ‘Analyses of the long-term observations’ section. Thereby the GNSS satellite availability and quality, the conditions for the calculation of the position solutions, the Single Point Positioning (SPP) and Precise Point Positioning (PPP) solution accuracies as well as Differential GNSS using estimated baselines are analysed in the ‘Satellite availability and quality’ section to ‘Differential GNSS—baseline’ section, respectively. ‘Kinematic applications’ section then deals with kinematic applications for trajectory estimation in stop-and-go mode. Then the following ‘Summary of the main results’ section summarises the main findings. A discussion of the outcomes of the study and an outlook on future work conclude the paper in the ‘Final outcome discussion and outlook’ section.

Basics and approach

Studies in smartphone GNSS positioning

Smartphones with chipsets that are able to process dual-frequency GNSS observations prove to be one of the most promising future-technologies for the GNSS market. Their main advantage in comparison to single-frequency chipsets is that the influence of the ionospheric propagation error can be reduced and not only estimated by modelling it. Additionally, multipath effects (Nobuaki et al. 2020) can be better corrected for. Several studies have already engaged in this new topic, trying to analyse advantages and disadvantages of this new technology. Other smartphones than the one used in this study have been subject to testing (e.g. Xiaomi Mi 8 (Robustelli et al. 2019; Chen et al. 2019); Xiaomi Mi 9, Huawei P30 (Robustelli et al. 2021)) in regard to positioning performance. Googles’ newest smartphone has not been subject to such. The aim of this study is to take a closer look at the Google Pixel 5 and its potential in respect to its positioning capability and the achievable accuracies. Furthermore, the satellite availability, visibility and stability will be analysed. Apart from static long-term observations, also stop-and-go and kinematic measurements are carried out in the literature trying to achieve real-life scenarios. Basic characteristic of these measurements is the division into three phases: (1) the initial ambiguity resolution, (2) the receiver in motion and (3) the receiver in stationary position (Gebre-Egziabher and Gleason 2009). Such studies have been also conducted and a kinematic example is presented in the ‘Kinematic applications’ section of this paper.

In the analyses, SPP absolute and relative positioning methods are investigated. SPP code observations are modulated via a (satellite-individual) PRN-Code. PPP is also an absolute positioning method, but in contrast to SPP it works with carrier phase, as well as pseudorange observations. The pseudorange is used for calculating an approximate solution in order to then solve for the integer ambiguities. Cycle slips act as a disruption. At that point the ambiguities need to be solved again, which takes a certain amount of time (convergence time). This convergence time is what is assumed to be difficult at fast stop-times. PPP is using two frequencies in order to derive ionospheric information, as the delay is frequency-dependent. The distance between rover and basis plays an important role in relative positioning. Differential GNSS is a relative positioning technique, as the position relative to an external reference station serves as a basis for positioning enhancement. The distances between the rover and the basis are referred to as baselines. These distances can be derived in post-processing or in RTK (Real-time Kinematic). Again, the distance between rover and basis plays an important role. Many error sources can be eliminated by single, double or triple differencing. Single differencing uses differences between the receivers to exclude the satellite clock error. Double differencing uses differences between receivers and between satellites in order to eliminate the receiver clock error. Next, when again differencing double differences, we can finally exclude ambiguities (by additionally looking at different epochs). Double and triple differences can also be used to detect and correct for cycle slips. Most commonly, these differences are solved for by using different kinds of linear combinations.

The use of the GPS L5 frequency band is relatively new. L5 signals have been broadcast beginning in April 2014 on satellites that support it. As of January 2021, 16 GPS satellites are broadcasting L5 signals, and the signals are considered pre-operational, scheduled to reach 24 satellites by approximately 2027. Thus, as smartphones usually provide observations on GPS L1 and L5 (compare Table 1) not all visible satellites are available for dual-frequency measurements. This can limit the positioning capabilities significantly, especially for PPP and DGNSS, as it was the case in this study. In the following, the employed smartphone is introduced and the fundamentals and characteristics of this study presented.

Table 1 Number of satellites in dependence of the system and frequency band

Fundamentals and characteristics of the study

The Google Pixel 5 smartphone has a Qualcomm SM7250 Snapdragon 765G 5G (7 nm) chipset (Qualcomm 2019) incorporated, which allows the recording of GNSS signals on two frequencies. The supported GNSS and their frequencies are as follows: (1) GPS L1 and L5; (2) GLONASS R1; (3) Galileo E1 and E5a; (4) Beidou B1; and (5) QZSS L1 and L5. The RINEX Logger from Geo +  + GmbH was used to record the measurement data with the smartphone. With this app it is possible to save GNSS raw data directly as an observation file. The application is based on the freely accessible source code of Google’s GPS Measurement Tool.

The geodetic SP80 GNSS Receiver from Spectra Geospatial is used as a reference station and placed on a measuring pillar on the roof of the EI building of TU Wien. This receiver is capable to record GPS (L1, L2, L5) and GLONASS (R1, R2) data. In order to be able to use them, they are then converted to the RINEX format. This is done with the RINEX Converter 4.7.2 from Trimble. Further data, such as the satellite ephemeris (RINEX navigation file) and clock corrections, are acquired from the CORS network EPOSA and the IGS (International GNSS Service). Then the raw data is analysed with RTKLib and position solutions using different methods calculated. Matlab routines are used in the following to eliminate outliers, to calculate statistical parameters and transformations between different reference systems, such as WGS84 (World Geodetic System 1984) and ETRS89 (European Terrestrial Reference System 1984).

Analyses of the long-term observations

For the results presented in the paper, long-term observations over 150 min were selected. They were carried out on the measuring roof in December 2020. For this purpose, the smartphone was mounted on a measuring pillar with a holder in a tripod (see Fig. 1). At a distance of 5 m, the SP80 reference receiver was placed on a second pillar. The raw data were recorded at a resolution of 1 s. In the following, the quality and the achievable solution accuracies are discussed in detail.

Fig. 1
figure 1

Smartphone und reference receiver SP80 on two neighbouring measuring pillars at a distance of 5 m

Satellite availability and quality

Over the whole observation period, GNSS signals of 56 satellites were recorded with the Google Pixel 5. Of these, 21 satellites were able to record the data on two frequency bands. The number of satellites observed was highest for GPS, but only about half could be observed on two frequencies. In contrast, the number of Galileo satellites was smaller, but almost all satellites were able to receive both frequencies. Figure 2 shows the change in the number of satellites of the individual systems over time. GPS and Beidou show a wide range of variability, while the number of Galileo satellites remains relatively constant except for a few outliers.

Fig. 2
figure 2

Satellite numbers in the 150-min observation period tracked by the Google Pixel 5 (sequence from top to bottom: GPS, GLONASS, Galileo, Beidou)

Figure 3 shows the satellite constellation of the GPS satellites in the form of a skyplot. The data of the Pixel 5 smartphone (left) are compared with the recordings of the reference receiver SP80 (right). Since the two receivers were only a 5 m apart, the conditions for satellite tracking can be considered as identical. The satellite motion, signal strength and the number of signal interruptions can be seen in the skyplots. The signal strength is described on the basis of a colour scale; signal interruptions caused by cycle slips are marked by a red bar. The high number of cycle slips on the Pixel 5 is clearly visible. With the SP80, signal outages occur only at a very low elevation. While the signal strength of the reference receiver is highest at the zenith, the Pixel 5 still shows signal interruptions. Only in the west were relatively continuous signals with an SNR of more than 45 dBHz. Overall, the signal strength of the Pixel 5 is significantly lower than that of the SP80 receiver. Below an elevation of about 10°, there are no records of the SP80 as this mask angle was set during the observations. The Pixel 5 was able to observe the satellites even below this very low angle.

Fig. 3
figure 3

Skyplots showing the tracked GPS satellites with the Google Pixel 5 on L1 (left) and the SP80 receiver (right) with coloured visualisation of the SNR

Figure 4 shows the skyplots of the GPS bands L1 (left) and L5 (right). Eight satellites G02, G05, G07, G13, G15, G16, G28 and G29 could be observed on only one frequency. Many of these satellites are located more in the west. It is obvious from Fig. 4 that some of the satellites, from which only the L1 band could be observed, have a higher signal strength. The number of cycle slips at L5 depends heavily on the elevation. Above 30° the signals fail very rarely. In L1, this dependence does not seem to be so pronounced. The G30 satellite could be observed on both frequency bands. It is noticeable that its signal breaks off only twice at L5, whereas at L1 it breaks off much more often. For the remaining satellites, the number of cycle slips in the L5 band is higher.

Fig. 4
figure 4

Skyplots showing the tracked GPS satellites of the Google Pixel 5 on L1 (left) and L5 (right) with coloured visualisation of the SNR

The Galileo frequency bands E1 and E5a show a similar pattern in terms of signal interruptions. Cycle slips are much more common in the E5a band than in the E1 band. On the E1 band, uninterrupted signals could be recorded in the west, similar to the GPS satellites. However, almost all satellites were observed in both frequency bands.

Overall, the signal quality of the Pixel 5 receiver is significantly lower compared to a professional geodetic GNSS receiver. The signals are considerably weaker and there are more frequent signal outages. The position of the satellites plays a role, as the signals at the Pixel 5 in the west are usually stronger. A reduction in the signal quality due to a southern roof on the building cannot be ruled out. The antenna orientation has no influence on the reference receiver. Although the signals from the satellites at the zenith are likely to be of the highest quality, this is not the case for the L1 and E1 frequency bands of the Pixel 5. L5 and E5a, on the other hand, show an increase in quality with increasing elevation.

Table 1 provides a closer look on the observed number of satellites in dependence of the GNSS and the respective frequency band showing the maximum and minimum number of satellites per system and frequency that could be observed simultaneously during the measurement. Over a measurement period of 150 min, which is considered here, the signals of 56 satellites were recorded, i.e. 18 GPS, 12 GLONASS, 11 Galileo and 15 Beidou. Of these, from 21 satellites, i.e. 10 GPS and 11 Galileo, it was possible to record the data on two frequency bands. The number of satellites observed was highest for GPS, but only 10 could be observed on two frequencies. In contrast, the number of Galileo satellites was smaller, but all satellites were able to receive both frequencies. An assessment of the quality of the recorded signals can be made by considering the SNR. In addition, the number of signal interruptions is analysed. Figure 5 shows the SNR in dBHz for the frequency bands L1, R1, E1 and B1 of all satellites over the observation period of 150 min. The analyses show that the SNR of all satellites are rarely above 48 dBHz over the observation period. The lowest values are below 12 dBHz. In comparison, the reference stations of the EPOSA CORS network, however, have significantly higher SNR values, some of which exceed 56 dBHz. The signal strength never drops below 22 dBHz for the geodetic receivers at the reference stations.

Fig. 5
figure 5

SNR in dBHz for the frequency bands L1, R1, E1 and B1 of the measurements with the Pixel 5

For cross comparison, Fig. 6 shows the SNR of the bands L5 and E5a of the GPS and Galileo satellites. Overall, the signal strength is lower than in the L1 and E1 frequency bands. It is obvious from Fig. 6 that no signals with a SNR below 22 dBHz are observed. Unlike the previous visualisation in Fig. 5, however, there are no outliers found here. This is probably a software problem in data recording.

Fig. 6
figure 6

SNR in dBHz for the frequency bands L5 and E5a of the measurements with the Pixel 5

Conditions for the calculation of the position solutions

In the following, position solutions (hereinafter: solutions) are calculated from the recorded raw data with the help of the software RTKPost (version 2.4.3). As mentioned above, the three positioning methods SPP, PPP and DGNSS are examined. Both an evaluation over the entire measurement period and an evaluation divided into individual time intervals are carried out. In addition to the differences between the individual GNSS systems and the positioning methods, the influence of different ephemeris, i.e. broadcast or precise ephemeris, and clock correction parameters is investigated. In order to describe the accuracy of the results, deviations from the reference coordinates are calculated. Since these coordinates are available in ETRS89 but the GNSS solutions are in WGS84, the coordinates of the measurement pillar need to be transformed. In addition, a UTM (Universal Transversal Mercator) projection is calculated for all coordinates of the position solutions in order to make analyses about the position and altitude quality. In the following, the basics of the coordinate systems and the necessary steps are briefly reviewed.

In order to convert the measurements from both the SP80 and the Google Pixel 5 into the same coordinate frame, all systems were transformed into the UTM system. RTKPost allows for exporting point coordinates either as Cartesian point coordinates with respect to the reference system ITRS 2014 (realised via the reference frame ITRF 2014), or in geodetic elliptic coordinates with respect to the WGS84 ellipsoid. The reference system ITRS 2014 is an Earth-centred Earth-fixed (ECEF) Cartesian coordinate system with its origin at the Earth’s centre of mass. The ITRS 2014 is meant to be a global coordinate system for the whole Earth. Due to tectonic activity, ITRS 2014 coordinates of a place which is kept fixed on a tectonic plate will change over time. Therefore, as for the Eurasian plate, there’s the reference system ETRS, which is fixed to the Eurasian plate in order to keep coordinates of places on the Eurasian plate (theoretically) constant over time. The system ETRS is realised via a corresponding reference frame ETRF. Each epoch of an ITRS or ITRF has a corresponding epoch of the ETRS or ETRF. There seems to be much confusion in the literature about these reference systems and reference frames, and about various coordinates (e.g. geodetic elliptic coordinates with respect to a certain reference ellipsoid). We stress that so called GPS coordinates are coordinates in an elliptic UTM map projection, based on the reference ellipsoid system WGS84 for the ITRS, together with elliptic heights. Note, that the transverse cylinder in an elliptic UTM projection is an elliptic cylinder. WGS84 is a system used for GPS only and in military applications. However, European UTM coordinates in Austria and Germany are coordinates in an elliptic UTM map projection, based on the reference ellipsoid GRS80 for the ETRS89, together with elliptic heights. Thus, for proper results, the following transformations have to be carried out:

  1. 1.

    From Cartesian ITRS2014 of epoch 2014.0 to Cartesian ETRS89 of epoch 1989.0. This is a transformation from one geodetic datum to another one.

  2. 2.

    From Cartesian ETRS89 to ellipsoidal coordinates with respect to an ETRS89-based reference ellipsoid GRS80. This is a conversion of 3D Cartesian coordinates to their corresponding ellipsoidal form.

  3. 3.

    From ellipsoidal ETRS89/GRS80 coordinates to ETRS89/GRS80/UTM33. This is a map projection, keeping ellipsoidal heights.

All these calculation steps including the transformations need to be carried out to be able to compare the resulting coordinates of the measurements with the ground truth of the measurement pillars on the building roof.

Single Point Positioning

With SPP, only code observations are included in the calculation; frequency selection cannot be made. By selecting the option RAIM FDE (Receiver Autonomous Integrity Monitoring Fault Detection and Exclusion) in RTKLib, observations leading to improbable solutions are excluded in advance. For the SPP evaluation, the RINEX observation file is used first and, depending on the system used, the corresponding navigation file (broadcast ephemeris). The navigation files for GPS and GLONASS are obtained from the CORS network EPOSA. For Galileo and Beidou, the IGS Multi-GNSS Experiment Files (MGEX) are used for the ephemeris.

First, solutions are calculated for each GNSS. The four results are compared below. Figure 7 shows the distributions of the solutions for GPS and GLONASS while Fig. 8 the distributions for Galileo and Beidou, respectively. To make the graphs comparable, coordinate grids of 20 m are shown. On the basis of the plots, initial statements can already be made about the results. It can be observed that the GLONASS solutions have a much higher dispersion than the GPS and Galileo solutions. Galileo has more distant outliers than GPS, although the distributions are similar. The Beidou solutions are very highly scattered along the coordinate axes.

Fig. 7
figure 7

SPP positioning solutions for GPS (left) and GLONASS (right)

Fig. 8
figure 8

SPP positioning solutions for Galileo (left) and Beidou (right)

The calculated solutions are further processed with Matlab where first the coordinates are transformed to UTM. Outliers are then eliminated by removing the top and bottom 10% quantile. This is done individually for the east (E), north (N) and up (U) coordinate in a local horizontal coordinate system. In order to describe the dispersion of the solutions, the standard deviations for E, N and U are calculated from the remaining values. The results are then averaged into a standard deviation for the position and a three-dimensional total standard deviation. To determine the accuracy of the solutions, the deviations from the reference coordinates serving as ground truth are calculated. From the determined deviations, the Helmert’s point position error and the total deviation are determined.

Table 2 shows a comparison of the different systems. The position solutions are calculated in two ways with the software RTKPost. The table shows the solutions of each GNSS (G for GPS, R for GLONASS, E for Galileo and C for Beidou) in the first four rows and different combinations of solutions of different GNSS (e.g. GR for GPS and GLONASS and GREC for all four GNSS). The parameter n describes the number of solutions actually used after eliminating the outliers. The extreme values are marked in red or green. All data in this and the following tables have the unit metre. When combining the different GNSS, it is evident that the number of usable solutions n decreases significantly. In terms of the number of position solutions calculated, Galileo shows the most with more than 7000 solutions and GPS only about 4000 solutions over the 150-min observation time period. When all four GNSS are combined, n is only 39. With the standard deviations, it is noticeable that the deviations in height, as expected, are the largest for all systems. The GLONASS solutions show the highest dispersion with a total standard deviation of more than 30 m (Std 3D in Table 2). The lowest standard deviations in 3D are achieved with Galileo and Beidou. Overall, the Galileo solutions have the smallest deviation from the ground truth where the Helmert’s point position error (Dev 2D) is only 76 cm. For Beidou this deviation was the second smallest with a value of only 1.30 m. The GLONASS solutions are the worst with a 3D deviation of 7.64 m. The smallest deviations from the ground truth were achieved when combining Galileo with Beidou (EC combination) with a value of only 21 cm.

Table 2 Comparison of the SPP results calculated with RTKPost for the individual satellite systems and their combinations

As the number of solutions for the combination of several GNSS is very low (see the value n in Table 2), second solutions were calculated by epoch for the 150-min observation time period with the help of Matlab. In this processing method, only the outliers are eliminated and the individual deviations are calculated. In this process, a neighbourhood analysis is performed to eliminate outliers and more distant points. For each point, the number of neighbours within a defined radius is determined. If the number falls below a predefined limit, the point is not included in the calculation. This significantly increases the number of solutions n. Table 3 shows these results similar as in Table 2. Outliers above a certain threshold derived empirically from the neighbourhood analysis were eliminated from the resulting amount of solution and their number n is presented. Obviously as it should be, the more systems are combined, the more solutions are available. The position solutions of the two calculation approaches represented in Tables 2 and 3, respectively, differ both in the positioning accuracy achieved and in the standard deviations determined. Standard deviations for results combined with Matlab are higher than for results combined with RTKPost. This can be explained by the higher number of solutions used. With regard to position deviations, however, the Matlab solutions can achieve more often accuracies of less than 1 m. This becomes clearly visible in the multi-GNSS solution, which includes all four systems. Here the position deviation of the RTKPost solution is only half as accurate. The solutions with the smallest position deviations in both approaches include the system Galileo. For the Matlab solutions, the smallest deviation is achieved with the combination GPS and Galileo with a value of only 29 cm. For the solutions combined with RTKPost, on the other hand, the smallest position deviation of 21 cm is achieved with the combination of Galileo and Beidou.

Table 3 Comparison of the SPP results calculated with Matlab by epoch for the individual satellite systems and their combinations

So far, only position solutions for the entire observation period have been considered. In the following, this period is divided into 15 intervals of 10-min duration each, in order to be able to analyse the quality over time of the measurements. For each interval, the standard deviations and the total deviations are calculated as before. The following Table 4 shows the solutions for GPS. The number of calculated positions n varies significantly between the individual intervals and ranges from 149 to 471 solutions. From this number it is possible to draw conclusions about the quality of the raw data in the respective interval. The lower the number of calculated positions, the less useful observations are available. The standard deviations also vary by several metres depending on the respective interval. Standard deviations to the north tend to be higher than those to the east. The standard deviation of the height component is the largest. The deviations from the reference point also vary by several metres. In all three coordinate directions (E, N, U), deviations in the range of a few centimetres can be achieved at best. However, these are not available in the same interval. The maximum deviations are in the order of several metres, although here too the height component is subject to the greatest fluctuations. The deviations of the individual coordinate directions result in a highly fluctuating position and overall deviation. The overall best accuracy can be achieved in the interval from 12:12 with about 93 cm in 2D (Dev 2D). The best overall 3D accuracy is reached between 10:12 and 10:22 with about 2 m. If the deviations of the individual coordinates (E, N, U) are averaged and the positioning accuracy is calculated from these results, a deviation from the reference point of about 2 m is obtained.

Table 4 SPP interval solutions of over 10-min observation periods for GPS

Precise Point Positioning

For PPP, RTKPost can only calculate solutions for GPS and GLONASS as the quality of the observations of the other two systems is too low. The SNR is low and the signals often fail. RTKPost therefore automatically switches to SPP mode on these systems. Since for GLONASS only observations on one frequency band are available, the following analysis focuses on GPS.

First, positions are calculated for the entire 150-min observation period whereby the influence of the usage of different ephemeris and clock correction is investigated. The first PPP solution is calculated with broadcast ephemeris followed by a solution with precise ephemeris using the final orbits of the IGS and a third solution where clock correction parameters are used in addition to the final orbits. Figure 9 compares the broadcast (purple) with the final orbit solution (turquoise). The grid lines of the coordinate system have a spacing of 20 cm in these plots; however, there are a small number of other solutions outside the display area which have to be considered as outliers as most of these solutions are many metres away; so they are not shown here for reasons of clarity. The distributions of the solutions show similarities in both approaches. However, the final orbit solution is shifted about a metre to the right and a few centimetres down. At the same time, it is a bit twisted compared to the broadcast solution. Figure 10 compares the final orbit solution once with clock correction (turquoise) and once without (purple). Both solutions are very close to each other. However, the solution, taking into account the clock correction, is shifted by a few centimetres to the north and east. The graphical results are presented numerically in Table 5. The number of solutions determined varies depending on the ephemeris and corrections used significantly. By using the final orbits, the number of solutions is reduced by about 400 results. If additional clock correction data are used, another 20 fewer results can be estimated. The obtained standard deviations in the east and north direction are in the order of a few decimetres for all approaches. The standard deviations of the height are almost 1 m. The standard deviations are thus more than a factor of 10 lower than the comparable GPS results of the SPP solution over 150 min. The deviations from the ground truth coordinates are also lower than those of the SPP solution, regardless of the ephemeris data used. Interestingly is also the difference in accuracy between the broadcast ephemeris and the final orbits. The positioning accuracy was increased by almost 80 cm to a deviation of as low as 95 cm (Dev 2D) by using the more precise ephemeris. The overall 3D positioning accuracy was increased by 36 cm to a deviation of 1.73 m. If clock correction data are used in addition to the final orbits, the accuracy can be further slightly increased. Both the positioning and the overall accuracy increase by about 3 cm.

Fig. 9
figure 9

Plot of the PPP solutions with a resolution of 1 s using either broadcast ephemeris (purple) or final IGS orbits (turquoise)

Fig. 10
figure 10

Plot of the PPP solutions with a resolution of 1 s using the final IGS orbits with (turquoise) or without (purple) the usage of clock correction parameters

Table 5 Comparison of the PPP solutions with different ephemeris and correction data

In the following, the observation period is divided into 10-min intervals to simulate shorter observation times. First, the solutions calculated with broadcast ephemeris are considered (Table 6). Subsequently, solutions with the final orbits are calculated (Table 7). A similar division into intervals at the SPP showed that the achievable accuracy can vary considerably (compare Table 4). This is also evident in the PPP solutions. The deviations from the reference point differ significantly depending on the interval considered, although the positional deviations may vary by several metres. Accuracies below 1 m are achieved in the best case scenario. However, there is also a result with deviations of more than 8 m. On average, a position deviation of 1.22 m is obtained. However, due to the large fluctuations, this value is strongly influenced by each 10-min interval. The same applies to the 3D deviation. Here, too, the results of the individual intervals vary by several metres. Overall, a deviation of 1.51 m is achieved. The number of positions per interval is smaller for the results calculated with final orbits (Table 7) but also varies significantly depending on the interval considered. While the standard deviations have changed little, the average position deviations have become smaller. The total standard deviations differ only by a few centimetres. The deviations from the reference point are highly dependent on the respective interval and vary by several metres. The average positional accuracy is 1.27 m and is thus almost 5 cm lower than in the solution with broadcast ephemeris. If the height is added, the accuracy is increased. The improvement in height is about 30 cm. An average deviation of 58 cm can be achieved.

Table 6 PPP Interval solutions of 10 min each with GPS broadcast ephemeris
Table 7 PPP interval solutions of 10 min each with precise ephemeris (IGS final orbits)

Differential GNSS—baseline

As a further method, the position determination with the help of a baseline analysis is investigated. For this purpose, five baselines with different lengths are calculated. The three EPOSA CORS stations in Leopoldau, Baden and Traisen in and around Vienna, a virtual reference station and the SP80 comparison geodetic receiver, which is also located on the measuring roof, serve as a base station. The baselines are 9.2 km, 23.5 km, 58.5 km, 0.6 km and 12 m long. From the measurements of the reference stations, only L1 data from GPS and GLONASS were included. The EPOSA observation data of the reference stations can be obtained from the EPOSA RINEX Server for the measurement period in a resolution of 1 s. The data of the SP80 are also available every second.

RTKPost is set to the positioning mode static for the evaluation. This method calculates baselines based on phase observations. Furthermore, the coordinates of the respective reference station must be provided, taking into account the antenna height, if necessary. The software can be used to calculate baseline vectors and position solutions. In the following, the estimated position solutions are considered. Figure 11 shows the distribution of the solutions for GPS (yellow) and GLONASS (green) with the EPOSA reference station Leopoldau as a base station. The two distributions show almost no similarities. The GLONASS solutions are more widely dispersed than the GPS solutions, and most of them are located south of them.

Fig. 11
figure 11

Plot of the DGNSS solutions for GPS (yellow) and GLONASS (green) based on the EPOSA reference station Leopoldau

Table 8 shows the individual solutions of the systems and the combined results, showing the results for each reference station over the entire 150-min observation period. The position solutions are calculated in two ways. Table 8 shows, on the one hand, the solutions in which the individual systems are combined with RTKPost. The algorithm only calculates solutions that fit optimally to all selected systems. As a result, the number of solutions decreases with the increase in the number of systems. Therefore, a further calculation method was implemented with Matlab, in which only the outliers are eliminated and the individual deviations are calculated. This significantly increases the number of solutions. Regardless of the reference station used, the pure GPS solution has the lowest standard deviations in all three directions. This solution is also superior in terms of positioning and 3D accuracy. The best results were achieved with the EPOSA station Leopoldau as a base station. Here a position deviation of 2.72 m and a total deviation of 2.92 m are achieved. The deviations of the solutions calculated with the two closest stations, i.e. the virtual reference station VRSA and the geodetic receiver SP80, are several metres larger. The largest deviation is with the base SP80, although this reference station is only 12 m away from the rover. The solutions with the EPOSA stations Baden and Traisen as the base stations show a deviation of more than 3 m, whereas the longer base line has a slightly larger deviation. Compared to GPS solutions, the GLONASS results are significantly lower. Both the standard deviations and the deviations from the reference coordinates are significantly larger regardless of the base station used. This is particularly evident at the base station SP80. Here the deviation reaches almost 40 m. But also at the station Traisen deviations of more than 30 m are reached. The combined solutions also show deviations in the range of several metres. However, the deviations are significantly influenced by the GLONASS results. Overall, higher accuracy can be achieved with the results combined with Matlab than with the pure RTKPost solutions. Only the position of the base station SP80 could be determined more precisely with the RTKPost solution. The worst results are achieved with the base station Baden and the RTKPost solution. The deviation of the location reached 42 m. If the height component is included, the deviation increases to 46 m.

Table 8 DGNSS solutions for GPS and GLONASS as well as combined solutions with different reference stations

Due to the large deviations from the coordinates of the ground truth, a network adjustment was subsequently carried out. A free and a constrained adjustment are calculated, in which the three EPOSA reference stations are included. In addition to the three calculated baselines, additional baselines between the individual reference stations are calculated prior to the actual adjustment. Here the baselines are determined in both directions, so that a total of 9 baselines are available for the adjustment. The calculations are performed again with RTKPost, where baseline vectors are now estimated. Only the average values of the individual baselines are taken into account in the following network adjustment. The coordinates of the reference stations are known and are chosen as datum points for free adjustment and as fixed points for constrained adjustment. The geometry of the results of the two different adjustment approaches is shown in Fig. 12, where the free adjustment is shown on the left and the constrained adjustment on the right. The differences remaining after the adjustment are shown in Table 9. The two results differ by only a few centimetres. Compensatory adjustment can lead to smaller deviations. The position deviation here is 2.81 m. The 3D deviation resulted in 2.99 m. Compared to the GPS results without adjustment with the EPOSA station Leopoldau as a base station, the deviation increased by almost 10 cm.

Fig. 12
figure 12

Results of free (left) and constrained (right) network adjustments with confidence ellipses

Table 9 Deviations after network adjustment of the baseline solutions

In order to investigate the influence of the ephemeris, the final orbits of the IGS are used for the calculation in addition to the broadcast ephemeris. Only the GPS solutions for the base station Leopoldau are considered here, as they were able to achieve the best results before. Figure 13 shows the two spatial distributions. The broadcast ephemeris solutions are presented in yellow, the final orbit results in green. Both results are similar, but parts of the position solutions are shifted in different directions. The differences are usually less than 1 m. Table 10 shows the differences between the two solutions in numerical terms. If the final orbits are used, significantly fewer positions can be determined. However, the standard deviations for E and N are larger. The standard deviation of the height is similar for both methods. The resulting deviation is about 40 cm larger than with the broadcast ephemeris solution. However, if one only looks at the deviation of the height, it has improved by about half a metre to 49 cm. Overall, the solution deviates by about 3.2 m from the reference coordinates. The use of the more accurate orbit data, however, does not improve the accuracy in this case.

Fig. 13
figure 13

Comparison of the DGPS solutions with base station Leopoldau and broadcast ephemeris (yellow) and IGS final orbits (green)

Table 10 Comparison of the DGPS solutions for the base station Leopoldau using broadcast ephemeris or IGS final orbits

Kinematic applications

In order to simulate application scenarios such as line documentation, e.g. for underground power lines, or the approximate recording of trajectories, measurements are carried out along a straight line. This is done by walking a predefined distance between two known points at a slow pace, with a break of several seconds approximately every 5 m (i.e. in stop-and-go mode). The observations are continuously recorded and the trajectory is observed both in the outward and in the return direction. The whole trajectory at Karlsplatz has a total length of 95.86 m. On one way, measurement data are recorded over a period of 15 min. Observations for the return trajectory are available for more than 8 min. The pause between the two measurements is less than 1 min. The following analysis does not include the height, but only examines the 2D coordinates. RTKPost calculates the GPS, GLONASS, Galileo and Beidou solutions for the outward and return journey. The resulting 8 position files are transformed, merged and plotted with Matlab (Fig. 14). A total of 3497 positioning solutions are available. After elimination of gross errors and outliers, an adjusted straight line was estimated from the obtained point cloud. This adjusted line can then be compared with the calculated distance between the two known points. The adjusted line is shown in red and the ground truth in green in Fig. 14. The actual distance can be easily reproduced by the straight line. However, the estimated adjusted line has a slightly lower slope. This results in an increasing distance between the two straight lines. The maximum distance obtained resulted in 0.97 m. A problem is the start and end point of the determined trajectory. The adjusted line is too long and extends more than 10 m beyond the distance between the known points serving as ground truth.

Fig. 14
figure 14

Adjusted straight lines of the point cloud along the straight route; the distance calculated from the known coordinates is shown in green and the distance calculated with the help of the neighbourhood analysis from the points is shown in red where the red points have been included in the calculation of the adjusted line

Summary of the main results

Various observations were carried out in this study, the measurement data of which were analysed in the previous sections. In addition to a long-term measurement of 150 min, several practical measurements were carried out over an observation period of 20 min. Finally, a measurement along a trajectory in stop-and-go mode was investigated. The measurement data were evaluated using the positioning methods SPP, PPP and DGNSS. The main results are summarised below, with reference to the criteria mentioned in the task description: measurement effort, quality, accuracy and repeatability of the measurements.

Measurement effort

The effort for the actual measurements is low. In addition to the smartphone, depending on the measurement task, only a mounting device for the mobile phone and a tripod are required for long-term observations on reference points, such as observation pillars, or new points to be determined. The observation time should be chosen rather longer, as the quality of the measurement data varies considerably over time. The shortest time span considered in this work is 10 min. The analysis of the data is more complex. Only observation files can be created with the Geo +  + RINEX Logger. The navigation message, i.e. the satellite ephemeris, must be obtained elsewhere. The position determination was performed with RTKLib. The calculated solution point clouds were then transformed with Matlab to UTM and further processed into a single positional solution.

Signal quality

Compared to geodetic GNSS receivers, the quality of the observations is significantly lower. The recorded satellite signals are weaker and there are frequent signal outages, which also occur at the zenith. The Pixel 5 allows only GPS and GALILEO satellites to be observed on two frequency bands. Many (older) geodetic receivers record the data of the L1 and L2 frequency bands. The Pixel 5 receives the frequency bands L1 and L5. This incompatibility complicates the baseline analysis. Although the Pixel 5 is described as a dual-frequency receiver, only half of the GPS satellites broadcast on the L5 frequency band currently. What is obvious here is that the satellites with strong L1 signals could not be observed on the second frequency L5. Most of the Galileo satellites can be observed on both frequencies. The signals of the bands L5 and E5a are weaker overall than the signals of the bands L1 and E1. The high number of signal outages and the often low signal strength indicated by the SNR make further evaluation difficult. PPP solutions can only be calculated for GPS and GLONASS. However, this is often not possible for the entire observation period. At these points RTKLib automatically switches to SPP mode. The fact that a dual-frequency receiver is installed in the Pixel 5 can therefore only be used to a limited extent in our experiments.

Achievable positioning accuracies

The achievable accuracy depends, among other things, on the method used to determine the position and the length of the observation time. In general, SPP solutions have significantly higher standard deviations than PPP and DGNSS solutions. In the case of SPP solutions, these are usually in the order of a few metres. For PPP and DGNSS solutions, they are often less than 1 m. For DGNSS solutions, however, this applies only to GPS solutions in our experiment. The standard deviations of the GLONASS solutions are significantly larger. If one considers the deviations from the coordinates of the reference points, it is not easy to generalise the results. Table 11 summarises the GPS results of the different positioning methods for long-term observations. The differences in accuracy of the individual methods are clearly visible. The lowest precision is achieved with SPP and DGNSS. The DGNSS solutions could not be improved by adjusting several baselines to the three EPOSA reference stations. The PPP solutions are much more accurate. The influence of different ephemeris data and correction parameters becomes clear.

Table 11 Summary of the different positioning methods for GPS of the long-term measurement

However, these clear differences of the results can only be seen for GPS in the long-term measurement. Both Galileo and Beidou provide SPP results with higher positioning accuracy for long-term measurements. However, these cannot be compared directly with the other solutions, as no PPP or DGNSS solutions are available for Galileo or Beidou. If the different GNSS are combined, SPP can achieve results with a deviation of less than half a metre. The combined solution of all four systems is not the best, as it is strongly influenced by the very inaccurate GLONASS results. However, position deviations of less than 30 cm can be achieved with the different combinations.

As described in this paper, the long-term measurement for GPS was divided into measuring intervals of 10 min each. For each of these intervals, position solutions were calculated using the methods SPP and PPP, using both broadcast ephemeris and IGS final orbits for the PPP calculation. The standard deviations for these solutions remain largely constant in the intervals. However, the accuracy varies significantly regardless of the method used. The measurement results therefore show poor repeatability for the 15 short observation periods of 10 min each. More measurements over longer periods will therefore be carried out in future work.

In addition to the long-term observation, further observations over 20 min were investigated on several known points. The differences between the results are in the range of several metres for both methods SPP and PPP. The results vary significantly between the different systems and the points of view. Because of the wide variation, it is difficult to say which system and method can be used to obtain the more accurate results. The SPP multi-GNSS solution, consisting of all four systems, can guarantee a positional deviation of less than 5 m in 3D. The PPP dual-GNSS solutions, consisting of GPS and GLONASS, provide a positional deviation of similar quality depending on the position and length of the observation period.

SPP and PPP solutions were also calculated for the measurement along the chosen trajectory. From the point cloud of the SPP solutions, an adjusted straight line could be estimated, which approximates the true trajectory well. The maximum deviation of the measured and true distance is less than 1 m. However, the adjusted line is a few metres longer than the true distance. Thus, the start and end point cannot be determined precisely from these measurements.

Repeatability

As described, the long-term observation for GPS was divided into measuring intervals of 10 min each. For each of these intervals, position solutions were calculated using the methods SPP and PPP, using both broadcast ephemeris and final orbits from IGS for the PPP calculation. The standard deviations for these solutions remain largely constant in the intervals. However, the accuracy varies significantly regardless of the method used. The measurement results therefore show poor repeatability for the 15 short observation periods of 10 min. Further analyses are required for different length of observation periods.

Final outcome discussion and outlook

In this contribution it was investigated to what extent modern smartphones can solve simple measurement tasks in surveying. It was hoped that due to the fact that smartphones of the latest generation can record multi-constellation GNSS signals on two frequency bands would increase achievable positioning accuracies compared to older smartphone models. Atmospheric influences that influence the signal propagation can be better eliminated with the help of a second frequency band. This was confirmed in individual measurements. In these measurements, however, mostly only one GNSS, namely, GPS, was useable. Observations on two frequency bands can only be made currently for GPS and Galileo with the Google Pixel 5. In this case, however, the observation data of the second frequency band L5 was of lower quality in the conducted experiments, so that unfortunately evaluation of both frequency bands is only possible to a limited extent in this study. Due to the high number of signal outages during the observations, a position determination based on phase observations was not possible for all satellite systems. In fact, only for GPS and GLONASS, phase observations could be included in the calculation. A position determination with the help of two frequencies and on the basis of the phase observations could therefore only be made for GPS. This solution is superior to the GPS solution based on code observations as long as a long observation time is selected. If IGS final orbits are also used, the accuracy can be further increased. The additional usage of clock correction parameters to the final orbits, however, has little influence on the solution.

It is unfortunate that multi-GNSS solutions could be calculated based only on code observations. These provide more reliable and accurate solutions than the results described above based on phase observations. This is due to the fact that the use of several satellite systems significantly increases the number of observations available. In these solutions, the achievable accuracy depends to a large extent on the length of the observation time. With this solution, the best results were also achieved for stop-and-go measurement along a predetermined straight line.

Whether the Google Pixel 5 or a similar smartphone is currently suitable for solving measurement tasks in surveying depends essentially on the requirements. Accuracies of less than half a metre can be achieved with long observation times. This should be sufficient for data acquisition for a GIS (Geographic Information System). However, if the observation time is shortened, the deviations often amount to several metres.

The achievable cm-accuracies given in the literature for the PPP solutions with comparable smartphone models cannot be confirmed here. These are mostly based on extensive calibrations for the smartphone GNSS antennae to determine the phase centre variations, see, e.g. in Darugna (2021); Nobuaki et al. 2020), and are therefore not always for practical usage.

For the future work, the following research questions will be investigated:

  • The long-term measurement was divided into intervals of 10 min each. Only the accuracy for GPS was investigated. How do the other GNSS and the SPP multi-GNSS solutions behave during the measurement?

  • What signal behaviour is shown for the L5 observations in different satellite constellations?

  • Which positioning accuracy can be achieved if the observation time of the long-term measurement is doubled?

  • What is the convergence behaviour of PPP solutions as a function of the observation time?

  • Which positioning accuracy is achieved in real-time positioning with the EPOSA RTK service? How accurately can the position be determined then in real-time?

  • Do similar problems occur with comparable smartphones? Are the accuracies to be achieved comparable?

  • Does the app used for data acquisition have an impact on the measurement results?