Advertisement

Journal of Geodesy

, Volume 93, Issue 5, pp 701–722 | Cite as

An assessment of smartphone and low-cost multi-GNSS single-frequency RTK positioning for low, medium and high ionospheric disturbance periods

  • Robert OdolinskiEmail author
  • Peter J. G. Teunissen
Open Access
Original Article

Abstract

The emerging GNSSs make single-frequency (SF) RTK positioning possible. In this contribution two different types of low-cost (few hundred USDs) RTK receivers are analyzed, which can track L1 GPS, B1 BDS, E1 Galileo and L1 QZSS, or any combinations thereof, for a location in Dunedin, New Zealand. These SF RTK receivers can potentially give competitive ambiguity resolution and positioning performance to that of more expensive (thousands USDs) dual-frequency (DF) GPS receivers. A smartphone implementation of one of these SF receiver types is also evaluated. The least-squares variance component estimation (LS-VCE) procedure is first used to formulate a realistic stochastic model, which assures that our receivers at hand can achieve the best possible ambiguity resolution and RTK positioning performance. The best performing low-cost SF RTK receiver types are then assessed against DF GPS receivers and survey-grade antennas. Real data with ionospheric disturbances at low, medium and high levels are analyzed, while making use of the ionosphere-weighted model. It will be demonstrated that when the presence of the residual ionospheric delays increases, instantaneous RTK positioning is not possible for any of the receivers, and a multi-epoch model is necessary to use. It is finally shown that the low-cost SF RTK performance can remain competitive to that of more expensive DF GPS receivers even when the ionospheric disturbance level reaches a Kp-index of 7−, i.e. for a strong geomagnetic storm, for the baseline at hand.

Keywords

Smartphone RTK Low-cost RTK receiver Ionosphere-weighted models Kp-index Multi-GNSS L1 GPS B1 BDS E1 Galileo L1 QZSS 

1 Introduction

With the combination of Global Navigation Satellite Systems (GNSSs) like the Chinese BeiDou Navigation Satellite System (BDS), European Galileo, Japanese Quasi-Zenith Satellite System (QZSS) and the American Global Positioning System (GPS), single-frequency (SF) real-time kinematic (RTK) positioning becomes feasible (Verhagen et al. 2012; He et al. 2014; Teunissen et al. 2014; Zhao et al. 2014; Odolinski et al. 2015a). GPS+Galileo RTK positioning was investigated in (Julien et al. 2003; Odijk and Teunissen 2013; Paziewski and Wielgosz 2015), and first results using BDS outside of China are reported in (Montenbruck et al. 2013; Nadarajah et al. 2013). SF GPS and GLONASS Precise Point Positioning (PPP) results were illustrated in (Bakker and Tiberius 2017), and combined GPS, GLONASS, BDS and Galileo PPP in (Lou et al. 2016; Pan et al. 2017).

The studies in (Odolinski and Teunissen 2016, 2017b; Mongredien et al. 2016) analyzed low-cost SF RTK receivers that could track SF GPS+BDS observations, and demonstrated that a competitive ambiguity resolution and millimeter-centimeter-level positioning performance can be obtained to that of dual-frequency (DF) GPS RTK receivers (which cost several thousand USDs). We define “low cost” as a cost of at most a few hundred USDs per receiver and antenna. Other studies on SF GPS RTK using low-cost receivers can be found in (Wirola et al. 2006; Takasu and Yasuda 2008; Wisniewski et al. 2013; Pesyna et al. 2014). According to (Riley et al. 2017) most of the current Android-based smartphone devices that can deliver GNSS code and phase observations do so with an accumulated delta range with an arbitrary phase offset and duty cycling, which can hinder integer ambiguity resolution. This is similar to what was observed in (Banville and Diggelen 2016; Realini et al. 2017; Siddakatte et al. 2017).

In this contribution we will compare the performance, for the first time, for two low-cost SF RTK receivers that can track L1 GPS, B1 BDS, E1 Galileo and L1 QZSS, or any combinations thereof, as well as a smartphone implementation of one such SF RTK receiver. This will be done both formally and empirically for baselines with ionospheric disturbances (see e.g. Yuan and Ou 2001b) at absent, low, medium and high levels, thereby making use of the ionosphere-weighted model. Some initial formal (simulated) SF 4-system results were shown in (Odolinski and Teunissen 2017a) for medium ionospheric activity, whereas in this contribution we will also evaluate such performance empirically using real data. The global ionospheric disturbance can be measured by the Kp-index (Bartels et al. 1939). The Kp-index is given for three-hour time intervals and is obtained as the weighted average of the disturbance levels observed at selected global geomagnetic observatories. The final Kp-index is determined by GFZ, Potsdam in Germany (https://www.gfz-potsdam.de/en/kp-index/) and range between 0o, 0+, 1−, 1o, 1+... all the way up to 9o, i.e. 28 values in total. Minor geomagnetic storms are defined with a Kp-index of 5 (denoted G1), moderate storms at 6 (G2), strong storms at 7 (G3), severe storms at 8 (G4), and finally extreme storms at 9 (G5). In this contribution we will analyze data with a Kp-index reaching a level of 7−, i.e. a strong G3 storm, which occur only about eleven to twelve days per year (http://www.swpc.noaa.gov/sites/default/files/images/NOAAscales.pdf).

This contribution is organized as follows. In Sect. 2 we define the functional model of the SF 4-system RTK model with GPS, QZSS, BDS and Galileo observations. In Sect. 3 the GNSS data and baseline lengths are described for the evaluation of two types of low-cost SF RTK receivers, and a smartphone implementation of one such receiver. This section further describes the high-grade DF GPS RTK receivers and antennas that are used for the ionosphere-weighted baselines, and to be compared to the low-cost SF RTK receivers/antennas. In Sect. 4 the least-squares variance component (LS-VCE) and time correlation of the two types of low-cost RTK receivers are evaluated, and their positioning performance is compared in Sect. 5. In Sect. 6 the smartphone RTK solution is analyzed, and in Sect. 7 the best performing low-cost RTK receiver type is evaluated for ionosphere-weighted baselines with low, medium and high ionosphere disturbance levels for a baseline length of 8.9 km. In Sect. 8 a 21.8 km baseline with a reasonably low ionosphere disturbance level is compared to the 8.9 km baseline results. Finally in Sect. 9, a summary with conclusions is given.

2 Single-frequency 4-system RTK model

In the following we describe the single-baseline and SF RTK model. We assume for brevity that two receivers track all GNSSs on the same overlapping frequency j. When the baseline length between the receivers is sufficiently short (say a few kilometers), the satellite orbit errors and relative slant ionospheric delays can be neglected in the model (also referred to as the “ionosphere-fixed” model). The receivers are assumed to be from the same manufacturer (receiver make, type and firmware), which thus allows us to assume that the inter-system biases (ISBs) between all constellations are zero. We can then use inter-system double-differencing (DD) with respect to a common reference satellite (Julien et al. 2003) to maximize the redundancy of the model (Odijk and Teunissen 2013; Odolinski et al. 2015a).

In the following we denote systems as A for GPS, and B for QZSS+BDS+Galileo, respectively. The full-rank, single-epoch and SF (ionosphere-fixed) DD observation equations of systems A and B read
$$\begin{aligned} \begin{aligned}&E\left[ \begin{array}{lcl} D_{m}^{T}\phi \\ D_{m}^{T}p \end{array}\right] =\left[ \begin{array}{lcl} \lambda I_{m-1} &{} D_{m}^{T}G \\ 0 &{} D_{m}^{T}G \end{array} \right] \left[ \begin{array}{c} a \\ b \end{array} \right] \\&{D} \left[ \begin{array}{lcl} D_{m}^{T}\phi \\ D_{m}^{T}p \end{array} \right] = \left[ \begin{array}{ccc} D_{m}^{T}Q_{\phi \phi }D_{m} &{} 0 \\ 0 &{} D_{m}^{T}Q_{pp}D_{m} \end{array} \right] \end{aligned} \end{aligned}$$
(1)
in which E[.] denotes the expectation, D[.] the dispersion operator, \(\phi =[\phi _{A}^{T}, \phi _{B}^{T}]^{T}\) is the combined phase vector, \(p=[p_{A}^{T}, p_{B}^{T}]^{T}\) the combined code vector, \(a=[a_{A}^{T}, a_{B}^{T}]^{T}\) the combined inter-system DD integer ambiguity vector of size \(\left( m-1\right) \), with \(m=m_{A}+m_{B}\) the total number of satellites for systems A and B, and b is the baseline increment vector of size 3 if only receiver coordinates are estimated (size 4 if a Zenith Tropospheric Delay (ZTD) is also included). The matrix \(D_{m}^{T}=\left[ -e_{m-1}, I_{m-1}\right] \) is the differencing operator, where \(e_{m-1}\) is the \(\left( m-1\right) \) vector of ones, \(I_{m-1}\) the identity matrix of dimension \(\left( m-1\right) \), \(\lambda I_{m-1}\) is the wavelength matrix, and \(G=\left[ G_{A}^{T},G_{B}^{T}\right] ^{T}\) contains the undifferenced line-of-sight unit-vectors and has a dimension of \(m\times 3\) (and 4 if the ZTD is included). The \(\phi _{*}\) and \(p_{*}\) are the \(m_{*}\) vectors with between-receiver single-differenced phase and code observables, respectively, for systems \(*=\{A,B\}\). Note that the B1 frequency of second generation BDS-2 (see e.g. Montenbruck et al. 2013) that is tracked by our low-cost receivers does not overlap the L1 and E1 frequencies, so that classical system-specific differencing is employed for this system.
The variance matrices \(Q_{\phi \phi }=\text {blkdiag}\left( Q_{\phi _{A}\phi _{A}},Q_{\phi _{B}\phi _{B}}\right) \) and \(Q_{pp}=\text {blkdiag}\left( Q_{p_{A}p_{A}},Q_{p_{B}p_{B}}\right) \), respectively, contains
$$\begin{aligned} \begin{aligned}&Q_{\phi _{*}\phi _{*}}=2\times \sigma _{\phi _{j_{*}}}^{2}W_{*}^{-1}\\&Q_{p_{*}p_{*}}=2\times \sigma _{p_{j_{*}}}^{2}W_{*}^{-1} \end{aligned} \end{aligned}$$
(2)
with zenith-referenced phase \(\sigma _{\phi _{j_{*}}}^{2}\) and code \(\sigma _{p_{j_{*}}}^{2}\) variances. The matrix \(W_{*}=\text {diag}\left( w^{1_{*}},\ldots ,w^{m_{*}}\right) \) contains the satellite \(s_{*}=1_{*},\ldots ,m_{*}\) elevation-dependent weight (Euler and Goad 1991). The notation “diag” denotes a diagonal and “blkdiag” a block diagonal matrix, respectively.

When residual ionospheric delays become present, we will also use the so-called ionosphere-weighted model (Teunissen 1998b; Odijk 2002). This is done by adding a vector with slant ionosphere DD pseudo-observations \(\iota =\left[ \iota _{A}^{T}, \iota _{B}^{T}\right] ^{T}\) to the model in (1) and by parameterizing the DD slant ionospheric delays. By including such observations they can provide us with stochastic information of the delays between stations.

3 New Zealand GNSS data collection

Figure 1 and Table 1 depict the GNSS data to evaluate the two different SF low-cost RTK receiver types. The Detection, Identification and Adaptation (DIA) procedure by Teunissen (1990) was used to detect and identify outliers, and the LAMBDA method (Teunissen 1995) for ambiguity resolution.

Skytraq S2525F8-BD and ublox EVK-M8T RTK receivers are used to collect L1+L1+B1+E1 GPS+QZSS+BDS+Galileo data for a baseline length of 670 m. Note that the Skytraq receivers did not have the capability to track E1 Galileo at the time of writing this manuscript, whereas the ublox EVK-M8T receivers do. We initially connect the receivers to the same ublox ANN-MS patch antennas through antenna splitters, so as to truly track the same satellites. The LS-VCE procedure (Teunissen 1988; Teunissen and Amiri-Simkooei 2008) is then used to determine the zenith-referenced and undifferenced standard deviations (STDs) for code and phase. We then analyze the best performing low-cost SF receivers for different ionosphere-weighted baselines of 8.9 km and 21.8 km in length, and compare the performance to that of DF GPS tracked by Trimble 5700 receivers and Zephyr 2 antennas. For all evaluations the Geostationary Orbit (GEO) C03 BDS satellite had to be excluded since it yielded many incorrectly fixed instances caused by low-elevation multipath (Wang et al. 2015a, b), due to it being almost stationary and having a low elevation angle of around \(12^{\circ }\) with respect to the receivers (Odolinski and Teunissen 2016).
Fig. 1

Dunedin (WGS84 latitude \(45.87^{\circ }\)S): GNSS RTK receivers collecting data for single-baseline RTK, with dates depicted in Table 1. a Section 4: Patch ANN-MS antennas are connected to ublox EVK-M8T receivers. Skytraq S2525F8-BD RTK receivers have been connected to the same patch antennas as well through an antenna splitter so as to truly track the same GPS+QZSS+BDS constellation. Independent data are then subsequently used for positioning in Sects. 58, respectively, using the LS-VCE estimates. b Section 7: Nine hours of GNSS data of different geomagnetic disturbances with mean Kp-index 0+, 3o and 5o (as predicted by GFZ), respectively, were collected for a 8.9 km baseline in Dunedin, with ublox+patch and Trimble 5700+Zephyr antennas. Finally a similar GNSS data collection campaign was conducted for a baseline length of 21.8 km in Sect. 8. c The baselines formed to evaluate the RTK performance in Dunedin are 670 m, 8.9 km, and 21.8 km, respectively. The maps were obtained through Map data ©Google. a Low-cost L1+L1+B1 GPS+QZSS+BDS RTK receiver performance comparison for a baseline of 670 m using patch ANN-MS antennas (left two columns) with ublox EVK-M8T and Skytraq S2525F8-BD receivers connected to both antennas through an antenna splitter (second last right column) for LS-VCE. The D302 smartphone RTK receiver test is also depicted and connected to the same setup (last right column). b Ionosphere-weighted RTK receiver performance for a baseline of 8.9 km and 21.8 km (left three columns) with low-cost ublox EVK-M8T + patch collecting L1+L1+B1+E1 GPS+QZSS+BDS+Galileo data and Trimble 5700 + Zephyr 2 antennas collecting L1, L2 GPS data (right). c Dunedin baselines

Figure 2 depicts the number of satellites tracked over a 24 h period with a 30 s measurement interval in January 5 and 8, 2018, for ublox and the Skytraq receivers, respectively, with GPS (blue), BDS (magenta), QZSS (cyan), and total number of satellites (black). The satellite tracking by the ublox receivers is given at top and when Skytraq receivers are used at bottom row. The top row shows the total number of satellites for the ublox model when including Galileo (green) satellites as well, whereas the Skytraq receivers do not currently (as of January 2018) track Galileo.

Figure 2 shows that the number of satellites tracked by the Skytraq receivers is smaller than for ublox, where the total number of satellites range between 12 and 19, whereas the corresponding ublox receiver-satellite numbers are 13 to 21 satellites when tracking three systems. Moreover when Galileo is included for the ublox receiver at the top row, the total number of satellites does not go below seventeen over the entire 24 h period. Note also that the BDS MEO satellites do not repeat between 5 January and 8 January, which can explain some of the differences in number of BDS satellites between the receivers and time periods. The poorer tracking capabilities of the Skytraq receivers have subsequently been confirmed by communication with Skytraq (SkyTraq 2018) and were also independently verified by data in Perth, Australia. This implies that the ublox RTK receiver model is expected to be a stronger model provided that the code and phase (co)variances between the receiver types are of similar magnitude. Hence as a next step we will now investigate whether this is the case through LS-VCE.

4 LS-VCE and time-correlation of single-frequency low-cost RTK receivers

In this section we present LS-VCE (Teunissen 1988; Teunissen and Amiri-Simkooei 2008) results for the two different low-cost SF RTK receiver types, and investigate their time-correlation by using a zero-baseline (ZB) setup. This is done so we can formulate a realistic stochastic model, whereas an incorrect stochastic model will deteriorate the ambiguity resolution and positioning performance. For the purpose of LS-VCE, the geometry-fixed and ambiguity-fixed model was employed, while using very precise benchmark coordinates,
$$\begin{aligned} \begin{aligned}&\left[ \begin{array}{lcl} D_{m}^{T}\phi \\ D_{m}^{T}p \end{array}\right] -\left[ \begin{array}{lcl} \lambda I_{m-1} &{} I_{m-1} \\ 0 &{} I_{m-1} \end{array} \right] \left[ \begin{array}{c} a \\ \rho \end{array} \right] =\left[ \begin{array}{c} \epsilon \\ e \end{array} \right] \end{aligned} \end{aligned}$$
(3)
where \(\rho =[\rho _{A}^{T}, \rho _{B}^{T}]^{T}\) is the receiver-satellite range vector of size \(m-1\), \(\epsilon = \left[ \epsilon _{A}^{T},\epsilon _{B}^{T}\right] ^{T}\) the \(m-1\) combined phase random observation noise vector, and \(e = \left[ e_{A}^{T},e_{B}^{T}\right] ^{T}\) the \(m-1\) combined code random observation noise vector. In the geometry-fixed model the broadcast ephemerides are used to obtain the satellite coordinates, and the baseline is precisely known so that the receiver-satellite range \(\rho \) is also known.
Table 1

Functional models and data to be analyzed (Fig. 1)

Experiment

Location (baseline length)

Date (hh:mm:ss, UTC)

Receiver/antenna

Systems

Frequencies

Section 4

Dunedin, NZ (670 m)

December 9, 2017,

ublox EVK-M8T

GPS+QZSS

L1+L1

LS-VCE

11:40:30, 1 h (1 s)

+patch antennas

+BDS+Galileo

+B1+E1

with splitters

 

Skytraq S2525F8-BD

GPS+QZSS

L1+L1

 

+patch antennas

+BDS

+B1

Section 5

Dunedin, NZ (670 m)

January 5, 2018

ublox EVK-M8T

GPS+QZSS

L1+L1

Positioning

05:00:00, 24 h (30 s)

+patch antennas

+BDS+Galileo

+B1+E1

January 8, 2018

Skytraq S2525F8-BD

GPS+QZSS

L1+L1

04:48:00, 24 h (30 s)

+patch antennas

+BDS

+B1

Section 6

Dunedin, NZ (670 m)

January 21, 2018,

D302 smartphone

GPS+BDS

L1+B1

Positioning

 

23:21:30, 24 h (30 s)

+patch antennas

+Galileo

+E1

Section 7

Dunedin, NZ (8.9 km)

May 5, 2017,

ublox EVK-M8T

GPS+QZSS

L1+L1

Kp-index 0+

15:44:00, 9 h (30 s)

+patch

+BDS+Galileo

+B1+E1

May 7, 2017,

Trimble 5700

GPS

L1+L2

15:36:00, 9 h (30 s)

+Zephyr

  

Kp-index 3o

 

September 29, 2017,

ublox EVK-M8T

GPS+QZSS

L1+L1

 

05:56:00, 9 h (30 s)

+patch

+BDS+Galileo

+B1+E1

  

Trimble 5700

GPS

L1+L2

  

+Zephyr

  

Kp-index 5o

 

September 28, 2017,

ublox EVK-M8T

GPS+QZSS

L1+L1

(including 3h Kp-index 7-)

 

06:00:00, 9 h (30 s)

+patch

+BDS+Galileo

+B1+E1

  

Trimble 5700

GPS

L1+L2

  

+Zephyr

  

Section 8

Dunedin, NZ (21.8 km)

October 6, 2017,

ublox EVK-M8T

GPS+QZSS

L1+L1

Kp-index 1+

05:00:00, 24 h (30 s)

+patch

+BDS+Galileo

+B1+E1

 

Trimble 5700

GPS

L1+L2

 

+Zephyr

  

The predicted Kp-index is the mean value over nine hours of data, with notations ‘−’, ‘o’ or ‘+’ indicating the lower, intermediate and upper range in the respective index level

These benchmark receiver coordinates were determined from an ambiguity-fixed model while treating the ambiguities as time constant in a dynamic model over the entire observation time span (see Chapter 22, p. 654 in Teunissen and Montenbruck 2018). The observation noise vectors \(\epsilon \) and e are zero-mean vectors provided that no multipath is present in (3).

We remark that although making use of antenna splitters (Fig. 1) guarantees that both receivers experience similar multipath effects, it can also increase the noise level and introduce some correlation in the data between the receivers. Nevertheless we will use independent data in the following sections, without antenna splitters, so as to validate our stochastic models determined through the LS-VCE STDs and to assure that this does not also affect the positioning results. Note also that we estimated the covariances between code and phase as approximately zero for both receiver types and all systems, and that covariances between the different satellites are not analyzed in this contribution.

Figure 3 depicts the single-epoch, undifferenced and zenith-referenced B1 BDS STDs based on the 670 m baseline data and an elevation cut-off angle of \(10^{\circ }\). This is given for ublox+patch in the top left two columns, and Skytraq+patch antennas at middle row and left columns while using L1+L1+B1 GPS+QZSS+BDS data during 1 h and using a 1 s measurement interval (c.f. Table 1). The corresponding DD phase and code least-squares (LS) residuals are also shown in the right two columns, respectively, where the same BDS reference satellite has been used for both models when formulating the DD. The large fluctuations and periodic behavior seen for the DD residuals and both receiver types are likely due to the poor signal reception and multipath suppression of patch antennas, see e.g. Pesyna et al. (2014), Odolinski and Teunissen (2017b). At the bottom row of Fig. 3 we therefore depict the Skytraq-ublox differenced DD residuals in the right two columns and the corresponding LS-VCE STDs in the left two columns. Note that the doubling in noise by differencing the DD residuals have been taken into account by dividing them by \(\sqrt{2}\). By this differencing we can thus mitigate potential multipath effects since the receivers are connected to the same antenna through splitters, and any remaining multipath would then mainly be due to the receivers being from different manufacturers or any non-simultaneous sampling of the GNSS observations. Finally we removed the additional number of satellites tracked by ublox (c.f. Fig. 2) for all results, so that the model strength is similar between the receivers.
Fig. 2

Number (\(\#\)) of satellites of L1+L1+B1+E1 GPS+QZSS+BDS+Galileo for ublox at top, when tracking L1+L1+B1 for ublox at middle in 5 January (24 h), 2018 at 05:00 (hh:mm), and Skytraq at bottom in 8 January (24 h), 2018 at 04:48 (UTC), all for an elevation cut-off angle of \(10^{\circ }\)

Fig. 3

a single-epoch LS-VCE of zenith-referenced and undifferenced code/phase B1 STDs using ublox EVK-M8T and Skytraq receivers connected to the same patch antennas (c.f. Fig. 1) and while using a L1+L1+B1 GPS+QZSS+BDS model. This was based on 1 h (1 s) and 670 m baseline data (Table 1), where both receiver types were restricted to track the same satellites. b Shows the corresponding B1 DD phase and code LS residuals where the same BDS reference satellite has been used between the two models. a B1 BDS STDs for ublox+patch (top), Skytraq+patch (middle) and based on Skytraq-ublox differenced DD LS residuals (bottom). b B1 DD LS residuals for ublox+patch (top), Skytraq+patch (middle) and Skytraq-ublox differenced DD LS residuals (bottom)

Table 2

Zenith-referenced and undifferenced code/phase STDs in Dunedin (NZ)

Location (baseline length)

Date (hh:mm:ss)

Receiver/antenna

System

Frequency

\(\hat{\sigma }_{p_{j_{*}}}\)(cm)

\(\hat{\sigma }_{\phi _{j_{*}}}\) (mm)

Dunedin (670 m)

December 9, 2017,

ublox EVK-M8T

GPS

L1

43 [21]

2 [1]

11:40:30 UTC

+patch

QZSS

L1

63 [27]

2 [1]

  

BDS

B1

49 [21]

2 [1]

  

Galileo

E1

44 [-]

2 [-]

December 9, 2017,

Skytraq S2525F8-BD

GPS

L1

32 [17]

2 [1]

11:40:30 UTC

+patch

QZSS

L1

66 [33]

3 [1]

  

BDS

B1

43 [15]

2 [1]

December 9, 2017,

Skytraq minus ublox

GPS

L1

(31)

(1)

11:40:30 UTC

DD LS residuals

QZSS

L1

(35)

(1)

  

BDS

B1

(27)

(1)

The STDs have been estimated based on models including all satellites from GPS+QZSS+BDS (+Galileo for ublox) and 1 h of data (1 s), independent from the data to be used for positioning (Table 1). The corresponding STDs based on day-differenced (December 9 11:40:30 minus December 10 11:36:30 UTC) DD residuals are shown in square brackets (without BDS MEO satellites), and when based on Skytraq-ublox differenced DD LS residuals (bottom row of Fig. 3) within parentheses. Note that the Galileo MEO satellites repeat their positions every tenth sidereal day, and thus day-differenced Galileo results are not presented for December 9–10

Table 2 shows the mean values of all estimated single-epoch STDs for all frequencies over the one hour time period, and when including all satellites. In addition for the ublox receivers that also track E1 Galileo, we provide the corresponding estimated STDs. The STDs based on the Skytraq-ublox differenced DD LS residuals (bottom row of Fig. 3) are shown within parentheses. Finally within square brackets we depict the corresponding LS-VCE STDs based on day-differenced DD residuals while taking into account the constellation repeatability period of one sidereal day (Axelrad et al. 2005) for GPS Medium Earth Orbit (MEO), and BDS/QZSS inclined geosynchronous satellite orbit (IGSO) satellites (Jiang et al. 2011), while the BDS Geostationary Earth Orbit (GEO) satellites are almost stationary (Montenbruck et al. 2013). The doubling in noise that enters is again taken into account by dividing the day-differenced DD code and phase LS residuals by \(\sqrt{2}\).

Table 2 shows, for instance, that the ublox code STDs reduce from 43 cm for L1 GPS, 63 cm for L1 QZSS, and 49 cm for B1 BDS, to 21 cm, 27 cm, and 21 cm, respectively, when based on day-differenced DD code residuals and when multipath has been significantly reduced. This is similar to the L1/B1 ublox+patch antenna results obtained in (Odolinski and Teunissen 2017b). Note further that the E1 Galileo STDs were not computed for the day-differencing since Galileo MEO satellites repeat their positions every tenth sidereal day (GalileoICD 2015), whereas we only collected two consecutive days of data. Nevertheless the corresponding E1 Galileo STDs are expected to have a similar magnitude to that of L1 GPS, see e.g. Odolinski and Teunissen (2017a) where geodetic antennas were used to suppress multipath.

Figure 3 shows that the phase STDs, in the left column and in green color, have reasonably similar excursions between the ublox+patch (at top) and in comparison with the Skytraq+patch antenna model (in the middle row). For instance STD excursions occur just before epoch 900, 1800 and between epochs 1800 and 2700, with a similar behavior in the DD phase LS residuals (right column). The bottom row of Fig. 3 illustrates that this is likely due to multipath since all excursions for the B1 phase STDs practically disappear as an effect of the Skytraq-ublox differenced B1 DD phase residuals (see also the smaller corresponding B1 STDs in Table 2). On the other hand, for the corresponding DD code residuals some of these excursions still remain in the results which is believed to be an effect of receiver-related filtering used for one of the receivers.

Table 2 namely shows that the L1 and B1 code STDs are smaller for the Skytraq receivers and in comparison with the ublox receivers. For instance the B1 code STD is 49 cm for the ublox receivers, whereas it is estimated as 43 cm for the Skytraq receivers. The smooth Skytraq B1 code STD time-series in the left column and corresponding code DD LS residuals in the right column (middle row) of Fig. 3, shows that this is likely an effect of “phase smoothing”, or more correctly referred to as filtering (Le and Teunissen 2006) such as a Hatch filter (Hatch 1982; Park et al. 2017) to bring down the code observation noise level (Bona 2000; Li et al. 2008; Li 2016). Such filtering techniques will introduce significant time-correlation in the single-epoch ambiguity-float positioning time-series (Le and Teunissen 2006), which is driven by the (filtered) code data.
Fig. 4

Autocorrelation coefficients for ZB ublox+patch (top) and Skytraq+patch antennas (bottom), with L1+L1+B1 GPS+QZSS+BDS single-epoch ambiguity-float (left) and ambiguity-fixed (right) Up positioning errors based on 1 h (1 s) (14 December, 2017 at 11:05:30 (hh:mm:ss) UTC). Their corresponding \(95\%\) confidence intervals are depicted as dashed red lines. A zoom-in is given for the first 300 s and 30 s, respectively

So as to study such time-correlation, which if neglected in a multi-epoch stochastic model will deteriorate the ambiguity resolution and positioning performance, we depict in Fig. 4 the autocorrelation coefficients (Amiri-Simkooei and Tiberius 2007; Teunissen and Amiri-Simkooei 2008). This is based on 1 h (1 s) data for the corresponding single-epoch ambiguity-float L1+L1+B1 local Up positioning errors as depicted in the left column, while making use of an elevation cut-off angle of \(10^{\circ }\). The North and East positioning errors behave in a similar manner and are thus not depicted for brevity. These positioning errors were computed by comparing the estimated positions to very precise benchmark coordinates. In these results we make use of a zero-baseline (ZB) setup, where the two receivers are connected to the same antenna through an antenna splitter, so that external error sources such as multipath are largely eliminated and any remaining errors would be due to the non-simultaneity of the receiver sampling. Any further time-correlation that would then show up would be due to internal effects in the receivers, such as filtering, or imposed by the use of antenna splitters. In addition we show in the right column of Fig. 4 the corresponding ambiguity-fixed results. The ublox+patch model is shown in the top row and when making use of Skytraq+patch antennas at bottom row.

Figure 4 shows that the time-correlation for the Skytraq+patch ambiguity-float positioning errors (in the left column and bottom row) are significantly larger than for ublox+patch (top row), which again makes us to believe that receiver-related filtering of the code data is used since code-multipath has been significantly reduced through the employment of a ZB. The time-correlation estimates namely exceed an autocorrelation coefficient of 0.5 for more than 100 s for the Skytraq receivers, whereas the ublox receivers reach similar values only after two seconds. The corresponding ambiguity-fixed positioning (in the right column) shows time-correlation estimates that reach zero after one second for both receiver types and that fall well within the \(95\%\) confidence interval (dashed red lines). This implies that any presence of phase-multipath has also been significantly reduced through the ZB.

As a final investigation on the possibility of receiver-related filtering for the Skytraq receivers we conducted an experiment with the same 670 m baseline setup as in Fig. 1, where we collected a total of 30 min (1 s) data and the Skytraq receivers were restarted every five minutes. This is done since phase smoothing techniques, like the Hatch filter, makes use of previous epoch code and phase data to obtain more precise code observations than the unfiltered single-epoch counterparts (Le and Teunissen 2006). By re-starting the receivers we can then make sure that any receiver-related filter is re-initialized, which should consequently result in less precise code observations until the filter (re-)converges. Figure 5 depicts the corresponding single-epoch L1+L1+B1 DD code LS residuals at top and the ambiguity-float (code-driven) positioning errors in local North, East and Up at bottom row. Any gaps in the time-series are due to the time taken to power off and on the receivers, and re-start the GNSS data collection process.
Fig. 5

Five minute receiver re-starts of Skytraq+patch L1+L1+B1 GPS+QZSS+BDS model with single-epoch DD code LS residuals at top and single-epoch ambiguity-float positioning errors (N/E/U) at bottom row. The time-gaps in the data is due to the time taken to power the receivers off and on, and re-start the GNSS data collection. The data were collected at 5 January, 2018 at 01:37:31-02:17:44 (hh:mm) UTC

Figure 5 shows that the single-epoch DD code LS residuals and corresponding ambiguity-float positioning indeed gets more precise over time, particularly at the end of each five minute period. One can also see at every re-start of the receiver (vertical dashed black lines) that the code observations, and thus the positions, get less precise. This indicates that receiver-related filtering to make the code observations more precise is used for the Skytraq receivers. This has also subsequently been confirmed by communication with Skytraq (SkyTraq 2018), and with an independent analysis of a ZB Skytraq receiver setup in Perth, Australia.

5 Positioning performance comparison between single-frequency low-cost RTK receivers

In this section we will investigate the positioning performance of the ublox EVK-M8T and Skytraq S2525F8-BD RTK receivers with ANN-MS patch antennas, while making use of the LS-VCE STDs as determined in Table 2. This analysis will be based on independent data of 24 h (Table 1), with a 30 s measurement interval so as to avoid some of the earlier-referenced time correlation. We will also compare the L1+L1+B1 GPS+QZSS+BDS performance to when we add the current (January 8, 2018) E1 Galileo constellation to the ublox receiver model.
Fig. 6

Single-epoch positioning errors in local North, East and Up for the a Skytraq+patch and b ublox+patch RTK receiver models for an elevation cut-off angle of \(10^{\circ }\). The ambiguity-float solutions are given at top and the correctly ambiguity-fixed positioning results are shown in the bottom row. These positioning results are based on 24 h (30 s) data (c.f. Fig. 1 and Table 1) independent of the data used to determined the stochastic model in Table 2. a Skytraq+patch: L1+L1+B1. b Ublox+patch: L1 + L1 + B1 + E1

In Fig. 6 we depict the single-epoch positioning errors for an elevation cut-off angle of \(10^{\circ }\), as determined by comparing the estimated positions to very precise benchmark coordinates, with ambiguity-float at top and ambiguity-fixed solutions at bottom row. These fixed solutions were determined as correctly fixed by comparing the single-epoch ambiguities to a set of reference ambiguities derived by using the geometry-fixed model with a Kalman filter and a dynamic model for the ambiguities, while treating them as time constant parameters over the whole time span. The mean value of all single-epoch formal variance matrices of the positions was used to formulate the formal \(95\%\) confidence ellipses and intervals, which are denoted in red color. The empirical variance matrix, as determined by comparing the estimated positions to the benchmark coordinates, was subsequently used to compute the corresponding empirical \(95\%\) confidence ellipses and intervals in green color.

Figure 6 shows the good agreement between the empirical and formal confidence ellipses and intervals, which implies that the stochastic model settings determined through LS-VCE (c.f. Table 2) are realistic. Note also the two order of magnitude improvement when going from single-epoch ambiguity-float solutions with meter-level precision at top, to ambiguity-(correctly)fixed solutions with millimeter-level precision at bottom row (Teunissen 1995). Once a Kalman filter with a dynamic model is used to define the multi-epoch models, and assuming the ambiguities to be time constant, the ambiguity-float baseline solutions will get more and more precise over time as the float ambiguities are then converging toward deterministic values (unless cycle slips occur). At some point the precision of the ambiguity-float baseline solution will equal or be very similar to that of the ambiguity-fixed counterpart, so that an improvement when going from ambiguity-float baseline to an ambiguity-fixed baseline solution will be less significant than in the single-epoch case in Fig. 6. Moreover for the Skytraq receivers, at left column and top row, we see again a somewhat smooth behavior of the ambiguity-float solutions despite the fact that a measurement interval of 30 s has been used. This implies that the earlier referenced receiver-related filter again affects the ambiguity-float positioning results (c.f. Figs. 4 and 5).

As a next step we evaluate the ambiguity resolution performance of the two receiver models. We make use of the following formula by Teunissen (1998a),
$$\begin{aligned} {P}[\check{z}_\mathrm{IB}=z] = \prod _{i=1}^{n} \left[ 2\varPhi \left( \frac{1}{2 \sigma _{\hat{z}_{i|I}}} \right) -1 \right] \end{aligned}$$
(4)
where \({P}[\check{z}_\mathrm{IB}=z]\) denotes the probability of correct integer estimation of the integer bootstrapped (IB) estimator \(\check{z}_{\mathrm{IB}}\) and \(\sigma _{\hat{z}_{i|I}}\), \(i=1, \ldots , n\), \(I=\{1, \ldots , (i-1)\}\), are the conditional STDs of the LAMBDA decorrelated ambiguities.
Figure 7 depicts the single-epoch formal bootstrapped (dotted lines) and empirical integer least-squares (ILS) success rates (SRs, full lines) that are averaged over the 24 h of data and conditioned on Positional Dilution of Precisions (PDOPs) \(\le 10\), so that the correctly fixed positioning can obtain millimeter to centimeter-level positioning precisions (Teunissen et al. 2014). The bootstrapped SR is a sharp lower bound to the ILS SR (Teunissen 1998a). The correctly fixed solutions to compute the empirical ILS SR were obtained by comparing the single-epoch estimated ambiguities to the reference ambiguities. The ILS SR is computed as,
$$\begin{aligned} P_{s_{E}|\text {PDOP}\le 10} = \frac{\# \text { of correctly fixed epochs } \textit{and} \text { PDOP}\le 10}{\text {total } \# {\text { of epochs}}} \end{aligned}$$
(5)
The figure shows that the ILS SRs are consistent with the bootstrapped SRs for all the depicted elevation cut-off angles.
Fig. 7

Single-epoch empirical ILS (full lines) and formal bootstrapped SR (\(P_{s| PDOP \le 10}\), indicated by dotted lines) for 4-system L1+L1+B1+E1 and 3-system L1+L1+B1 models as a function of the elevation cut-off angle, based on the 670 m baseline data as depicted in Fig. 1 and Table 1. The SRs are taken as a mean of all single-epoch SRs over one day, and conditioned on PDOP\(\le 10\)

Most importantly Fig. 7 shows the effect of the better satellite tracking (c.f. Fig. 2) of the L1+L1+B1 ublox+patch antenna model (black lines) over the corresponding Skytraq receiver model (red lines), with smaller SRs for the latter model particularly for higher than customary elevation cut-off angles above \(20^{\circ }\). Moreover when adding E1 Galileo to obtain the SF 4-system ublox+patch model (green lines), it achieves an excellent performance with \(100\%\) ILS SRs for cut-off angles up to \(25^{\circ }\) and \(99.5\%\) SR for the highest analyzed cut-off angle of \(30^{\circ }\). The corresponding 3-system SF ILS SRs are \(66.7\%\) and \(81.4\%\) for the Skytraq+patch and ublox+patch models, respectively.
Fig. 8

Single-epoch RTK with an elevation cut-off angle of \(30^{\circ }\): Horizontal (N/E) and vertical (U) positioning error time-series with L1+L1+B1 Skytraq+patch (left column), ublox+patch (middle column) and L1+L1+B1+E1 ublox+patch (right column), with empirical ambiguity-float in gray, incorrectly fixed in red, correctly fixed solutions in green color and formal ambiguity-float Up STD depicted as blue dashed lines based on 24 h (30 s) of data (Table 1). A zoom-in window is used for both the horizontal and Up positioning errors. Below each Up error time-series the ADOP is depicted as blue lines, and the 0.12 cycle level as dashed red lines. At bottom row the number of satellites is depicted in light green when above nine, and in red when below ten, cyan is QZSS, magenta BDS and dark green lines correspond to the Galileo satellites in the right column

Figure 8 shows the corresponding instantaneous positioning errors when using the cut-off angle of \(30^{\circ }\) for the three models, with the horizontal positioning scatter plot at top, and the Up positioning error time-series in the second row. The formal ambiguity-float Up STDs (blue dashed lines) are also depicted to show consistency with the empirical ambiguity-float results. The first column corresponds to the Skytraq+patch L1+L1+B1 results, second column to the ublox+patch model, and the third column shows the results when E1 Galileo is also included for the ublox model. A zoom-in window is used, for both the horizontal and Up positioning errors, to show the improvement when going from the ambiguity-float (in gray) and incorrectly fixed solutions (in red color) with meter-level precision, to millimeter-centimeter-level precision when the solutions are correctly fixed (green color). Third row depicts the Ambiguity Dilution of Precision (ADOP, Teunissen (1997), in blue), which is defined as,
$$\begin{aligned} \mathrm{ADOP}= \sqrt{|Q_{\hat{a}\hat{a}}|}^{\frac{1}{n}}\;\;\;\;\;\;(\mathrm{cycle}) \end{aligned}$$
(6)
where n the dimension of the ambiguity vector, \(Q_{\hat{a}\hat{a}}\) the ambiguity variance matrix, and |.| denotes the determinant. ADOP is a good approximation to the average precision of the ambiguities, and it also provides for a good approximation to the ILS SR (Verhagen 2005). When the ADOP is below the 0.12 cycle level (dotted red lines), one can generally expect an ambiguity SR larger than \(99.9\%\) (Odijk and Teunissen 2008). Finally fourth row of Fig. 8 depicts the total number of satellites in green and in red when below ten, whereas magenta corresponds to BDS, cyan QZSS and dark green lines to the Galileo satellites.

Figure 8 shows that the Skytraq model (left column) achieves a rather poor performance (ILS SR of \(66.7\%\)) for this high cut-off angle, since most of the time during the day the number of satellites is below ten (red lines) due to its poorer satellite tracking abilities. This gives many incorrectly fixed solutions (red dots) throughout the day except for a few hours just before epoch 1440 to 2160, and during those times the ADOPs (blue lines) are also close to the 0.12 cycle level (red dotted lines). Moreover the ambiguity-float STDs (blue dashed lines) have excursions of several tens of meters when the number of satellites reaches values of 5 or 6 due to the poor satellite geometry, e.g. at the beginning of the day, and around epochs 720 and 2880, which also give large excursions for the ambiguity-float solutions (gray dots) and incorrectly fixed solutions. The corresponding ublox receiver model (middle column) achieves a much better performance (ILS SR of \(81.4\%\)), particularly at the beginning of the day and until epoch 720 where the number of satellites is above nine (light green lines) most of the time. Most importantly when the Galileo satellites are added to the solution (in the right column), the ublox model achieves an ILS SR of \(99.5\%\) (c.f. Fig. 7) with correctly fixed solutions (green dots) with millimeter-centimeter level positioning precisions, and ADOPs close to or below the 0.12 cycle level since the number of satellites are above ten throughout the day.

6 Positioning performance of a smartphone implementation of a single-frequency low-cost RTK receiver

In this section we will investigate the positioning performance of an Android-based smartphone D302-RTK receiver (https://www.datagnss.com/handheld-rtk/) that has support of a 4G data network, and is able to track L1 GPS, B1 BDS and E1 Galileo. It is based on a Android 5.1.1 quad-core 1.3 Ghz processor and the satellite tracking is conducted by a ublox M8T GNSS receiver (DataGNSS 2018). This receiver is the same receiver that has been used throughout our contribution, i.e. in the evaluation kit of ublox (EVK-M8T). The total cost of this device is around 1000 USDs. We will use a ublox EVK-M8T receiver as the base station, and 670 m from it we locate the D302-RTK receiver which is also connected to a ublox ANN-MS patch antenna. This is the same baseline as depicted in Fig. 1 that was used to derive the results in the previous section, and since the D302 Android-based unit is based on the same receiver type (ublox M8T) we apply the same stochastic model settings (Table 2).

In Fig. 9 the single-epoch positioning errors of the L1+B1+E1 model (ublox to D302-RTK) are depicted with ambiguity-float at top and ambiguity-fixed solutions at bottom row, all given using an elevation cut-off angle of \(10^{\circ }\). The formal and empirical confidence ellipses and intervals at the \(95\%\) confidence level, are again denoted in red and green color, respectively. Note that the data used in this positioning analysis (24 h (30 s) data in 21–22 January, 2018) are independent of the LS-VCE results (1 h (1 s) data in 9 December, 2017) used to determine the stochastic model (Table 1). We further remark that the ambiguity-float North component has a small bias in Fig. 9, which we believe is due to code-multipath but it needs further investigation.
Fig. 9

Single-epoch positioning errors in local North, East and Up for L1+B1+E1 and the ublox EVK-M8T to smartphone D302 RTK receiver model with patch antennas for an elevation cut-off angle of \(10^{\circ }\). These positioning results are based on 24 h (30 s) data (c.f. Fig. 1 and Table 1) independent of the data used to determined the stochastic model in Table 2

More importantly the formal \(95\%\) confidence ellipses and intervals in Fig. 9 are in good agreement with the empirical counterparts, which again indicates that the stochastic model settings in Table 2 are realistic. Moreover when using this smartphone connected to a patch antenna it achieves a \(100\%\) SR over the entire 24-h time span, which is what we also observed for the ublox EVK-M8T receiver setup (Figs. 6 and 7). In other words we have shown that successful instantaneous ambiguity resolution and millimeter-centimeter level positioning precisions can now be achieved directly in a smartphone with such integrated SF RTK receiver.

7 Ionosphere-weighted single-frequency low-cost RTK receiver performance with ionosphere disturbances at low, medium and high levels

In the previous sections we demonstrated that instantaneous and successful low-cost SF RTK positioning is possible for a baseline length of 670 m. In this section we will investigate the corresponding performance when the residual ionospheric delays need to be modeled as a function of the baseline length of 8.9 km through the ionosphere-weighted model (Teunissen 1998b; Odijk 2002), while making use of the best performing SF 4-system L1+L1+B1+E1 RTK model. We tested the significance of the relative ZTD for all baselines and time-periods, where the mean ZTD values were estimated to at most a few millimeters with millimeter-level precision, similar to the phase precision. This indicates that the relative ZTD can be safely neglected for all our results so as to strengthen the models. In the next section we will also look at the low-cost SF RTK performance when the ionospheric disturbance is at a reasonably low level for a 21.8 km baseline.

7.1 Least-squares estimated DD slant ionospheric delays

The Kp-index for three nine-hour periods to be analyzed was determined as a mean value over each nine hour period as 0+, 3o and 5o (c.f. Table 1), respectively, i.e. low, medium and high levels. These levels were determined by GFZ, Potsdam, Germany (c.f. https://www.gfz-potsdam.de/en/kp-index/). DF L1, L2 GPS data were also collected with high-grade Trimble 5700 receivers and using geodetic Trimble Zephyr 2 antennas, at approximately the same receiver location as the low-cost SF receivers and patch antennas (c.f. Fig. 1).
Fig. 10

Single-epoch LS estimated DD slant ionospheric delays during nine hours of different geomagnetic disturbance levels (mean Kp-index 0+ at top, 3o at middle, and 5o at bottom row) for a 8.9 km baseline with an elevation cut-off angle of \(20^{\circ }\) in Dunedin, with ublox+patch (left) and Trimble 5700+Zephyr (right). The GPS DDs make use of the same reference GPS satellite for both receiver models. The geometry-fixed and ambiguity-fixed model was employed, and the data time periods and receiver setups are shown in Table 1 and Fig. 1, respectively. The first three hours of the high ionospheric disturbance period at bottom row was reaching a Kp-index 7−, i.e. a strong geomagnetic (G3) storm, followed by a Kp-index of 5− and 4−, respectively. a ublox+patch L1+L1+B1+E1. b Trimble 5700+Zephyr L1, L2 GPS

Note that the high disturbance period of Kp-index 5o also reached a Kp-index of 7− during the first three hours, i.e. corresponding to a strong geomagnetic storm of magnitude G3 (max Kp-index is 9o), and followed by a Kp-index of 5− and 4−, respectively. We remark also that during the low level of Kp-index 0+, the Trimble 5700 receivers tracked data two days later than the ublox data but that we take the GPS satellite repeatability period of one sidereal day (Axelrad et al. 2005) into account (see Table 1) so that the two nine hour periods of data can be compared.

Figure 10 depicts the single-epoch DD slant ionospheric delays determined by a L1+L1+B1+E1 ublox+patch model in the left column, and L1, L2 GPS tracked by Trimble 5700 with Zephyr 2 antennas in the right column. The same reference satellite is used when forming the GPS DDs so that a comparison can be made between the two receiver models. An elevation cut-off angle of \(20^{\circ }\) is used to avoid any low-elevation multipath on the estimates, and the geometry-fixed and ambiguity-fixed model has been employed. The DD STD for the ionosphere pseudo-observations was initially set to 5 cm for all the depicted nine hour periods. The estimated DD GPS slant ionospheric delays are depicted in blue color, Galileo in green, BDS in magenta, and the mean ionospheric delays averaged over all satellites and per epoch are denoted as black dots. In these results a system-specific reference satellite was used to formulate the satellite differences, so that the ionospheric delay for the single QZSS satellite tracked for this time period becomes zero. At top of each panel we depict the mean STD of all slant ionospheric delays over the nine hour periods. In this way we can assess whether the two receiver types give consistent indications of the actual relative ionospheric disturbance at the receiver locations.

Figure 10 shows overall a very good agreement between the two receiver models, with slightly larger STD, at the level of one millimeter level, for the ublox receivers at the top panel and in the left column. This is similar to the SF and DF GPS results in (Yuan and Ou 2001a; Zhang et al. 2018). More importantly, the figure confirms empirically the predictions by GFZ of low, medium and high ionospheric disturbance periods. The high disturbance period will likely result in a poorer single-epoch ambiguity resolution performance than in the calmer ionosphere conditions (Odijk (2002), Odolinski et al. (2015b), Odolinski and Teunissen (2017a)). This will be particularly true when the Kp-index is 7-, where Fig. 10 and the bottom row illustrates that some of the DD slant ionospheric delays even reaches magnitudes above 0.1 m several times during this three-hour period (epochs 0 h to 3 h). This consequently makes the mean DD slant ionospheric delays (black dots) to become significantly different from zero.

To further illustrate that the two receiver models can give similar DD slant ionospheric delay LS estimates, we depict in Fig. 11 the corresponding ublox minus Trimble GPS DD slant ionospheric delays for the Kp-index 5o period (bottom row of Fig. 10). The doubling in noise that enters by the differencing is accounted for by dividing the differenced DD slant ionospheric delays by \(\sqrt{2}\). One can from this figure see that the GPS DD slant ionospheric delays now fluctuate around zero and that the corresponding STD is at the level of the phase precision (see Table 2).
Fig. 11

ublox-Trimble differenced single-epoch LS estimated GPS DD slant ionospheric delays during nine hours with Kp-index 5o for a 8.9 km baseline and an elevation cut-off angle of \(20^{\circ }\) in Dunedin, while subtracting the ublox+patch results from the Trimble 5700+Zephyr model (bottom row of Fig. 10)

Table 3 summarizes the estimated ionosphere DD STDs from Fig. 10 expressed in units of mm per km, for the low, medium and high ionosphere disturbance levels. In this way we can compare the results in this section to the results in the following section, where a baseline length of 21.8 km will be analyzed. Note that the obtained STD of 1.4 mm per km for the medium level also resembles the recommendation in Schaffrin and Bock (1988) and the results obtained in Odolinski and Teunissen (2017b).
Table 3

Estimated mean STDs for the DD slant ionospheric delays (\(\hat{\sigma }_{\iota }\)) for a 8.9 km baseline in Dunedin during three different 9 h ionospheric disturbance periods as depicted in Fig. 10, and while using the data and receiver setups as depicted in Table 1 and Fig. 1, respectively. The nine-hour mean of the Kp-index (GFZ) is shown in the left column

Mean Kp-index

Date (hh:mm)

Receiver/antenna

\(\hat{\sigma }_{\iota }\) (mm/km)

0+

May 5, 2017,

ublox EVK-M8T

0.6

15:44:00 UTC

+patch

0+

May 7, 2017,

Trimble 5700

0.6

15:36:00 UTC

+Zephyr

3o

September 29, 2017,

ublox EVK-M8T

1.4

05:56:00 UTC

+patch

3o

September 29, 2017,

Trimble 5700

1.4

05:56:00 UTC

+Zephyr

5o

September 28, 2017,

ublox EVK-M8T

3.2

06:00:00 UTC

+patch

5o

September 28, 2017,

Trimble 5700

3.2

06:00:00 UTC

+Zephyr

7.2 Single- and multi-epoch ADOP results

Now we are in the position to evaluate the positioning and ambiguity resolution performance for the three different ionospheric disturbance periods. We evaluate the single-epoch (1) and multi-epoch models while making use of the DD ionosphere STDs (Table 3) to formulate our stochastic models, while also using the LS-VCE STDs in Table 2. The DF GPS STDs were estimated in Odolinski and Teunissen (2017a) as 18 cm and 19 cm for L1 and L2 code, respectively, with phase STDs at 2 mm for both frequencies, so we use the same stochastic model settings here. For the high ionosphere disturbance level, we set the DD ionosphere STD for the last six of the nine hours to 2.3 mm per km, which is the mean of the medium (3o) and high (5o) level STD in Table 3. This since this six hour period has a Kp-index of 5- and 4-, respectively, while the first three hours have a Kp-index of 7- (c.f. Fig. 10) and thus should be given the larger DD ionosphere STD of 3.2 mm per km.
Fig. 12

ADOP (blue lines), with the 0.12 cycle level (red lines), for ublox+patch L1+L1+B1+E1 RTK (left column) and DF GPS with Trimble 5700+Zephyr (right column) while using an elevation cut-off angle of \(10^{\circ }\). From top to bottom and the first three rows is the single-epoch ADOPs for low (mean Kp-index 0+), medium (3o) and high (5o) ionospheric disturbance periods, respectively, while using the STDs in Table 3 in the stochastic model for a baseline length of 8.9 km. Note in the bottom two rows for the first three hours a high ionosphere disturbance period with Kp-index 7- was present, and thus a DD ionosphere STD of 3.2 mm per km was used. Whereas for the subsequent six hours (Kp-index of 5- and 4-, respectively) a STD of 2.3 mm per km was employed. The bottom row depicts the ADOPs for the high ionospheric disturbance period while using a multi-epoch model for the same time period as that of the third row (with re-initializations every 15 min) a ublox+patch L1+L1+B1+E1, b Trimble 5700+Zephyr L1, L2 GPS

Figure 12 depicts ADOP results for both models and instantaneous (single-epoch) ambiguity resolution while using an elevation cut-off angle of \(10^{\circ }\). The SF 4-system model is depicted in left and DF GPS in the right column. The first three rows from top to bottom depict the low, medium and high ionospheric disturbance levels, respectively. The bottom row depicts a multi-epoch model while treating the ambiguities as time-constant parameters in a dynamic model for the high ionosphere disturbance period, whereas all other parameters are assumed unlinked in time. For this model we make use of re-initializations at every 15 min (30 epochs) so that larger samples of time to reach ADOP values below the 0.12 cycle level can be obtained. A zoom-in is here used to show the ADOPs during the first ten epochs of data.

Figure 12 and the top row show that we can expect the single-epoch model to achieve successful ambiguity resolution when the ionospheric disturbance is at low levels for this 8.9 km baseline, since the ADOP (blue lines) is below the 0.12 cycle level (red lines) during the entire nine hour period for both models. The SF 4-system performance for the medium level (in the second row from top) will be somewhat poorer, however, where the ADOPs are somewhat larger than for the DF GPS model. This is consistent with the results obtained in (Odolinski and Teunissen 2017a). However, when the ionospheric disturbance is at the high level (at the third row from top), we predict that the multi-epoch model needs to be used for both receiver types. This since the single-epoch ADOP are much larger than the 0.12 cycle level all the time, with a poorer performance for the SF 4-system model. The corresponding single-epoch ADOPs are moreover, as expected due to the stochastic model settings, particularly large with values above 0.25 cycles in the first 360 epochs during the high ionospheric disturbance period (i.e. the three hours with Kp-index 7-).

When the multi-epoch model is used for the high ionospheric disturbance level, as depicted in the bottom row of Fig. 12, the time to reach the 0.12 cycle level is, on average over the 36 (re-)initializations, about five epochs (2.5 min) and three epochs (1.5 min) for the SF 4-system and DF GPS models, respectively. We have thus predicted that the low-cost solution can give an almost competitive ambiguity resolution performance to that of DF GPS when a Kalman filter with a dynamic model need to be used.

7.3 Single-epoch RTK positioning results

As a next step we will now investigate the corresponding empirical positioning performance. Figure 13 depicts the local Up positioning error results, whereas the North and East errors are not shown for brevity (but their (multi-epoch) ambiguity-fixed STDs are further depicted in Table 4). Below the Up time-series the corresponding ADOPs (c.f. Fig. 12) are given together with the mean DD slant ionospheric delays averaged over all satellites and per epoch, as determined through the geometry-fixed and ambiguity-fixed model similar to Fig. 10. We aim here at instantaneous (single-epoch) ambiguity resolution, whereas in Fig. 14 we will look at the multi-epoch solution while using a dynamic model for the ambiguities.
Fig. 13

Single-epoch model for a 8.9 km baseline, with mean Kp-index 0+ (top), 3o (middle) and 5o (bottom rows): Vertical (U) positioning error time-series with L1+L1+B1+E1 ublox+patch (left column) and L1, L2 GPS Trimble 5700+Zephyr (right column), with ambiguity-float in gray, incorrectly fixed in red, and correctly fixed solutions in green color based on 9 h (30 s) of data (Table 1). A zoom-in window is used for the Up positioning errors. Below each Up error time-series the ADOP (from Fig. 12) is depicted as blue lines, the 0.12 cycle level as dashed red lines, and the mean DD slant ionospheric delays averaged over all satellites and per epoch, as determined by employing the geometry-fixed and ambiguity-fixed model, are given as black dots (in units of meters). The ILS SR (bootstrapped SR within parentheses) is \(100\%\) (\(100\%\)), \(99.1\%\) (\(97.5\%\)) and \(68.2\%\) (\(36.3\%\)) from top to bottom rows for the SF 4-system, and \(100\%\) (\(100\%\)), \(99.4\%\) (\(99.4\%\)) and \(82.5\%\) (70.9%) for DF GPS, respectively. An elevation cut-off angle of \(10^{\circ }\) is used

Fig. 14

Multi-epoch model for a 8.9 km baseline with initializations every epoch when TTFF has been reached, mean Kp-index 5o: Horizontal (N/E) and vertical (U) positioning error time-series with L1+L1+B1+E1 ublox+patch (left column) and L1, L2 GPS Trimble 5700+Zephyr (right column), with mean TTFF in red, orange and green bars for three-hour periods with Kp-index 7-, 5- and 4-, respectively (Table 1). The corresponding TTFF STDs are also given, and the ILS SR is \(100\%\) for both models. A zoom-in window is used for both the horizontal and Up positioning errors, and an elevation cut-off angle of \(10^{\circ }\) is used

The top rows of Fig. 13 show the results during the period of Kp-index 0+, middle 3o and bottom rows the 5o data. Note at the bottom row of Fig. 13 that the mean DD slant ionospheric delays (black dots) are significantly larger between epoch 540 and 810 for the DF GPS model since these depicted delays are averaged over all GPS satellites, whereas the SF 4-system model also tracks Galileo, BDS and QZSS and thus the corresponding averaged slant ionospheric delays become somewhat smaller (c.f. Fig. 10).

Figure 13 shows that the low-cost SF 4-system RTK receiver model achieves a competitive performance to DF GPS for the low ionosphere disturbance period at the top row, as was also predicted by the ADOPs in Fig. 12. The ILS SR is namely \(100\%\) for both models over the entire nine hour period, which results in the millimeter-centimeter level positioning precisions in green color. When the Kp-index increases to 3o in the middle row, the magnitude of the mean DD slant ionospheric delays, depicted as black dots, increases in comparison with the low level period. However the performance between the two models then still remains similar, since the SF 4-system model achieves an ILS SR of \(99.1\%\) and DF GPS a \(99.4\%\) SR. Finally when the ionospheric disturbance is at a high level (at the bottom row) with a nine-hour mean Kp-index of 5o, the models achieve an ILS SR of \(68.2\%\) and \(82.5\%\) for the SF 4-system and DF GPS models, respectively. The poorest performance is obtained, as expected, during the first three hours, when the Kp-index is 7- (c.f. Fig. 10), which is also reflected through the large excursions of the DD slant ionospheric delay time-series that results in a similarly poor positioning performance.
Fig. 15

L1 GPS Kalman-filter-based positioning without (top) and with (middle row) ionosphere corrections (Kp-index 5o): Vertical (U) positioning error time-series with ublox+patch (left column) and Trimble 5700+Zephyr (right column), with ambiguity-float in gray, incorrectly fixed in red, and correctly fixed solutions in green color based on 9 h (30 s) of data (Table 1). A zoom-in window is used for the Up positioning errors. Below the ionosphere-corrected (and ionosphere-weighted) model Up error time-series, the bootstrapped SRs time-series are shown (bottom row) since a \(P_{s}\ge 99\%\) criterion was used to determine when to fix the ambiguities to integers. The GPS DD slant ionospheric delay corrections were determined through LS by L1, L2 GPS Trimble 5700+Zephyr (left) and L1+L1+B1+E1 ublox+patch (right column), respectively, while using the geometry-fixed and ambiguity-fixed model (c.f. Fig. 10)

7.4 Multi-epoch RTK positioning results

In Fig. 14 we depict the corresponding multi-epoch results for the nine hour period with mean Kp-index 5o. We produced the results by using a Kalman filter that starts at the first epoch, and the ambiguities are kept as time-constant parameters in the dynamic model until the integer estimated ambiguities equals the set of reference ambiguities. These reference ambiguities were determined by keeping the ambiguities time constant over the entire time span and employing the geometry-fixed model. Then the filter is re-initialized at the second epoch, and the whole procedure is repeated again. Below each Up error time-series, we depict the time-to-first-fix (TTFF) as the time needed to re-produce the reference ambiguities. The TTFF is given as mean values for the separate three-hour periods (c.f. Fig. 10), i.e. for periods with a Kp-index of 7-, 5- and 4-, and is depicted as red, orange and green bars from left to the right column, respectively.

Figure 14 shows that the two models both achieve successful ambiguity resolution with ambiguity-fixed positions at the cm-level precision. We can also see that the fixed solutions are generally biased during the first three hours while the Kp-index is 7- and as an effect of the DD slant ionospheric delays as depicted at bottom row of Fig. 13, particularly for the SF 4-system model in the left column. In the DF case the slant ionospheric delays are shared between the two frequencies that thus leads to more precise corresponding estimates than in the SF case, which can explain the larger biases experienced for the SF model. Figure 14 illustrates further that successful ambiguity resolution is possible even in the presence of biases such as ionospheric delays, see e.g. Teunissen (2001), Li et al. (2014).

To illustrate that the ionospheric biases indeed are the main contributing factors to the corresponding biased correctly fixed positioning results for the high ionospheric disturbance period (Kp-index 5o), we depict in Fig. 15 the corresponding L1 GPS Up positioning errors while using a Kalman-filter and ionosphere-weighted model for both receiver types at the top row. The middle row depicts the corresponding results when corrections are available for the GPS DD slant ionospheric delays, i.e. we use \(\hat{\iota }\) as sample values for the ionosphere pseudo-observations. These sample DD slant ionospheric delays were determined through LS to obtain \(\hat{\iota }\) by making use of L1, L2 GPS Trimble 5700+Zephyr antennas for the L1 GPS ublox+patch antenna model in the left column, and by L1+L1+B1+E1 ublox+patch for the L1 GPS Trimble 5700+Zephyr antenna model in the right column of Fig. 15, while using a stochastic model setting of \(\sigma _{\iota }=5\) cm and employing the geometry-fixed and ambiguity-fixed models. In other words the LS estimated GPS DD slant ionospheric delay corrections applied to each model are based on independent baselines and receivers/antennas at approximately the same location (c.f. Fig. 1), and these estimates were also shown to be very similar between the two models (c.f. Fig. 11). We assume in our stochastic models that the LS estimated GPS DD slant ionospheric corrections that are applied have an uncertainty of \(\sigma _{\iota }=1.4\) mm/km (Table 3), which assures us that if small residual ionospheric biases remain these can also be estimated through the use of the ionosphere-weighted model. Any remaining biases in the fixed Up positioning results would then mainly be due to the ignored relative ZTD or multipath. Since the L1 GPS models need more than one epoch for successful integer ambiguity resolution (Odolinski et al. 2014), we make use of a bootstrapped SR criterion of \(P_{s}\ge 99\%\) before integer ambiguity resolution is attempted for all models. This criterion is also used to decide upon when to include newly risen satellites. The satellites are considered to rise when they exceed the user-defined elevation cut-off angle of \(10^{\circ }\). We depict therefore the bootstrapped SRs at the bottom row of Fig. 15 for the ionosphere-corrected (and ionosphere-weighted) L1 models.

Figure 15 shows that the bootstrapped SR reaches a value of \(99\%\) faster for the Trimble 5700 receivers than for the ublox receivers owing to the better L1 code precision. We can moreover see the effects on the L1 GPS positioning results for both receiver models as an effect of the earlier-referenced large GPS DD slant ionospheric delay scatters between epoch 540 and 810 (see bottom row and right column of Fig. 13). Moreover both L1 ionosphere-weighted models at the top row do not achieve successful ambiguity resolution over this entire nine hour period with high ionospheric disturbances. However when the GPS DD slant ionospheric delay corrections are used at the bottom row, we can see that the Up positioning errors become more unbiased than the uncorrected counterparts (at the top row), and that successful ambiguity resolution is possible over the entire observation time span once the bootstrapped SR of \(99\%\) has been reached for both L1 receiver models.

Most importantly, if we re-visit and analyze Fig. 14 again it shows that the SF 4-system and DF GPS models are still competitive when the Kp-index is 7-, where both models need up to about 10 epochs (5 min) as mean TTFF to obtain successful ambiguity resolution. This is also reflected by the ambiguity-float positioning errors that generally get more precise between epoch 0 and 360, which is an effect of the dynamic model for the ambiguities so that they over time will be driven by the very precise phase data until a filter re-initialization occurs. In summary, we have shown that the low-cost SF 4-system model can obtain competitive ambiguity resolution performance to DF GPS even when the ionosphere disturbance is at a high level with a strong geomagnetic (G3) storm.

Table 4 summarizes the mean TTFFs, their STDs, and the empirical STDs of the fixed positioning errors while using the multi-epoch model in Fig. 14. The results are given for the three nine hour ionosphere disturbance level periods. Note that the statistics of the high level (Kp-index 5o) is taken over the 3-hour periods of Kp-index 7-, 5- and 4- combined, and that the ILS SR is \(100\%\) for all models.
Table 4

Single-epoch empirical STDs (N, E, U) of correctly fixed positions with \(100\%\) ILS SR and mean TTFF±STD (\(\#\) of epochs with 30 s measurement interval) for L1+L2 GPS Trimble 5700+Zephyr and L1+L1+B1+E1 ublox+patch

Mean Kp-index

Model

STDs [mm], TTFF [epochs]

N

E

U

TTFF

0+

L1+L2

6

4

10

1.0±0.0

L1+L1+B1+E1

3

3

8

1.0±0.0

3o

L1+L2

11

6

21

1.0±0.1

L1+L1+B1+E1

8

6

16

1.0±0.1

5o

L1+L2

13

9

22

3.9±10.4

L1+L1+B1+E1

16

13

47

4.6±12.4

The baseline length is 8.9 km and in Dunedin, with ionosphere disturbance at low, medium and high levels (\(10^{\circ }\) elevation cut-off and 9 h of data, see Table 1)

Fig. 16

Single-epoch model for a 21.8 km baseline, mean Kp-index 1+: Horizontal (N/E) and vertical (U) positioning error time-series with L1+L1+B1+E1 ublox+patch (left column) and L1, L2 GPS Trimble 5700+Zephyr (right column), with ambiguity-float solutions in gray, incorrectly fixed solutions in red, and correctly fixed in green color based on 24 h (30 s) of data (Table 1). A zoom-in window is used for the Up positioning errors. Below each Up error time-series the ADOP is depicted as blue lines, the 0.12 cycle level as dashed red lines, and the mean DD slant ionospheric delays averaged over all satellites and per epoch, as determined by employing the geometry-fixed and ambiguity-fixed model, are given as black dots (in units of meters). The ILS SR (bootstrapped SR within parentheses) is \(100\%\) (\(98.9\%\)) and \(100\%\) (\(99.6\%\)) for the SF 4-system and DF GPS, respectively. An elevation cut-off angle of \(10^{\circ }\) is used

Table 4 shows that the positioning precisions are all at the millimeter level for the low and up to two centimeters in the Up component for the medium level period, for both receiver models. This implies that a competitive positioning performance can indeed be obtained during such ionosphere activity periods. However for the high ionosphere disturbance level, the SF low-cost RTK receiver solution obtains STDs that are larger than for DF GPS by up to 2.5 cm in the Up component. Note also that the STDs of the TTFF are several epochs during this high ionosphere disturbance period for both models, as an effect of the three hours that reached a Kp-index of 7-, i.e. a strong geomagnetic (G3) storm (c.f. Fig. 14).

In conclusion we have through the similar TTFFs in Table 4 shown that SF 4-system RTK model can give competitive ambiguity resolution performance to DF GPS for all the analyzed ionospheric disturbance periods and when the baseline length is 8.9 km. For the low and medium levels, instantaneous or very near-instantaneous ambiguity resolution is feasible, whereas at the high level both models need, on average, around 2 min in TTFF (and about 5 min when a Kp-index of 7- is reached, see Fig.  14).

8 Single-frequency low-cost RTK receiver performance for a 21.8 km baseline with ionosphere disturbances at a low level

In this section we will briefly analyze and compare the SF 4-system RTK performance to that of DF GPS for a baseline of 21.8 km in length, and when the Kp-index reaches 1+ (i.e. a reasonably low level). We will demonstrate that the performance will then still remain competitive to that of DF GPS. The analysis is based on 24 h of data as depicted in Table 1 and Fig. 1.

Figure 16 shows the corresponding ambiguity-float and correctly ambiguity-fixed positioning results for instantaneous RTK. Below each Up time-series we also depict the ADOPs and the mean DD slant ionospheric delays averaged over all satellites and per epoch, as determined by using the geometry-fixed and ambiguity-fixed model, similar to Fig. 13. The estimated mean STD of these DD slant ionospheric delays for all satellites is approximately 0.5 mm per km, i.e. smaller, as expected, than during the Kp-index 3o period as depicted in Table 3 (but slightly larger than the 0+ period). This STD is in total approximately 10 mm, which is thus slightly smaller than for the 3o period and the 8.9 km baseline in Fig. 10 that reached a value of 12 mm. We can thus expect to have a better performance for this 21.8 km baseline data than for the 8.9 km baseline during such medium ionosphere disturbance conditions.

Figure 16 illustrates that the two models, i.e. SF 4-system and DF GPS, indeed achieves a similar instantaneous ambiguity resolution performance with ILS SR of \(100\%\). Both models can thus provide for correctly fixed positioning precisions at the millimeter-centimeter level over the entire day.

In conclusion we have illustrated empirically that during calm ionospheric conditions, single-baseline RTK lengths of up to 21.8 km can be used for instantaneous ambiguity resolution and when using low-cost SF 4-system RTK receivers. We also demonstrated that such performance is then even better than during medium ionosphere disturbance periods for a baseline length of 8.9 km, as shown in the previous section. This is similar to the formal conclusions made in Odolinski and Teunissen (2017a).

9 Conclusions

In this contribution we investigated the low-cost single-frequency (SF) RTK receiver performance for two receiver types that can track L1 GPS, L1 QZSS, B1 BDS and E1 Galileo, or any combinations thereof, as well as a smartphone implementation of one such receiver. With “low cost” we refer to a cost of at most a few hundred USDs per receiver/antenna. We also compared the best performing low-cost receiver to high-grade dual-frequency (DF) GPS receivers and antennas that have a cost of several thousands USDs. The analysis was conducted in Dunedin, New Zealand for ionosphere disturbance at low, medium and high levels, thereby making use of the ionosphere-weighted model for a baseline length of 8.9 km. The periods analyzed had a Kp-index ranging between 0+ and 7-, i.e. for levels up to a strong geomagnetic storm (G3). We then compared the results to the performance obtained for a baseline length of 21.8 km during a reasonably low ionospheric disturbance period.

First we determined the code and phase (co)variances through least-squares variance component estimation (LS-VCE) for all receiver types so as to formulate a realistic stochastic model. We also looked at the time correlation for a zero-baseline (ZB) setup, and concluded that one of the low-cost RTK receiver types likely make use of receiver-related filtering, which is also commonly referred to as “phase smoothing”. Such phase smoothing was further verified by re-starting the receiver in five minute intervals, and we subsequently analyzed the single-epoch double-differenced (DD) code least-squares residuals and the corresponding ambiguity-float positions. A smartphone implementation of the better performing RTK receiver was then tested, and the stochastic model was verified by an independent 24 h data set. We showed that successful instantaneous ambiguity resolution and millimeter-centimeter level positioning precisions can now be achieved directly in such a smartphone.

By making use of the better performing low-cost SF RTK receiver types, we then investigated the performance for ionosphere disturbance at low, medium and high levels and a baseline length of 8.9 km. It was concluded, based on three nine hour data sets, that the instantaneous ambiguity resolution performance is competitive to that of DF GPS for a Kp-index up to 3o, whereas both receiver models need to make use of the multi-epoch model when reaching higher ionospheric disturbance levels. Fortunately however, the SF RTK receiver performance then still remained competitive to that of DF GPS, where a few minutes of time-to-first-fix (TTFF) was required when the Kp-index reached levels up to 7-. Finally, we confirmed such competitive performance under calm ionosphere conditions for a baseline length of 21.8 km. Once the future full constellations of Galileo, BDS and QZSS are employed, we can expect that the models will get stronger so that such combined SF performance will be further improved as long as the receivers do not have a limited number of satellites that they can track.

Notes

Acknowledgements

Julian Thom, Luke McDonald, Ben Courtman and Nigel Goulstone, School of Surveying of University of Otago, collected the GNSS data. The second author is the recipient of an Australian Research Council (ARC) Federation Fellowship (project number FF0883188). All this support is gratefully acknowledged.

References

  1. Amiri-Simkooei AR, Tiberius CCJM (2007) Assessing receiver noise using GPS short baseline time series. GPS Solut 11(1):21–35CrossRefGoogle Scholar
  2. Axelrad P, Larson K, Jones B (2005) Use of the correct satellite repeat period to characterize and reduce site-specific multipath errors. In: Proceedings of ION GNSS 18th International Technical Meeting of the Satellite Division, Long Beach, CA, USAGoogle Scholar
  3. de Bakker PF, Tiberius CCJM (2017) Real-time multi-GNSS single-frequency precise point positioning. GPS Solut 21(4):1791–1803.  https://doi.org/10.1007/s10291-017-0653-2 CrossRefGoogle Scholar
  4. Banville S, Van Diggelen F (2016) Precision GNSS for everyone: precise positioning using raw GPS measurements from Android smartphones. GPS World 27(11):43–48Google Scholar
  5. Bartels J, Heck NH, Johnston H (1939) The three-hour range index measuring geomagnetic activity. Geophys Res 44:411–454CrossRefGoogle Scholar
  6. Bona P (2000) Precision, cross correlation, and time correlation of GPS phase and code observations. GPS Solut 4(2):3–13CrossRefGoogle Scholar
  7. DataGNSS (2018) Communication 24/01/18. EmailGoogle Scholar
  8. Euler HJ, Goad C (1991) On optimal filtering of GPS dual frequency observations without using orbit information. Bull Geod 65:130–143CrossRefGoogle Scholar
  9. GalileoICD (2015) European GNSS (Galileo) Open Service, Signal in Space Interface Control Document, OS SIS ICD, Issue 1.2, Nov. 2015. Tech. repGoogle Scholar
  10. Hatch R (1982) The Synergism of GPS code and carrier measurements. In: 3rd International Geodetic Symposium on Satellite Doppler Positioning, Las Cruces - New Mexico, vol 2, pp 1213–1231Google Scholar
  11. He H, Li J, Yang Y, Xu J, Guo H, Wang A (2014) Performance assessment of single- and dual-frequency BeiDou/GPS single-epoch kinematic positioning. GPS Solut 18(3):393–403.  https://doi.org/10.1007/s10291-013-0339-3 CrossRefGoogle Scholar
  12. Jiang Y, Yang S, Zhang G, Li G (2011) Coverage performance analysis on combined-GEO-IGSO satellite constellation. J Electron 28(2):228–234Google Scholar
  13. Julien O, Alves P, Cannon ME, Zhang W (2003) A tightly coupled GPS/GALILEO combination for improved ambiguity resolution. In: ENC-GNSS, 22–25 April, Graz, AustriaGoogle Scholar
  14. Le AQ, Teunissen PJG (2006) Optimal recursive least-squares filtering of GPS pseudorange measurements. In: Symposium of International Association of Geodesy Symposia 132, Wuhan, China, May 29–June 2Google Scholar
  15. Li B (2016) Stochastic modeling of triple-frequency BeiDou signals: estimation, assessment and impact analysis. J Geod 90(7):593–610CrossRefGoogle Scholar
  16. Li B, Shen Y, Xu P (2008) Assessment of stochastic models for GPS measurements with different types of receivers. Chin Sci Bull 53(20):3219–3225Google Scholar
  17. Li B, Verhagen S, Teunissen PJG (2014) Robustness of GNSS integer ambiguity resolution in the precense of atmospheric biases. GPS Solut 18(2):283–296CrossRefGoogle Scholar
  18. Lou Y, Zheng F, Gu S, Wang C, Guo H, Feng Y (2016) Multi-GNSS precise point positioning with raw single-frequency and dual-frequency measurement models. GPS Solut 20(4):849–862CrossRefGoogle Scholar
  19. Mongredien C, Doyen JP, Strom M, Ammann D (2016) Centimeter-level positioning for UAVs and other mass-market applications. In: ION GNSS, Portland, OregonGoogle Scholar
  20. Montenbruck O, Hauschild A, Steigenberger P, Hugentobler U, Teunissen PJG, Nakamura S (2013) Initial assessment of the COMPASS/BeiDou-2 regional navigation satellite system. GPS Solut 17(2):211–222.  https://doi.org/10.1007/s10291-012-0272-x CrossRefGoogle Scholar
  21. Nadarajah N, Teunissen PJG, Raziq N (2013) BeiDou inter-satellite-type bias evaluation and calibration for mixed receiver attitude determination. Sensors 13(7):9435–9463CrossRefGoogle Scholar
  22. Odijk D (2002) Fast precise GPS positioning in the presence of ionospheric delays. Ph.D. dissertation, Netherlands Geodetic Commission, Publications on GeodesyGoogle Scholar
  23. Odijk D, Teunissen PJG (2008) ADOP in closed form for a hierarchy of multi-frequency single-baseline GNSS models. J Geod 82:473–492CrossRefGoogle Scholar
  24. Odijk D, Teunissen PJG (2013) Characterization of between-receiver GPS-Galileo inter-system biases and their effect on mixed ambiguity resolution. GPS Solut 17(4):521–533CrossRefGoogle Scholar
  25. Odolinski R, Teunissen PJG (2016) Single-frequency, dual-GNSS versus dual-frequency, single-GNSS: a low-cost and high-grade receivers GPS-BDS RTK analysis. J Geod 90(11):1255–1278.  https://doi.org/10.1007/s00190-016-0921-x CrossRefGoogle Scholar
  26. Odolinski R, Teunissen PJG (2017a) Low-cost, 4-system, precise GNSS positioning: a GPS, Galileo, BDS and QZSS ionosphere-weighted RTK analysis. Meas Sci Technol.  https://doi.org/10.1088/1361-6501/aa92eb
  27. Odolinski R, Teunissen PJG (2017b) Low-cost, high-precision, single-frequency GPS-BDS RTK positioning. GPS Solut 21(3):1315–1330.  https://doi.org/10.1007/s10291-017-0613-x CrossRefGoogle Scholar
  28. Odolinski R, Teunissen PJG, Odijk D (2014) First combined COMPASS/BeiDou-2 and GPS positioning results in Australia. Part II: single- and multiple-frequency single-baseline RTK positioning. J Spat Sci 59(1):25–46CrossRefGoogle Scholar
  29. Odolinski R, Teunissen PJG, Odijk D (2015a) Combined BDS, Galileo, QZSS and GPS single-frequency RTK. GPS Solut 19(1):151–163.  https://doi.org/10.1007/s10291-014-0376-6 CrossRefGoogle Scholar
  30. Odolinski R, Teunissen PJG, Odijk D (2015b) Combined GPS + BDS for short to long baseline RTK positioning. Meas Sci Technol 26:045801.  https://doi.org/10.1088/0957-0233/26/4/045801 CrossRefGoogle Scholar
  31. Pan L, Zhang X, Liu J, Li X (2017) Performance evaluation of single-frequency precise point positioning with GPS, GLONASS, BeiDou and Galileo. J Navig 70(3):465–482CrossRefGoogle Scholar
  32. Park B, Lim C, Yun Y, Kim E, Kee C (2017) Optimal divergence-free Hatch filter for GNSS single-frequency measurement. Sensors.  https://doi.org/10.3390/s17030448
  33. Paziewski J, Wielgosz P (2015) Accounting for Galileo-GPS intersystem biases in precise satellite positioning. J Geod 89(1):81–93CrossRefGoogle Scholar
  34. Pesyna KM, Heath R, Humphreys TE (2014) Centimeter positioning with a smartphone-quality GNSS antenna. In: Proceedings of ION GNSS, Tampa, FL, USAGoogle Scholar
  35. Realini E, Caldera S, Pertusini L, Sampietro D (2017) Precise GNSS positioning using smart devices. Sensors.  https://doi.org/10.3390/s17102434
  36. Riley S, Lentz W, Clare A (2017) On the path to precision—Observations with android GNSS observables. In: Proceedings of ION GNSS, Portland, OregonGoogle Scholar
  37. Schaffrin B, Bock Y (1988) A unified scheme for processing GPS dual-band phase observations. Bull Geod 62:142–160CrossRefGoogle Scholar
  38. Siddakatte R, Broumandan A, Lachapelle G (2017) Performance evaluation of smartphone GNSS measurements with different antenna configurations. In: RIN international navigation conference, 27–30 November 2017, BrightonGoogle Scholar
  39. SkyTraq (2018) Communication 04/01/18 and 10/01/18. EmailGoogle Scholar
  40. Takasu T, Yasuda A (2008) Evaluation of RTK-gps performance with low-cost single-frequency GPS receivers. In: International symposium on GPS/GNSS, pp 852–861Google Scholar
  41. Teunissen PJG (1988) Towards a least-squares framework for adjusting and testing of both functional and stochastic model. Internal Research Memo Geodetic Computing Centre, Delft Reprint of original 1988 report (2004), No. 26Google Scholar
  42. Teunissen PJG (1990) An integrity and quality control procedure for use in multi sensor integration. In: Proceedings of the 3rd international technical meeting of the Satelllite Division of the Institute of Navigation (ION GPS 1990), Colorado Spring, CO, pp 513–522. Also published in: Volume VII of the GPS Red Book: Integrated systems, ION Navigation, 2012Google Scholar
  43. Teunissen PJG (1995) The least squares ambiguity decorrelation adjustment: a method for fast GPS integer estimation. J Geod 70:65–82CrossRefGoogle Scholar
  44. Teunissen PJG (1997) A canonical theory for short GPS baselines. Part I: The baseline precision. J Geod 71:320–336CrossRefGoogle Scholar
  45. Teunissen PJG (1998a) Success probability of integer GPS ambiguity rounding and bootstrapping. J Geod 72:606–612CrossRefGoogle Scholar
  46. Teunissen PJG (1998b) The Ionosphere-weighted GPS baseline precision in canonical form. J Geod 72:107–117CrossRefGoogle Scholar
  47. Teunissen PJG (2001) Integer estimation in the presence of biases. J Geod 75:399–407CrossRefGoogle Scholar
  48. Teunissen PJG, Amiri-Simkooei AR (2008) Least-squares variance component estimation. J Geod 82(2):65–82CrossRefGoogle Scholar
  49. Teunissen PJG, Montenbruck O (eds) (2018) Handbook of global navigation satellite systems. Springer, New York .  https://doi.org/10.1007/978-3-319-42928-1
  50. Teunissen PJG, Odolinski R, Odijk D (2014) Instantaneous BeiDou+GPS RTK positioning with high cut-off elevation angles. J Geod 88(4):335–350CrossRefGoogle Scholar
  51. Verhagen S (2005) On the reliability of integer ambiguity resolution. Navigation 52(2):99–110CrossRefGoogle Scholar
  52. Verhagen S, Teunissen PJG, Odijk D (2012) The future of single-frequency integer ambiguity resolution. In: Sneeuw N, et al (eds) VII Hotine-Marussi symposium on mathematical geodesy, international association of geodesy symposia 137.  https://doi.org/10.1007/978-3-642-22078-4_5
  53. Wang G, de Jong K, Zhao Q, Hu Z, Guo J (2015a) Multipath analysis of code measurements for BeiDou geostationary satellites. GPS Solut 19:129–139.  https://doi.org/10.1007/s10291-014-0374-8 CrossRefGoogle Scholar
  54. Wang M, Chai H, Liu J, Zeng A (2015b) BDS relative static positioning over long baseline improved by GEO multipath mitigation. Adv Space Res.  https://doi.org/10.1016/j.asr.2015.11.032
  55. Wirola L, Alanen K, Kappi J, Syrjarinne J (2006) Bringing RTK to cellular terminals using a low-cost single-frequency AGPS receiver and inertial sensors. Position, location, and navigation symposium, IEEE/ION. April CA, USA, pp 25–27Google Scholar
  56. Wisniewski B, Bruniecki K, Moszynski M (2013) Evaluation of RTKLIB’s positioning accuracy using low-cost GNSS receiver and ASG-EUPOS. Int J Mar Navig Saf Sea Transp 7(1):79–85CrossRefGoogle Scholar
  57. Yuan Y, Ou J (2001a) An improvement to ionospheric delay correction for single-frequency GPS users—The APR-I scheme. J Geod 75(5–6):331–336CrossRefGoogle Scholar
  58. Yuan Y, Ou J (2001b) Auto-covariance estimation of variable samples (ACEVS) and its application for monitoring random ionospheric disturbances using GPS. J Geod 75(7–8):438–447CrossRefGoogle Scholar
  59. Zhang BC, Teunissen PJG, Yuan Y, Zhang H, Li M (2018) Joint estimation of vertical total electron content (VTEC) and satellite differential code biases (SDCBs) using low-cost receivers. J Geod 92(4):401–413CrossRefGoogle Scholar
  60. Zhao S, Cui X, Guan F, Lu M (2014) A Kalman filter-based short baseline RTK algorithm for single-frequency combination of GPS and BDS. Sensors 14(8):15,415–15,433.  https://doi.org/10.3390/s140815415 CrossRefGoogle Scholar

Copyright information

© The Author(s) 2018

Open AccessThis article is distributed under the terms of the Creative Commons Attribution 4.0 International License (http://creativecommons.org/licenses/by/4.0/), which permits unrestricted use, distribution, and reproduction in any medium, provided you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license, and indicate if changes were made.

Authors and Affiliations

  1. 1.National School of SurveyingUniversity of OtagoDunedinNew Zealand
  2. 2.Department of Spatial Sciences, GNSS Research CentreCurtin University of TechnologyPerthAustralia
  3. 3.Department of Geoscience and Remote SensingDelft University of TechnologyDelftThe Netherlands

Personalised recommendations