Abstract
Since the availability of raw global navigation satellite system (GNSS) measurements in Android devices in 2016, smartphone users have acquired the ability to not only process GNSS position, velocity, and time (PVT) solutions from chipsets, but also to utilize raw measurements to carry out their own GNSS postprocessing. Consequently, rather than relying on black-box algorithms inside the chipsets, it has become possible to understand and configure the navigation algorithms. To date, most publicly available navigation algorithms and corresponding publications that use Android raw GNSS measurements have focused on GNSS-only solutions. Furthermore, the top three participants of the Google Smartphone Decimeter Challenge in 2021 and 2022 were either unsuccessful in implementing an effective extended Kalman filter (EKF) using both GNSS and inertial navigation sensors (INSs) or found no significant improvements to their solutions arising from the use of non-GNSS sensors. This paper provides insight into the challenges of effectively implementing a traditional GNSS/INS EKF for smartphones and explores the reason behind the limited performance enhancements compared with GNSS-only solutions under benign environments. This work addresses these issues and provides solutions to alleviate these shortcomings by describing an algorithm to successfully fuse inertial sensors with raw GNSS measurements. The algorithm provides a robust solution by using not only the code, Doppler, and carrier-phase measurements in the PVT computation, but also the inertial sensors to assist in GNSS fault detection and exclusion (FDE) and to improve solution accuracy and availability. The novelties of this paper lie in the incorporation of a tightly coupled GNSS/INS EKF for sensor fusion, single-differenced GNSS measurements to eliminate the effects of receiver clock components, empirical modeling of GNSS and INS errors for statistical accuracy, utilization of both carrier-phase and Doppler measurements for accurate benign and challenging environment operations, and the application of INS for GNSS measurement FDE and navigation availability improvements.
1 INTRODUCTION
Smartphone devices are one of the most prevalent global navigation satellite system (GNSS) platforms worldwide (European Global Navigation Satellite Systems Agency, 2017). The location engine of these devices is used for a plethora of services including, but not limited to, real-time navigation and geolocation determination. However, unlike more expensive counterparts such as geodetic receivers, smartphone GNSS receivers have limited performance owing to their size, power, and cost constraints. For example, Zhang et al. (2018), Gill et al. (2017), and Liu et al. (2019) demonstrated that the carrier-to-noise density ratio (C/N0) of smartphone measurements is 7.5–10 dB-Hz lower than that of corresponding measurements from receivers equipped with high-grade hardware. Furthermore, in a study by Paziewski et al. (2019), the C/N0 values of Huawei P20 raw measurements were 9.4 dB-Hz lower than those of their Javad Alpha counterparts. Because of these lower signal strengths, signal tracking may be more difficult and more prone to multipath. These limitations present less of an issue in benign environments such as open-sky and suburban conditions, but lead to greater issues in challenging scenarios such as deep urban canyons. These issues are due to potential attenuation or outage of signals caused by interfering objects and increased effects of multipath from high-rise buildings. Although high-end GNSS antennas may have polarization protection to mitigate the effects of multipath, it is unlikely that smartphone antennas can support this.
To overcome these limitations, inertial navigation sensors (INSs) are often used with GNSS receivers in a GNSS/INS extended Kalman filter (EKF). The INS can assist the GNSS if signal availability issues arise and can capture the dynamics of the receiver at a higher rate than GNSS measurements. Prior to 2016, smartphone users were limited to a loosely coupled GNSS/INS EKF, where the GNSS positions and velocities are fused with the INS. However, the introduction of raw GNSS measurements on Android devices in 2016 made tightly coupled GNSS/INS EKF possible. Rather than relying on the GNSS position, velocity, and time (PVT) information provided by the chipsets in National Marine Electronics Association format, which was limited to three-dimensional (3D) position and horizontal velocity, it became possible to access all of the raw measurements to perform customized postprocessing. For example, the device attitudes could be estimated through the use of precise 3D velocity instead of time-differenced position estimates. Other advantages of raw GNSS measurements include the implementation of a differential GNSS (DGNSS) through the custom selection of reference stations (Enge et al., 1988), empirical modeling of GNSS measurements (Lee et al., 2021; Lee et al., 2024), and GNSS measurement fault detection and exclusion (FDE) (Lee et al., 2021; Lee et al., 2023a).
Although tight coupling of GNSS/INS is popular among most GNSS platforms used for navigation, its implementation has been less popular in publications related to smartphone research. For example, prior to 2024, none of the high-performing Google Smartphone Decimeter Challenge (GSDC) participants used the INS in their high-accuracy, high-precision PVT solutions (Suzuki, 2021, 2022; Dai, 2022; Everett, 2022). The first- and second-place winners of the GSDC 2023/2024 did announce at the Institute of Navigation GNSS+ 2024 conference that they used the INS; however, Motooka (2024) used the traditional GNSS/INS EKF and fused it with the post-processing kinematic solution for more smoothed results, and Suzuki (2024) used the INS to constrain the velocities in his factor graph application. One of the reasons why the INS-propagated solution was not considered as a significant source of PVT accuracy improvements is likely because the GSDC 2022 and GSDC 2023/2024 data sets were collected from benign environments such as highway or suburban environments. The contribution of the GNSS/INS EKF toward a more accurate and precise PVT solution primarily arises in challenging environments with various dynamics such as speed and heading changes. Several other papers have reported on a tightly coupled GNSS/INS EKF in smartphones (Yan et al., 2019; Ding et al., 2022), but with a focus on improving the PVT through the GNSS/INS EKF over single-point positioning in benign environments. These works provide limited insight into the potential of smartphone INSs in challenging environments, because a GNSS EKF would already provide decimeter-level accuracy in benign environments (Suzuki, 2021, 2022).
Although the potential of smartphone INSs is expected to become clear in urban canyon environments, it is difficult to simply use a traditional standalone tightly coupled GNSS/INS EKF on Android devices. These difficulties are due to multiple challenges with smartphone GNSS measurements such as clock discontinuities, multipath, and carrier-phase cycle slips. For example, if the GNSS receiver clock syncs with the smartphone network clock (Yun et al., 2023), the clock-drift-based clock bias estimations would be incorrect. Therefore, we use single-differencing with respect to reference satellites to remove receiver clock components, an effective approach demonstrated by Yun et al. (2024) in the GSDC 2023/2024. The effects of multipath and cycle slips would also impact the state estimates and measurement accuracies; thus, FDE is required to filter out affected GNSS measurements. Furthermore, there are limited resources on accurate expected error models for both GNSS measurements and INSs in smartphones. Especially in the case of single-differenced GNSS measurements, simply adding the expected noise covariances of each measurement would overestimate the noise owing to error correlation. To obtain accurate absolute metrics required for sensor fusion, the GNSS measurements must be modeled empirically instead of via popular theoretical models. For accelerometers and gyroscopes, although datasheet specifications are available, their statistics correspond to stationary lab environments and are thus not representative of their performances inside moving vehicles that have inherent vehicular noise added in their dynamics.
Considering advancements in smartphone system architecture, this paper addresses the following question: What quantitative improvements in navigation system performance are provided by the low-cost inertial sensors in smartphones? While it is known that an inertial measurement unit (IMU) enhances state information bandwidth beyond GNSS alone and enables attitude estimation, this study examines the extent to which these low-cost inertial sensors improve position and velocity performance in navigation. The term “nontraditional” refers to features beyond textbook INS/GNSS integration, including methods for handling GNSS signal quality challenges in urban environments. To answer this question, we propose a nontraditional single-differenced tightly coupled GNSS/INS EKF. In Section 2, we provide a detailed explanation of the algorithm. Section 2.A. explains how the GNSS measurements are preprocessed prior to being fed into the weighted least squares (WLS) and EKF. Then, the preprocessed measurements are input into the measurement update equation for single-differenced measurements, H, which is similar to the equation proposed in a past report on a single-differenced EKF (Lee et al., 2023a). Section 2.A also discusses how the GNSS measurements are modeled to create the measurement matrix, R. Section 2.B describes how the IMUs are utilized through the INS mechanization. Moreover, details regarding how the IMU noise is modeled and how it forms the system noise matrix, S, are provided. Finally, Section 2.C presents the GNSS/INS EKF, providing insight into the state vectors and initialization, state transition matrix computation, GNSS measurement FDE, and the fusion of carrier-phase position updates with Doppler/INS updates.
In addition to describing the algorithms used, this paper utilizes various data sets to validate the algorithm. As described in Section 3, these data sets include the GSDC 2023 data as well as challenging urban canyon data collected in downtown Denver, CO, USA. The GSDC 2023 data set is used because it is a well-known public data set and it is expected that the carrier addition to the code/Doppler GNSS/INS EKF would result in PVT improvements. However, GSDC 2023 data set was collected in benign environments; thus, an additional data set was collected in an urban canyon scenario to provide insight into the potential of INSs in challenging environments, the scenario in which the additional inertial sensors add the most value. In addition, although the GSDC data set provides only truth 3D position and horizontal velocity, our custom data set provides truth 3D velocity as well, which can be used to simulate perfect INS measurements. From this, we can gain insight into how much PVT improvement can be obtained by using higher-quality INSs. Detailed results are provided in Section 4, and Section 5 summarizes the finding that the carrier-phase measurements can provide PVT improvements in benign environments and that INSs are effective in both benign and challenging environments. These improvements arise because the INS enables GNSS measurement FDE as well as more accurate state updates compared with GNSS-only solutions, owing to its ability to capture vehicle dynamics when GNSS updates are not available because of lower GNSS measurement update rates, signal outages, or a lack of high-quality measurements.
2 METHODOLOGY
The proposed single-differenced tightly coupled GNSS/INS architecture illustrated in Figure 1 fuses GNSS observables (i.e., pseudorange, Doppler, carrier phase, and C/N0) with measurements obtained from an IMU. The GNSS measurements are first preprocessed using a DGNSS step and single-differenced to remove the effects of atmospheric delays and the receiver clock. Although the GNSS measurements are initially preprocessed with DGNSS corrections (using nearby reference stations), the state-space model in this paper explicitly refers to single-differenced measurements between satellites only. Therefore, when we mention “single-difference,” we specifically denote differences taken with respect to a reference satellite, without involving reference stations. Note that applying DGNSS corrections effectively results in measurements that resemble double differences (for code and Doppler) or triple differences (for carrier phase) from a classical positioning perspective. However, because the DGNSS is merely a preprocessing step to remove atmospheric and receiver clock errors, the actual measurement differencing defined in the state-space formulation remains strictly satellite-based single-differencing. Additionally, if atmospheric corrections from alternative sources or models are employed, the DGNSS step could potentially be omitted entirely without altering the fundamental single-differencing framework used in our model. The code/Doppler measurements are fed as inputs into the EKF, while the carrier measurements are processed using least squares. The states estimated from the EKF are time-propagated using the IMU through the INS mechanization. The propagated states along with expected GNSS measurement noise are used to carry out adaptive measurement-domain FDE. If valid carrier-phase measurements are available for the next epoch, they are used to update the Doppler/INS propagated position.
Overall proposed GNSS/INS filter architecture
A GNSS Measurement Processing
i GNSS Measurement Preprocessing
For the GNSS measurements, we perform the DGNSS step with respect to nearby monitoring stations. We employ this approach because it enables us to remove most effects due to the ionosphere and troposphere prior to navigation processing. If the stations are within 100 km from the user, the expected correction error is 0.22–0.67 m (Monteiro et al., 2005; Department of Transportation and Department of Defense, 2021); thus, we can assume that there are no residual atmospheric effects on the GNSS measurements. The stations selected are SLAC, VDCY, and P222, which are the same stations selected by Everett et al. (2022). The observation data for the reference stations were retrieved from the National Oceanic and Atmospheric Administration National Geodetic Survey database, and Broadcast Merged (BRDM) ephemeris data were attained from the National Aeronautics and Space Administration Crustal Dynamics Data Information System website. In addition, the satellite clock bias and drift were corrected using the ephemeris file.
In the proposed approach, the GNSS measurements are single-differenced with respect to a reference satellite. For example, if we write out the pseudorange expressions for reference satellite p and another satellite q, then the single-difference equations are as follows:
1
2
3
where ρ is the pseudorange R is the geometric range, δt is the receiver clock bias, M represents the effects of multipath, c is the speed of light, ∈ is the receiver noise, and ∆ represents the single difference. We apply these equations for each frequency and constellation separately to avoid having to deal with inter-constellation and inter-frequency biases. For the reference satellite, the satel-lite with the highest C/N0 is selected from each frequency and constellation group. We select the reference satellite based on the highest C/N0, rather than the commonly used highest-elevation-angle criterion. Although both metrics perform similarly in open-sky and suburban environments, the highest C/N₀ criterion is more effective in urban canyons, where high-rise buildings and overpasses frequently obstruct signals. In these challenging environments, signal quality indicators provide a more reliable basis for reference satellite selection than purely geometric criteria. High-elevation satellites may experience rapid visibility fluctuations, and selecting such satellites as references can introduce measurement anomalies, thus degrading the quality of the single-differenced measurements. Another point of concern is that a change in the reference satellite can affect the noise of the residuals. To address this, we apply empirically derived single-differenced measurement noise models, which are described in detail in subsequent sections. Additionally, single-differencing poses particular challenges for time-differenced carrier-phase measurements. If a cycle slip occurs in the reference satellite, or if the reference satellite changes between epochs, the corresponding time-differenced measurements become invalid for displacement computations. Whereas the reference satellite may remain stable for an hour or longer under open-sky conditions, urban canyon scenarios often trigger reference satellite changes within seconds. Consequently, we utilize single-differenced time-differenced carrier-phase measurements only when no cycle-slip alarms occur between epochs and when the reference satellite remains unchanged.
As a result of differencing, the effects of the receiver clock are removed, and we are left with only the terms for geometric range and range rate, the effects of multipath, and uncorrelated measurement noise. We will account for the effects of multipath in the anomaly detection phase of the algorithm, which is discussed later in this paper. The single-differenced code, Doppler, and carrier phase are as shown in Equations (4), (5), and (6):
4
5
6
where N is the integer ambiguity and λ is the wavelength. For the carrier phase, we utilize the time-differenced measurements between epochs (k) and (k-1) to estimate the change in position over time.
Because the relationship between the measurements and PVT solutions is non-linear, using the measurements in an EKF or WLS requires linearization to obtain the following form:
7
8
where is the state update vector for the state vector X and δxϕ is the carrier-phase-derived displacement:
9
a is a 3×1 attitude vector consisting of the 3-2-1 Euler angle sequence describing the orientation of the vehicle body frame relative to the north–east–down (NED) frame. That is, the attitude states are (ϕ,θ,ψ). The singularity that comes with Euler angles does not present an issue in this case because we are considering automotive applications, where θ is close to zero. Converting the algorithm so that it works with a direction cosine matrix or quaternion parametrization is straightforward. The 3×1 vector x represents the position of the vehicle in Earth-centered Earth-fixed (ECEF) coordinates, and is the velocity vector, also in ECEF coordinates. ba and bg are the 3×1 accelerometer and gyroscope bias vectors, respectively.
Finally, we can express the residuals in the following form for all GNSS measurements:
10
11
where and δzϕ are the difference between the observed and predicted single-differenced pseudorange, Doppler, and time-differenced carrier-phase measurements. These differences are subjected to code/Doppler FDE and carrier FDE, as discussed later in the paper. The linearization yields the following code/Doppler measurement matrix :
12
13
14
where υ is the line-of-sight (LOS) vector for each corresponding satellite and n is the number of satellites used in each GNSS signal group of distinct frequency and constellation. There is a total of m such groups, and v1 is the LOS vector for the highest-C/N0 satellite of each group. We have zero columns to account for other states estimated in the EKF, as further elaborated upon in Section 2.A.ii.C. For the carrier phase, we use the WLS instead of EKF; hence, the measurement matrix does not need to consider other states.
ii GNSS Measurement Modeling
Multiple methods can be used to model the GNSS measurements. First, if we ignore the single-differenced component, we can use the inverse elevation method (Bischoff et al., 2005) or the theoretical expected tracking loop errors for a third-order delay-locked loop and phase-locked loop (Pratap et al., 2010). However, because we do not know the exact parameters for the smartphone GNSS tracking loop engine, there are limitations for their accuracy in modeling the measurements. Moreover, although these methods may be effective for providing accurate inter-satellite relative metrics for a GNSS-only solution, they may misrepresent the actual expected errors, leading to incorrect error covariances for the estimated states, sensor fusion, and measurement FDE. Another source of expected GNSS measurement error is the statistics provided directly by the chipsets. However, this approach requires full reliance on models provided by chipset manufacturers, which may have been developed under operational conditions significantly different from our target environment. For example, although some devices provide accurate estimates of GNSS measurement errors, others over- or underestimate them (Lee et al., 2024).
For the single-differenced measurements, we can simply estimate the errors of each satellite measurement and add the variances of the two satellites. However, common errors such as antenna and front-end noise will be canceled out during the differencing, suggesting that the sum of variances would be an overestimation of the expected errors. Therefore, to obtain accurate models, we must empirically determine the single-differenced GNSS measurement errors. For the empirical modeling, we leveraged the truth data from the GSDC. If we use the truth positions for the geometric range computation, the difference between the observed pseudorange and carrier-phase-based measurements and their expected values correspond to the measurement errors. We must typically consider the effects of the ionosphere, troposphere, and receiver clock. However, we used a DGNSS step to remove the effects of the atmosphere and used single-differencing to remove the effects of the receiver clock. For Doppler values, as we do not have access to 3D truth velocity, we used the static segments for modeling. For this study, we assumed that all Google Pixel 6 and 7 devices in the GSDC data set share the same GNSS noise model properties, as they all use the same Broadcom BCM47765 GNSS chipset and are likely to be set up in similar configurations inside the vehicles.
The residual data are modeled using similar machine learning (ML)-based approaches outlined in previous publications (Lee et al., 2023b; Lee et al., 2024). The model used is a regression tree with a minimum leaf size of 4. The features consist of elevation-angle pairs and C/N0 pairs for the single-differenced satellites. For this study, azimuth and heading angles were ignored. The labels are the single-differenced residuals. The models are trained for each constellation and frequency band separately. The resulting residuals are used to construct the measurement noise covariance matrix R. For simplicity, the diagonal elements of R are set to the squared values of the single-differenced residual inferences. It is important to note that these values do not represent standard deviations and thus may be statistically misrepresentative. To ensure statistical consistency, inflation factors are required to convert these residual-based inferences into proper standard deviations, as discussed by Lee et al. (2023b), but this consideration is beyond the scope of this paper. Additionally, because the measurements are single-differenced with respect to a common reference satellite, a correlation between measurement errors naturally exists. Therefore, the off-diagonal terms in R must also be considered. An analysis of single-differenced Global Positioning System (GPS) L1 truth residuals used during training, over a 1-min interval, revealed inter-satellite correlation coefficients ranging from 0.1 to 0.7. For simplicity, we assume a uniform correlation coefficient of 0.5 for all off-diagonal terms in this work.
It is important to acknowledge that empirical modeling has an inherent limitation: it is most effective and reliable when applied to environments similar to those used for training. For instance, an empirical model developed under open-sky conditions would likely perform less effectively in urban canyons. Although the model may accurately represent the GNSS receiver characteristics of a specific smartphone and vehicle used during testing, environmental features and resulting signal noise characteristics can vary significantly between scenarios. Therefore, it is crucial to utilize sufficiently large and representative training data sets to derive accurate and robust models.
B INS Processing
i INS Mechanization
Without a loss of generality, we assume an automotive application in this paper. This assumption allows us to use Euler angles for attitude parameterization. The accelerometer provides the linear acceleration in the body frame, f, and the gyro-scope provides the angular rate in the body frame, ω. The gyroscope can be used to propagate the attitudes. The angular rates can be transformed from the body frame to the NED frame through the direction cosine matrix derived from the attitude angle estimates:
15
16
17
where ω is the angular rate measured by the gyroscope and (ϕ,θ,ψ) are the roll, pitch, and yaw angles. Using the attitude angles, we can find the linear accelerations experienced by the device. It should be noted that we are ignoring the transport and Earth rates in these equations because they are considerably smaller than the gyroscope noise and bias. When resolved in the body axes, the gravitational acceleration vector, gb, is given as follows:
18
Once again, assuming that the impact of the Earth rate and transport rate when using low-cost IMUs is minimal allows us to ignore Coriolis acceleration terms in the INS velocity channel equations. Thus, the equation for the velocity propagation of our filter is as follows:
19
20
21
22
23
24
This equation is a simpler form of the INS equations in the ECEF frame, which is suitable for automotive applications.
ii INS System Noise Modeling
The EKF assumes that, during system propagation in the absence of GNSS measurements, the process noise matrix, Q, must enable correct modeling of the state propagation errors. This approach allows the correct computation of covariances corresponding to the propagated states. The main components to consider are the INS random walk (resulting from the integration of wideband noise with some assumed phase spectral density (PSD)) and bias instability. For small propagation intervals, the process noise matrix has the simplified form shown below, where its entries are the wideband noise PSD on the gyroscope (σgyro PSD) and accelerometer (σgyro PDS) outputs as well as the variances of the bias instability (Groves, 2013). The variances are multiplied by the time propagation step (τs) :
25
Note that this approach is an oversimplification of what is normally done. However, one of the challenges that we address in this paper relates to determining reasonable numerical values for the entries of the process noise matrix. In theory, one can look to the specification sheet for the IMU used. In the case of low-cost IMUs, however, specification sheets are not very detailed or complete. For example, in the specification sheets for Google Pixel 7’s inertial module LSM6DSV by STMicro (2023), the gyroscope bias stability is simply provided as 1˚ per hour, which is on par with tactical-grade IMUs (Gebre-Egziabher, 2009). Although this may be an accurate representative value for specific operating temperatures and environments, the statistics must be re-evaluated for a given set of operational conditions. In addition to the sensor noise, the installation environment may contribute to elevating the IMU output errors. Mechanical vibrations and electronic noise can potentially affect the output errors. In the empirical modeling approach proposed here, we use data collected from the IMU in situ to generate the process noise matrix Q. That is, we rely on the sensor outputs in situ, rather than specification sheets, to determine the appropriate process noise matrix.
We assume that the vehicle noise does not affect the stability of the IMU sensors, such that the sensor bias stability can be easily determined by conducting a static test for each sensor in the lab environment. In the case of noise, however, we need data from the actual operational environment. In our case, we use the GSDC data; thus, we truncate all of the stationary segments from all data sets, remove the means of each segment, and perform an Allan variance analysis. Because we are dealing with multiple discontinuous data sets, we cannot accurately compute the bias stability, but a representative value of the noise PSD should be attainable. For conservative sensor modeling, we assume that the axis with the greatest noise and worst stability is representative of each axis. Additionally, we assume that the magnitude of the vehicle engine noise does not change significantly while stationary or moving. Furthermore, similar to the GNSS measurement modeling, all phones with the same IMU models are considered to have the same noise properties.
C EKF Architecture
i State Vector and Initialization
Assuming that the vehicle starts from rest, the roll, ϕ, and pitch angles, θ, can be initialized by using the outputs of the accelerometers as follows:
26
27
where g is the magnitude of gravitational acceleration (9.81 m/s2). These equations assume that most of the linear acceleration arises from the gravity component; thus, the angle estimates are accurate only when there is minimal acceleration on the device. For the position, x, and velocity, ẋ, initialization, the pseudorange and Doppler measurements are processed one time using WLS. The corresponding covariances are used to initialize the position and velocity portions of the state covariance, P0. The IMU biases are all set to 0, and all attitude covariances are set to π.
ii EKF Position and Covariance Update
The propagated error covariance, , and Kalman gain, K, are computed as follows:
28
29
where is the estimated error covariance matrix from the previous epoch.
Finally, the updated position, , and error covariance matrices,, are as follows:
30
31
The new state estimate is used to update the attitude, position, velocity, accelerometer, and gyroscope bias estimates.
iii Time Update Equations
During time updates, the position, velocity, and attitudes, are propagated using the accelerometer and gyroscope measurements, f and ω, respectively. Even though the nonlinear navigation equations can be used to update the states, these equations must be linearized so that the state estimation covariance can be propagated. Using a linearized set of the above equations, the system’s covariance is updated using the system noise matrix Q.
For this propagation, we use the following state transition matrix, Φ:
32
33
34
where is the Earth’s rotation rate, τs is the integration time of the GNSS measurement, is the gravity resolved for the ECEF frame, is the geocentric radius about the latitude, Latb, and is the ECEF position. As we are dealing with a closed loop, the state estimate, , is set to zero.
iv Anomaly Detection Through FDE
The GNSS innovation metrics are computed by taking the difference between the observed GNSS measurements and expected measurements, as shown in Equations (8) and (9). Because we assign the weighting for the GNSS measurements assuming nominal conditions, any anomalies would negatively impact the estimated states. Multiple anomaly detection schemes can be applied to remove the anomalies, such as code-minus-carrier, geometry-free measurements, and polynomial detrending (Lee et al., 2022). In our case, we added another anomaly detection step that filters the innovation metrics. Multiple methods are available for innovation testing. For example, if higher-quality inertial sensors are being used, a method such as that discussed by Call et al. (2006) can be applied. This method uses the receiver autonomous integrity monitoring approach of computing the residuals after removing subsets of satellites. However, this method includes the underlying assumption that the majority of satellites are fault-free, which is not always the case in an urban canyon operating scenario. Therefore, we take a simpler approach of filtering the innovation metrics using anomaly thresholds. Unlike most papers (Ding et al., 2022; Yoder et al., 2023; Yun et al., 2024), which use predetermined static thresholds, we employed a dynamic threshold to account for problematic position and velocity estimates that can increase the magnitude of innovation metrics, effectively reducing the probability of a false alarm.
The accuracies of the expected geometric measurements are dependent on the accuracy of the position and velocity estimates. Therefore, we use the covariance of those states obtained from the EKF, , and project them onto the direction of the LOS vectors corresponding to the single-differenced satellites i and j, which are vi and vj, to estimate the errors of the geometric measurements. For the time-differenced carrier phase, the difference between the position covariance at the last GNSS epoch, , and the position covariance of the INS-propagated estimate at the current epoch, , are multiplied by the LOS vector combinations instead. This approach effectively maps the state errors to the LOS vectors, which directly relates to the GNSS measurements. These covariances are added to the expected noise of the single-differenced GNSS measurements () obtained from R, in order to establish the standard deviation of the innovation metrics, :
35
36
37
where σρ, σρ̇, and σΔφ denote the expected standard deviations of the single-differenced GNSS measurement errors.
Finally, for the magnitude of the FDE threshold, we can find the probability of false alarm and misdetection to determine the inflation factors (Lee et al., 2023b). However, in this case, owing to the limited number of samples available for computing the inflation factors corresponding to a typical confidence level of 10-5 or better, we simply set the threshold to 3σ. Therefore, if the residual innovation, δz, exceeds the threshold, the measurement is rejected; in contrast, if the innovation is equal to or below the threshold, it is accepted, as shown in Equation (38).
38
v Carrier-Phase Measurement Assistance
Carrier-phase measurements offer high-precision solutions but are susceptible to cycle slips when GNSS signals are suboptimal. The previous section outlined how GNSS anomalies can be detected and removed. Following the FDE, the carrier-phase measurements must be fused with the code and Doppler measurements. In the case of code, postprocessing kinematics (Everett et al., 2022), and real-time kinematics (Takasu et al., 2013), the position updates are estimated by propagating the last known position using the time-differenced carrier phase. However, most GNSS/INS EKFs are set up so that the GNSS measurement inputs provide instantaneous position and velocity at the corresponding epoch.
Therefore, instead of inserting the carrier-phase measurements directly into the EKF as a measurement, we compute the carrier-phase-based displacement since the last epoch using least squares. If the measurements have passed the Doppler/INS FDE, the carrier phase is assumed to be valid, and we replace the Doppler/INS propagated position estimate with the carrier-phased-based position estimate. If no carrier-phase measurements are available, the Doppler/INS position estimate is used, similar to a traditional GNSS/INS EKF.
However, to replace the position estimate, we must update the corresponding state covariance as well. This step can introduce two issues. First, the covariance matrix may encounter a singularity issue. Therefore, we can assess whether the entire updated covariance matrix is positive-definite. If it is not, we update the new covariance with the nearest covariance that resolves this issue by computing the eigenvalues. Second, the carrier-phase measurements may not be an independent source of information. In this case, we need to consider implementing a conservative sensor fusion using covariance intersection (Lakshminarayan et al., 2016). While this approach is generally conservative, it prevents divergence that can result from the use of correlated information in a Kalman filter that has not been explicitly accounted for.
If the Doppler/INS propagated covariance is P1 and the covariance of the carrier-phase propagated covariance is P2, we must find the a posteriori covariance Pci, which is required to compute the inflated Kalman gain, K2:
39
40
41
The final inflated covariance, , for the EKF is as follows:
42
v DATA COLLECTION AND PROCESSING
A Devices Considered
Multiple devices and drive scenarios are available for the GSDC 2023. However, for the scope of this paper, we consider only the Google Pixel 6 and Pixel 7 devices and their variants, because they all have Broadcom BCM47765 GNSS chipsets and the STMicro LSM6DSV IMU. As mentioned above, we assume that all devices are set up in the same manner in the vehicle and share the same sensor characteristics. Consequently, we can apply the same noise models for these devices. For the non-GSDC data, we used a Pixel 7 device as well, to keep the sensors consistent. BCM47765 is an L1/L5 dual-frequency GNSS receiver that provides code, carrier-phase, and Doppler measurements (Broadcom, Inc., 2025). The sensor characteristics for the LSM6DSV are provided in Table 1. For the truth reference, a NovAtel SPAN was used to collect the data, and the lever-arm compensation was also considered (Fu et al., 2020).
B Routes Used for GNSS Error Mode Training/ Construction
To obtain empirical models of the GNSS measurement and IMU noise, we need training data sets. The GSDC 2023 data set has both training and testing data. Training data have truth for device sensor model training, whereas testing data can only be assessed using the Kaggle submission. As the collections consist of multiple devices and Kaggle does not provide the statistics per device or scenario, we focus on only the training data. The training data set has a total of 27 routes for BCM47765 chipsets: 6 routes are around Los Angeles, USA, and 21 routes are from the Bay Area, USA. For GNSS measurement modeling, we selected two data sets, whose details and trajectories are provided in Table 2 and Figure 2, respectively. The figure confirms that the modeling routes are mainly open-sky and along highways. As all of the GSDC 2023 data set was obtained from open-sky and suburban routes, the two routes are expected to be sufficient for deriving an accurate empirical GNSS measurement model. Open-sky data were selected for modeling, as fewer GNSS signal anomalies were present in the collections. These two data sets were excluded from the validation set to keep the training data and algorithm validation data separate.
Training route used to model the GNSS measurements
For IMU modeling, we used all 27 routes. To model the IMU, we considered only static segments, because correctly removing the dynamics from IMU measurements under kinematic environments is challenging with only the 1-Hz truth latitude, longitude, and horizontal velocity provided by Google. For each segment, the sensor measurement means were subtracted from the data to remove the effects of gravity on the accelerometer and to mitigate the effects of sensor bias. All of the resulting data were concatenated for statistical modeling. As the number of samples for static segments is limited, we used all available static segments for Allan variance analysis.
C Routes Used for Algorithm Validation
For algorithm validation, the 25 routes not employed in the GNSS model training were used to ensure model data independence. These routes include open-sky and suburban environments. As these environments are predominantly benign, the expected benefit contributions of INS over GNSS-only EKF are limited. However, our time-differenced carrier-phase measurement implementation is expected to provide improved solutions, with the Doppler/INS FDE providing further benefits.
A second data collection was conducted specifically for this paper using the Pixel 7 and a NovAtel SPAN CPT in downtown Denver, CO, USA, as shown in Figure 3. As shown in the figure, the collection was obtained under deep urban canyon conditions; thus, the quality of the GNSS measurements is expected to be significantly worse than that of the GSDC 2023 data set. Therefore, if the implementation of the algorithm is correct, the positive effects of the INS are expected to be far greater than those of the carrier-phase measurements. Additionally, if the carrier-phase FDE is successful, the INS would provide significant benefits, whereas the GNSS-only solution would have limited performance due to multiple cycle slips and GNSS unavailability. Moreover, using this data set provides insight into the extent to which the PVT solutions can be improved by using higher-grade IMUs compared with IMUs provided in a smartphone. The GSDC data provide only the truth position and horizontal velocity. However, if we have additional information such as 3D velocity and all three attitude angles, truth linear accelerations and angular rates can be computed. By replacing the raw IMU measurements with values computed from the ground truth, we can simulate a nearly perfect IMU (at least, relative to the ground truth). We employed the same empirical models originally developed for the GSDC 2023 data set. Because our current environment differs from the conditions in which the models were trained, their accuracy may be limited. Nevertheless, because we are using an identical smartphone model, measurements collected from inside a vehicle, and single-differenced measurements, we still expect these empirical models to outperform conventional single-satellite theoretical models.
Data collection in downtown Denver, CO, USA, which is a deep urban canyon environment, presenting a GNSS-challenged environment
4 RESULTS
A Residual Modeling
After the GNSS measurements were modeled using the two data sets, the models were verified using the remaining GSDC BCM47765 data set. Using the truth data, we can compute the errors of the observed and modeled measurements. Figure 4 shows the errors corresponding to the observed and modeled single-differenced pseudorange, Doppler, and time-differenced carrier-phase measurement errors. For visualization, the x-axis represents the mean of the two satellite C/N0 values. As expected, the errors are inversely proportional to the C/N0, and the L5 errors are smaller than the L1 errors. In addition, the pseudorange (PR) errors are the greatest, while the carrier-phase (CR) errors are the smallest. Furthermore, despite the fact that the data used to train the model and the data used to validate it are independent, the ML model-estimated errors are highly correlated with the actual observed errors. This finding illustrates that the ML model successfully estimates the expected measurement error.
Errors computed for the single-differenced pseudorange, Doppler, and carrier-phase measurements using truth data
Both the observed innovation metrics and ML-estimated metrics are provided to visualize how well the ML models the actual residuals. The C/N0 shown here is the mean of the values corresponding to each satellite.
B Empirical Modeling of IMU Noise PSD and Bias Stability
To empirically model the IMU sensors’ noise PSD and bias stability, we examined two data sets. For the first data set, we collected 12 continuous hours of static data using the Pixel 7 device inside a lab with minimal dynamics and vibrations. For the second data set, we considered all of the Google Pixel 6 and 7 data from the GSDC 2023, removed all of the static segments, removed the mean of each segment to eliminate the effects of bias and gravity, and concatenated the data together.
Figure 5 shows Allan deviation plots for both the accelerometer and gyroscope corresponding to the lab collection and drive collection. For the bias stability, we are interested only in the lab scenario, because the drive scenario consists of multiple static segments that have been merged together back-to-back. Unless the data set is continuous, the computed bias stability may be misrepresentative of the sensor characteristics. The bias stability and noise PSD of the accelerometer and gyroscope are provided in Table 3 and Table 4, along with typical tactical- and automotive-level performances (Gebre-Egziabher et al., 2009) and values provided by the datasheet (STMicroelectronics, 2023). The datasheet does not provide a stability value, but instead states that the accuracies of the accelerometer and gyroscope measurements are typically within 12 mg and 1˚ per second. We can see that under lab conditions, the noise PSD of the datasheet matches fairly well with the observed values. However, under driving scenarios, the values must be inflated owing to noise from the vehicle’s engine and road irregularities. Consequently, if we use the datasheet’s noise directly, the system noise of the EKF will be too small, leading to smaller state covariance propagations, with the GNSS measurements having a smaller impact on the system.
Allan variance plots for the accelerometer (left) and gyroscope (right) for lab conditions and drive conditions
C Anomaly Detection
For the scope of this paper and in general, as shown in the literature studies outlined earlier in this paper, GNSS measurements are modeled under benign fault-free environments. Therefore, any addition of multipath effects or carrier-phase cycle slips on the measurements would indicate that the models are underestimating the potential errors. Therefore, we should remove any problematic measurements using anomaly detection, or de-weight them. We attempt to perform the latter using the proposed ML regression modeling scheme by inflating any estimated measurement errors based on observed environment features. However, for the former, we need an anomaly detection scheme for the innovation metrics.
Most papers use fixed thresholds and inflate those in order to capture non-noise components. Assuming that the DGNSS step has been applied, the greatest expected component would be the estimated position and velocity errors used to compute the geometric range and rate values. Therefore, we use the novel dynamic anomaly detection metric outlined in the previous section to remove unwanted measurements. Figure 6 shows an example of the proposed dynamic anomaly detection threshold. The threshold not only considers the expected noise of the measurements (green contribution), but also the uncertainty of the estimated position and velocity (red contribution). Therefore, we are able to reduce the instances of false alarms resulting from incorrect position or velocity estimates, while still effectively removing problematic measurements with unmodeled anomalies.
Innovation metrics for pseudorange and Doppler residuals
Each residual (blue) corresponds to each single-differenced satellite signals’ innovation metrics (Equation (8)). Red and green lines indicate the innovation FDE thresholds (Equations (31) and (32)). The red line represents the expected contribution of the position and velocity errors to innovation, and the green line represents the expected contribution of measurement noise to the innovation under fault-free conditions.
D PVT Performance
Overall, the GSDC 2023 data set results shown in Figure 7 and Table 5 demonstrate that the single-differenced least-square solution performed the worst, followed by the code/Doppler EKF (GNSS EKF PR/Doppler (DR)) solution. This result arises because the EKF better handles the noise than the least squares. However, the accuracy of the velocity estimates is still limited. The accuracy is improved by using the INS (GNSS/INS EKF PR/DR) or simply taking the time-differenced carrier phase (GNSS EKF PR/DR/CR) to determine the displacement. The best solution is achieved when we have a carrier-phase solution for benign environments coupled with Doppler/INS for FDE and availability improvements (GNSS/INS EKF PR/DR/CR).
Cumulative distribution function (CDF) error plot of the least squares, GNSS only EKF, and GNSS/INS EKF
E Theoretical IMU Performance Improvements
The results for the urban canyon data set exhibit trends similar to those of the GSDC 2023 data set, as shown in Figure 8, Figure 9, and Table 6. The GNSS EKF PR/DR results show a slight improvement over least squares, and the carrier phase is beneficial, especially for straight sections in a downtown environment. However, the quality of the carrier-phase measurements degrades significantly in urban canyons, which is improved by the IMU. The best performance is achieved by leveraging the fault-free carrier-phase measurements when available, while using the INS for FDE and availability support. Furthermore, the truth IMU simulation shows that there is room for even more PVT improvements from using a better IMU, but the improvement is less than 7% for the root mean square (RMS) based on the algorithm performance statistics shown in Table 6. This result arises because the benefits of a better IMU would be especially pronounced during prolonged GNSS outages (which is not the case for the GSDC data sets, but is the case for many densely urban navigation efforts), where the accumulation of system noise errors is significant compared with the GNSS measurement noise. Moreover, the results suggest that the greatest limitation lies in the quality of the GNSS measurements used for the velocity and attitude computation. Limited GNSS measurement quality would lead to worse state estimation errors, which is difficult to overcome by simply removing system noise errors. Therefore, to further improve the PVT performance, in addition to accurately modeling the lower-quality measurements, anomalies such as cycle slips and multipath must be estimated and removed.
Horizontal error plot for various position modes in an urban canyon The simulated true INS is added to show the potential of a better IMU.
Error CDF plot for the urban canyon scenario using different positioning algorithms
5 CONCLUSION
This paper has outlined a robust single-differenced tightly coupled GNSS/INS EKF algorithm for smartphones. The algorithm uses single-differencing to account for smartphone clock discontinuities, leverages carrier-phase measurements for high-accuracy, high-precision PVT in benign environments, and utilizes the INS for GNSS FDE and PVT propagation during GNSS outages. Additionally, this work quantified the improvement in overall navigation system performance gained by utilizing the low-cost inertial sensors found in a smartphone. The proposed algorithm uses single-differenced GNSS measurements to remove the effects of the receiver clock to alleviate issues with smartphone clock discontinuity occurrences and to reduce the effects of receiver clock bias and drift estimation errors on the navigation solutions. Moreover, the single difference removes common noise terms such as receiver thermal noise and overlapping atmospheric effects. To accurately model the single-differenced GNSS measurements empirically, ML regression was used. The GNSS measurement solutions were propagated using an INS; thus, the INS-based system noises were empirically modeled as well using Allan deviation plots. The INS propagated solutions and their covariances were used to create dynamic FDE bounds for the GNSS measurements in the following epoch, which were then used to assess whether the measurement updates should be performed using Doppler/INS or time-differenced carrier-phase measurements.
Overall, the time-differenced carrier-phase measurements provided comparable or better PVT performance than the Doppler/INS in benign environments, because the time-differenced carrier-phase noise is similar to or lower than the Doppler/INS noise. Consequently, when there are no carrier-phase cycle slips or multipath effects, the benefits of simple INS-based PVT propagation are minimal. This is likely the reason why INS provided little added benefits for the GSDC 2023 data set processing. However, if we add the INS FDE algorithm, the performance improves slightly owing to the mitigation of GNSS anomalies such as carrier-phase cycle slips. In deep urban canyons, the benefits of INSs are far greater because of degraded signal conditions. This trend suggests that IMUs in Android devices are effective in improving PVT in challenging environments. Therefore, the proposed single-differenced GNSS/INS EKF is effective for providing accurate, reliable PVT information in both benign and challenging environments. In addition, when we simulated a higher-quality IMU, the performance improvement was minimal, indicating that the limiting factor of GNSS/INS PVT performance is the quality of the GNSS measurements rather than the IMU. Therefore, to obtain further PVT improvements, the GNSS measurements should be corrected rather than simply excluded. Another area of improvement may be to fuse the GNSS solutions with the INS solutions based on their covariances rather than switching between them (Gattis et al., 2024).
HOW TO CITE THIS ARTICLE:
Lee, D-K., Gebre-Egziabher, D., & Akos, D.M. (2026). Robust android GNSS positioning using single-differenced tightly coupled GNSS/INS EKF. NAVIGATION, 73. https://doi.org/10.33012/navi.748
ACKNOWLEDGMENTS
Publication of this article was funded by the University of Colorado Boulder Libraries Open Access Fund.
This is an open access article under the terms of the Creative Commons Attribution License, which permits use, distribution and reproduction in any medium, provided the original work is properly cited.
REFERENCES
- ↵Bischoff, W., Heck, B., Howind, J., & Teusch, A. (2005). A procedure for testing the assumption of homoscedasticity in least squares residuals: A case study of GPS carrier-phase observations. Journal of Geodesy, 78, 397–404. https://doi.org/10.1007/s00190-004-0390-5
- ↵Broadcom, Inc. (2025). BCM47765: Second generation dual-frequency GNSS chip. Retrieved January 2025 fromhttps://www.broadcom.com/products/wireless/gnss-gps-socs/bcm47765
- ↵Call, C., Ibis, M., McDonald, J., & Vanderwerf, K. (2006). Performance of Honeywell’s Inertial/GPS Hybrid (HIGH) for RNP operations. In Proc. of the2006 IEEE/ION Position, Location, and Navigation Symposium (PLANS 2006), 244–255. https://doi.org/10.1109/PLANS.2006.1650610
- ↵Dai, S. (2022). 2nd place winner of the Smartphone Decimeter Challenge: Improving smartphone GNSS positioning using gradient descent method. InProc. of the 35th International Technical Meeting of the Satellite Division of the Institute of Navigation (ION GNSS+ 2022), Denver, Colorado, 2321–2328. https://doi.org/10.33012/2022.18380
- ↵Department of Transportation and Department of Defense (2001). 2001 Federal Radionavigation Systems. Archived from the original on October 23, 2020. Retrieved January 31, 2021. https://www.navcen.uscg.gov/sites/default/files/pdf/frp2001/FRS2001.pdf
- ↵Ding, Y., Yang, S., & Bisnath, S. (2022). Native smartphone single- and dual-frequency GNSS-PPP/IMU solution in real-world driving scenarios. Remote Sensing, 14(14), 3286. https://doi.org/10.3390/rs14143286
- ↵Enge, P., Kalafus, R., & Ruane, M. (1988). Differential operation of the Global Positioning System. IEEE Communications Magazine, 26(7), 48–60.
- ↵European Global Navigation Satellite Systems Agency (2017). Using GNSS raw measurements on Android devices. https://www.euspa.europa.eu/sites/default/files/external/publications/gnss_raw_measurement_web.pdf
- ↵Everett, T. (2022). 3rd place winner: 2022 Smartphone Decimeter Challenge: An RTKLIB open source based solution. In. Proc. of the 35th International Technical Meeting of the Satellite Division of the Institute of Navigation (ION GNSS+ 2022), Denver, Colorado, 2265–2275. https://doi.org/10.33012/2022.18376
- ↵Everett, T., Taylor, T., Lee, D.-K., & Akos, D. M. (2022). Optimizing the use of RTKLIB for smartphone-based GNSS measurements. Sensors, 2210, 3825. https://doi.org/10.33012/2022.18390s22103825
- ↵Fu, G., Khider, M., & van Diggelen, F. (2020). Android raw GNSS measurement datasets for precise positioning. InProc. of the 33rd International Technical Meeting of the Satellite Division of the Institute of Navigation (ION GNSS+ 2020), 1925–1937. https://doi.org/10.33012/2020.17628
- ↵Gattis, B., Lee, D.-K., & Akos, D. M. (2024). Multi-sensor PVT solution for Android devices. Proceedings of the 37th International Technical Meeting of the Satellite Division of the Institute of Navigation (ION GNSS+ 2024), Baltimore, Maryland, 2434–2447. https://doi.org/10.33012/2024.19728
- ↵Gebre-Egziabher, D., & Gleason, S. (2009). GNSS applications and methods. Artech House.
- ↵Gill, M., Bisnath, S., Aggrey, J., & Seepersad, G. (2017). Precise point positioning (PPP) using low-cost and ultra-low-cost GNSS receivers. InProc. of the 30th International Technical Meeting of the Satellite Division of the Institute of Navigation (ION GNSS+ 2017), Portland, Oregon, 226–236. https://doi.org/10.33012/2017.15123
- ↵Groves, P. D. (2013). Principles of GNSS, inertial, and multisensor integrated navigation systems (2nd ed.). Artech House.
- ↵Lakshminarayan, I., & Gebre-Egziabher, D. (2016). Decentralized filtering for automatic reconfiguration of integrated navigation systems. InProc. of the 29th International Technical Meeting of the Satellite Division of the Institute of Navigation (ION GNSS+ 2016), Portland, Oregon770–778. https://doi.org/10.33012/2016.14613
- ↵Lee, D.-K., Akos, D. M., Lee, Y., & Park, B. (2022). GNSS fault detection and mitigation using Android IMU. InProc. of the 35th International Technical Meeting of the Satellite Division of the Institute of Navigation (ION GNSS+ 2022), Denver, Colorado, 1676–1686. https://doi.org/10.33012/2022.18475
- ↵Lee, D.-K., Akos, D. M., & Park, B. (2024). Empirical error modeling of Android GNSS using machine learning for PVT improvement. Proceedings of the 37th International Technical Meeting of the Satellite Division of the Institute of Navigation (ION GNSS+ 2024), Baltimore, Maryland, 2676–2683. https://doi.org/10.33012/2024.19727
- ↵Lee, D.-K., Gattis, E., Akos, D. M., Yun, J., & Park, B. (2023a). Android GNSS/INS using complementary filter. InProc. of the 36th International Technical Meeting of the Satellite Division of the Institute of Navigation (ION GNSS+ 2023), Denver, Colorado, 2644–2652. https://doi.org/10.33012/2023.19272
- ↵Lee, D.-K., Lee, Y., Akos, D. M., Park, S., Park, S., & Park, B. (2021). GNSS fault monitoring using Android devices. In. Proc. of the 34th International Technical Meeting of the Satellite Division of the Institute of Navigation (ION GNSS+ 2021), St. Louis, Missouri, 4128–4140. https://doi.org/10.33012/2021.18134
- ↵Lee, D.-K., Lee, Y., & Park, B. (2023b). Carrier phase residual modeling and fault monitoring using short-baseline double difference and machine learning. Mathematics, 11, 12, 2696. https://doi.org/10.3390/math11122696
- ↵Liu, W., Shi, X., Zhu, F., Tao, X., & Wang, F. (2019). Quality analysis of multi-GNSS raw observations and a velocity-aided positioning approach based on smartphones. Advances in Space Research, 63, 8, 2358–2377. https://doi.org/10.1016/j.asr.2019.01.004
- ↵Monteiro, L. S., Moore, T., & Hill, C. (2005). What is the accuracy of DGPS?. The Journal of Navigation, 58, 2, 207–225. https://doi.org/10.1017/S037346330500322X
- ↵Motooka, N. (2024). First place winner of the Smartphone Decimeter Challenge: Optimized GNSS/INS integration approach for smartphone positioning. In. Proc. of the 37th International Technical Meeting of the Satellite Division of the Institute of Navigation (ION GNSS+ 2024), Baltimore, Maryland, 2714–2728. https://doi.org/10.33012/2024.19924
- ↵Paziewski, J., Sieradzki, R., & Baryla, R. (2019). Signal characterization and assessment of code GNSS positioning with lower-power consumption smartphones. GPS Solutions, 23, 98. https://doi.org/10.1007/s10291-019-0892-5
- ↵Pratap, M., & Enge, P. (2010). Global Positioning System: Signals, measurements, and performance (2nd ed.). Ganga-Jamuna Press.
- ↵STMicroelectronics (2023). DS13476. LSM6DSV: 6-axis inertial measurement unit (IMU) with embedded sensor fusion, I3C, OIS/EIS for smart applications (Revision 5). https://www.st.com/resource/en/datasheet/lsm6dsv.pdf
- ↵Suzuki, T. (2021). First place award winner of the Smartphone Decimeter Challenge: Global optimization of position and velocity by factor graph optimization. Proceedings of the 34th International Technical Meeting of the Satellite Division of the Institute of Navigation (ION GNSS+ 2021), St. Louis, Missouri, 2974–2985. https://doi.org/10.33012/2021.18109
- ↵Suzuki, T. (2022). 1st place winner of the Smartphone Decimeter Challenge: Two-step optimization of velocity and position using smartphone’s carrier phase observations. InProc. of the 35th International Technical Meeting of the Satellite Division of the Institute of Navigation (ION GNSS+ 2022), Denver, Colorado, 2276–2286. https://doi.org/10.33012/2022.18377
- ↵Suzuki, T. (2024). Second place winner of the Smartphone Decimeter Challenge: An open-source factor graph optimization package for GNSS and IMU integration in smartphones. InProc of the 37th International Technical Meeting of the Satellite Division of the Institute of Navigation (ION GNSS+ 2024), Baltimore, Maryland, 2703–2713. https://doi.org/10.33012/2024.19923
- ↵Takasu, T., & Yasuda, A. (2013). RTKLIB manual(ver. 2.4.2). https://www.rtklib.com/prog/manual_2.4.2.pdf
- ↵Yan, W., Bastos, L., & Magalhães, A. (2019). Performance assessment of the Android smartphone’s IMU in a GNSS/INS coupled navigation model. IEEE Access, 7, 171073–171083. https://doi.org/10.1109/ACCESS.2019.2956239
- ↵Yoder, J. E., & Humphreys, T. (2023). Low-cost inertial aiding for deep-urban tightly coupled multi-antenna precise GNSS. NAVIGATION, 70, 1, navi.561. https://doi.org/10.33012/navi.561
- ↵Yun, J., Kim, S., Youn, T., Kim, G., Park, W., & Park, B. (2024). Third place winner of the Smartphone Decimeter Challenge: Improving smartphone accuracy with a two-step accurate velocity estimation. In. Proc. of the 37th International Technical Meeting of the Satellite Division of the Institute of Navigation (ION GNSS+ 2024), Baltimore, Maryland, 2691–2702. https://doi.org/10.33012/2024.19922
- ↵Yun, J., Park, B., Lee, D.-K., & Akos, D. M. (2023). Elevating Android GNSS raw measurement processing: A universal RINEX converter for precise postprocessing solutions. Presented at the 36th International Technical Meeting of the Satellite Division of the Institute of Navigation (ION GNSS+ 2023).
- ↵Zhang, K., Jiao, F., & Li, J. (2018). The assessment of GNSS measurements from Android smartphones. China Satellite Navigation Conference (CSNC) 2018 Proceedings, (Vol. 499Lecture Notes in Electrical Engineering).Springer. https://doi.org/10.1007/978-981-13-0029-5_14














