Smartphone MEMS Accelerometer and Gyroscope Measurement Errors: Laboratory Testing and Analysis of the Effects on Positioning Performance

Embedding various sensors with powerful computing and storage capabilities in a small communication device, smartphones have become a prominent platform for navigation. With the increasing popularity of Apple CarPlay and Android Auto, smartphones are quickly replacing built-in automotive navigation solutions. On the other hand, smartphones are equipped with low-performance Micro Electro Mechanical Systems (MEMS) sensors to enhance their navigation performance in Global Navigation Satellite System (GNSS)-degraded or -denied environments. Compared with higher-grade inertial navigation systems (INS), MEMS-based INSs have a poor navigation performance due to large measurement errors. In this paper, we present laboratory test results on the stochastic and deterministic errors observed in MEMS inertial sensor measurements of five different smartphones from different manufacturers. Then, we describe and discuss the short-term effects of these errors on the pure inertial navigation performance and also on the navigation performance based on the tight coupling of INS with GNSS measurements using a smartphone.


Introduction
Smartphones are equipped with a variety of sensors that can measure their position and orientation.With powerful computing and storage capabilities, smartphones have become a popular platform for pedestrian and automotive navigation.For pedestrian navigation, a smartphone is usually an obvious option.For automotive navigation, with the increasing popularity of Apple CarPlay and Android Auto, smartphones are quickly replacing built-in navigation solutions.Navigation capabilities mainly rely on processing GNSS signals for outdoor positioning.However, in environments where GNSS signals are degraded or denied, such as urban canyons, tunnels, and parking garages, smartphones estimate their position and orientation using inertial sensors.This allows them to navigate regardless of any surrounding obstacles that may obstruct the GNSS signals.By using an INS composed of a three-axis accelerometer and a gyroscope, it is possible to determine the position and orientation of a smartphone and the vehicle hosting it.The achievable positioning performance strongly depends on the accuracy, stability, and quality of the inertial sensors.
The accelerometers, gyroscopes, and magnetometers used in a smartphone are typically very small and lightweight MEMS (Micro Electro Mechanical System) sensors [1], very inexpensive, but generally characterized by a poor performance [2,3].An example of MEMS specifications is provided in [4,5].
While there are a number of literature sources on the testing and validation of inertial sensors, such as [6][7][8][9][10][11], to the best of the authors' knowledge, there are not many works that specifically focus on evaluating the navigation performances achievable with the MEMS inertial sensors of a smartphone.The only work is [12], in which inertial measurements were collected with a Sony Xperia M2 Aqua and Samsung Galaxy Note 3 in three different driving scenarios and processed offline to determine position.
In the first part of this paper, we present the main stochastic and deterministic error characteristics of the MEMS sensors embedded in five smartphone devices, a Google Pixel 7 Pro, a Samsung SM-A536V, a Vivo X60 Pro, an iPhone XR, and One Plus 7 Pro, determined by the means of laboratory tests.Identifying the characteristics of these errors is crucial for designing a navigation filter.It helps to define the state and measurement components, formulate system and measurement models, and tune the filter parameters, such as the system and measurement covariance.In the second part, we analyze the effects of these errors on the positioning accuracy when using a smartphone.For such a goal, we discuss the short-term accuracy achievable in: (1) a straight-line motion with pure MEMS inertial mechanization, by converting the MEMS accelerometer and gyro measurements into position, velocity, and attitude; and (2) a real drive trajectory around our campus in San Jose, CA, with an INS-GNSS tight fusion.
The paper is organized as follows.Section 2 summarizes the error sources that characterize an inertial measurement.In Section 3, we describe the three main tests carried out in our laboratory for each of the five considered smartphones and present their results: the Single-Position Static Test to determine the stochastic error of the accelerometers and gyro; the Six-Position Static Test to estimate the deterministic error of the accelerometers; and the Gyro Rate Test to determine the deterministic errors of the gyros.In Section 4, for the five considered devices, we estimate the short-term achievable positioning accuracy when using INS measurements affected by the MEMS errors determined in Section 3. In Section 5, we discuss the obtained results.The conclusions are drawn in Section 6.

Error Characteristics of MEMS Inertial Sensors
The works [13][14][15][16][17][18] provide a comprehensive overview of the various sources of errors affecting inertial measurements.The typical value of each of these errors can widely vary depending on the class or grade of the inertial sensor.There is no universally agreed definition of low-, medium, and high-grade inertial sensors.A common classification, provided in [13], includes five main broad categories from the highest grade to the lowest: the Marine, Aviation, Intermediate, Tactical, and Consumer grades.The lowest categories exhibit much larger errors than the highest categories, but, at the same time, they are characterized by a smaller mass, volume, power consumption, and are usually drastically cheaper (less than $10 for consumer-grade versus more than $1M for marine-grade).The current research on the development of inertial sensors is primarily focused on MEMS technology that enables the low-cost mass production of very small, light quartz and silicon sensors.MEMS are generally the smallest and cheapest inertial sensors, however, the lowest consumer-grade MEMS sensors, usually adopted in a smartphone, offer a poor performance.The final performance of a MEMS inertial sensor is strongly influenced by whether or not the sensor has been calibrated; often, MEMS sensors are sold without any lab calibration as consumer-grade, and with calibration as tactical-grade.
Multiple accelerometers and gyros are integrated into an inertial navigation unit (IMU) and their measurements are processed together in an INS to produce a navigation solution.
In general, all grades of accelerometers and gyros manifest biases, scale factor, crosscoupling errors, and random noise.Depending on the type of sensor, they can also exhibit higher-order errors and angular rate specific force cross-sensitivity [13].They are also affected by vibration-induced errors [19].
We can distinguish deterministic errors and stochastic errors for MEMS sensors.Deterministic errors include constant and proportional errors to the measuring values of the sensor.Specifically for an inertial sensor, there are four individual components of a deterministic error: (1) a fixed contribution which can be corrected by sensor calibration; (2) a temperature-dependent variation while the sensor is working out of the range of its normal operating temperature; (3) a run-to-run variation which changes from different runs but stays constant during one run; and (4) last but not least, in-run variation which slowly changes within the course of a run.
We generally refer to accelerometer and gyro bias as a constant error, independent of the specific force and angular rate, respectively.These usually are the main contribution to the overall position error.It is possible to differentiate static bias from dynamic bias.Static bias corresponds to the fixed and run-to-run contribution of a deterministic error.Depending on the type of sensor, dynamic bias is generally about 10% of the static one [13] and it includes the in-run, also known as bias instability, and the temperature-dependent error contribution.According to [20], this bias instability varies over time with a period of one or two minutes for low-cost INSs.
The scale factor is a departure of the input-output gradient of the instrument from unity following unit conversion by the IMU [13].Therefore, a scale factor error is proportional to the true measured value.Misalignments of the sensitive axes of the INS with respect to the orthogonal axes of the body frame that result from a non-perfect packaging process are usually known as cross-coupling errors.Uncalibrated, consumer-grade MEMS can have scale factors and cross-coupling as large as 0.1 and 0.02, respectively [13].
Stochastic errors or random noise affect all inertial sensors due a number of sources [17].These can be well described by a random probability distribution.It is possible to describe accelerometer and gyro random noise through their integral over time, known as random walks.The standard deviation of a random walk will indeed be proportional to the square root of the integration time.
In addition, further error sources are the quantization of the sensor data, g-dependent bias (depending on the sensor type), scale factor non linearity, cross-coupling error variations (anisoinertia errors) [21] as a function of the specific force and angular rate, errors due to the exceeding of the operating ranges and bandwidth, and higher-order systematic errors that depend on the type of sensor.
Finally, smartphone operating systems can introduce additional errors, such as increased noise and quantization, inconsistent update rates, data lags, and repeated measurements.For this reason, when designing an INS-based navigation filter for smartphones, it is important to characterize the error of the IMU sensors through laboratory tests, rather than relying solely on the manufacturer's specifications.

Laboratory Tests and Results
For this study, we conducted laboratory tests to determine the main error sources and particularly the standard deviation, bias instability, random walk and rate random walk, bias, and scale factor affecting the measurements of the accelerometers and gyroscopes integrated in five different smartphones.Table 1 shows the smartphones we tested and the models of their accelerometer and gyroscope sensors.Each smartphone has a three-axis accelerometer and a three-axis gyro.We used the Single-Position Static Test to determine the stochastic errors of the accelerometers and gyros.We also used the Six-Position Static Test and Gyro Rate Test to estimate their deterministic errors.This section provides an overview of our testing methods and results.

Single-Position Static Test
In this test, data from the stationary accelerometers and gyros were collected for four hours to observe the standard deviation of the noisy outputs.An Allan Variance analysis was carried out to quantify the bias instability, random walk, and rate random walk.The Allan Variance (AVAR) is a time domain analysis technique conceived to characterize the noise and stability in clock systems [22,23].It can also be applied to analyze the measurement error characteristics of any instrument.AVAR represents the root mean square (RMS) random drift error as a function of the average time τ.By performing specific operations on the data, AVAR can be used to characterize different types of noise in inertial sensor data [24].The AVAR can be computed as follows, as presented in [11,25,26].
From the slopes of the Allan deviation (σ = √ σ 2 ) log-log plot versus τ, it is possible to extract several noise parameters.Table 2 reports the ones we determined in our analysis for each of the axes (x,y,z) of both the accelerometers and gyroscopes, and in particular: the standard deviation (SD), bias instability (B), angular random walk (N), and rate random walk (K).Figures 1 and 2 show an example of an Allan variance plot for one accelerometer and one gyro, respectively, of the iPhone XR.

Single-Position Static Test
In this test, data from the stationary accelerometers and gyros were collected for four hours to observe the standard deviation of the noisy outputs.An Allan Variance analysis was carried out to quantify the bias instability, random walk, and rate random walk.The Allan Variance (AVAR) is a time domain analysis technique used to characterize the noise and stability in clock systems [22,23].It can also be applied to analyze the measurement error characteristics of any instrument.AVAR represents the root mean square (RMS) random drift error as a function of the average time .By performing specific operations on the data, AVAR can be used to characterize different types of noise in inertial sensor data [24].The AVAR can be computed as follows, as presented in [11,25,26].
From the slopes of the Allan deviation ( = √ 2 ) log-log plot versus , it is possible to extract several noise parameters.Table 2 reports the ones we determined in our analysis for each of the axes (x,y,z) of both the accelerometers and gyroscopes, and in particular: the standard deviation (SD), bias instability (B), angular random walk (N), and rate random walk (K).Figures 1 and 2 show an example of an Allan variance plot for one accelerometer and one gyro, respectively, of the iPhone XR.Table 3 reports the standard deviation (SD) values determined for all five considered devices.The maximum and minimum values across all five smartphones are bolded.We can see that the iPhone XR MEMS measurements had the largest gyro noise SD, with a three-axis average of 0.00266 rad/s, while the Samsung SM-A536V ones had the largest accelerometer SD with a value of of 0.0106 m/s 2 .The One Plus 7 Pro MEMS gyro and accelerometer measurements had the lowest SD instead, with a three-axis average of 0.0042 m/s 2 and 2.7073 × 10 −4 rad/s.Compared with the specifications from the manufacturers, the Samsung and Pixel phones were very close to the numbers in the data sheet.However, the Vivo and One Plus phones had less noise than the values in the specification sheets.
Tables 4 and 5 report the bias instability, random walk, and rate random walk for the accelerometer and gyro, respectively, of the five considered devices.The largest accelerometer bias instability and random walks were found for the Samsung SM-A536V.The Google Pixel 7 Pro, Vivo X60 Pro, and iPhone XR showed the lowest accelerometer bias, velocity random walk, and acceleration random walk, respectively.The Google Pixel 7 Pro also appeared to have the lowest gyro bias instability and random walks.The Vivo X60 Pro showed the largest gyro bias instability, while the iPhone XR had the largest velocity and acceleration random walks.

Six-Position Static Test
Usually, the calibration of an IMU is performed using a mechanical platform, which rotates the sensors into different precisely controlled orientations and at known rotational velocities [7,8].At each orientation and during the rotation, the outputs of the accelerometers and gyros are observed and compared with the pre-calculated gravity force and rotational velocity, respectively.
The Six-Position Static is a widely used calibration method [9].It involves mounting the IMU on a level surface and aligning each sensitivity axis of each sensor illustrated in Figure 3, with the direction of gravity, and its opposite, as shown in Figure 4. Gravity and Earth rotation rate can be the references for the estimation of the bias and scale factor of the accelerometers and gyros, respectively.Note that more than six positions can be considered (multi-position static test); in this case, for the additional positions (orientations), the reference value will be a fraction of the gravity force for the accelerometers and a fraction of the Earth rotation rate for the gyros.Table 3 reports the standard deviation (SD) values determined for all five considered devices.The maximum and minimum values across all five smartphones are bolded.We can see that the iPhone XR MEMS measurements had the largest gyro noise SD, with a three-axis average of 0.0027 rad/s, while the Samsung SM-A536V ones had the largest accelerometer SD with a value of of 0.0106 m/s 2 .The One Plus 7 Pro MEMS gyro and accelerometer measurements had the lowest SD instead, with a three-axis average of 0.0042 m/s 2 and 2.7073 × 10 −4 rad/s.Compared with the specifications from the manufacturers, the Samsung and Pixel phones were very close to the numbers reported in the data sheet.However, the Vivo and One Plus phones had less noise than the values in the specification sheets.
Tables 4 and 5 report the bias instability, random walk, and rate random walk for the accelerometer and gyro, respectively, of the five considered devices.The largest accelerometer bias instability and random walks were found for the Samsung SM-A536V.The Google Pixel 7 Pro, Vivo X60 Pro, and iPhone XR showed the lowest accelerometer bias, velocity random walk, and acceleration random walk, respectively.The Google Pixel 7 Pro also appeared to have the lowest gyro bias instability and random walks.The Vivo X60 Pro showed the largest gyro bias instability, while the iPhone XR had the largest velocity and acceleration random walks.

Six-Position Static Test
Usually, the calibration of an IMU is performed using a mechanical platform, which rotates the sensors into different precisely controlled orientations and at known rotational velocities [7,8].At each orientation and during the rotation, the outputs of the accelerometers and gyros are observed and compared with the pre-calculated gravity force and rotational velocity, respectively.
The Six-Position Static is a widely used calibration method [9].It involves mounting the IMU on a level surface and aligning each sensitivity axis of each sensor illustrated in Figure 3, with the direction of gravity, and its opposite, as shown in Figure 4. Gravity and Earth rotation rate can be the references for the estimation of the bias and scale factor of the accelerometers and gyros, respectively.Note that more than six positions can be considered (multi-position static test); in this case, for the additional positions (orientations), the reference value will be a fraction of the gravity force for the accelerometers and a fraction of the Earth rotation rate for the gyros.The bias and scale factor of both the accelerometers and gyros can be calculated using the following equations [9]: where   is the average measured specific force or angular rate when the sensitive axis is pointed upwards,   is the average measured specific force or angular rate when the sensitive axis is pointed downwards, and F is the known reference signal. is the magnitude of the local gravity  for the accelerometers, while for the gyroscopes,  is the magnitude of the Earth rotation rate projection to the vertical axis at a given latitude   .However, unlike high-grade gyroscopes, low-grade ones such consumer-grade MEMS suffer from bias instability and noise levels that can completely mask the Earth's The bias and scale factor of both the accelerometers and gyros can be calculated using the following equations [9]: where y up is the average measured specific force or angular rate when the sensitive axis is pointed upwards, y down is the average measured specific force or angular rate when the sensitive axis is pointed downwards, and F is the known reference signal.F is the magnitude of the local gravity g for the accelerometers, while for the gyroscopes, F is the magnitude of the Earth rotation rate projection to the vertical axis at a given latitude ω e .However, unlike high-grade gyroscopes, low-grade ones such consumer-grade MEMS suffer from bias instability and noise levels that can completely mask the Earth's reference signal.Therefore, the Earth rotation can typically only be used for high-grade gyroscopes.In our case, the Six-Position Static test was performed only for the accelerometers.The accuracy of this method depends on how well the axes are aligned with the vertical axes of the local level frame.This standard calibration method can only be used to determine the bias and scale factors of sensors, but cannot estimate axes misalignments, for which a more complex method is required.
Sensors 2023, 23, 7609 8 of 25 reference signal.Therefore, the Earth rotation can typically only be used for high-grade gyroscopes.In our case, the Six-Position Static test was performed only for the accelerometers.The accuracy of this method depends on how well the axes are aligned with the vertical axes of the local level frame.This standard calibration method can only be used to determine the bias and scale factors of sensors, but cannot estimate axes misalignments, for which a more complex method is required.In this case, the One Plus 7 Pro resulted in being the one with the largest accelerometer bias, while the Vivo X60 pro was the one with smallest.The Samsung SM-A536V had the smallest scale factor and the iPhone XR had the largest.

Gyro Rate Test
In this test, as shown in Figures 5-7, we used the robotic arm Dorna 2 [27] and a phone holder we designed and printed, to stimulate each gyro axis with a given reference angular velocity ω re f and with the same, but in the opposite direction ω re f − .
The output of the gyros was recorded for a few minutes.Therefore, the bias and scale factor were calculated as follows: Sensors 2023, 23, 7609 9 of 2 In this case, the One Plus 7 Pro resulted in being the one with the largest accelerom eter bias, while the Vivo X60 pro was the one with smallest.The Samsung SM-A536V ha the smallest scale factor and the iPhone XR had the largest.

Gyro Rate Test
In this test, as shown in Figures 5-7, we used the robotic arm Dorna 2 [27] and phone holder we designed and printed, to stimulate each gyro axis with a given referenc angular velocity   and with the same, but in the opposite direction − .
The output of the gyros was recorded for a few minutes.Therefore, the bias and scal factor were calculated as follows:        For the gyros at 10 deg/s, the One Plus 7 Pro exhibited the largest bias and SF values, while the Pixel 7 Pro showed the lowest bias and second-lowest scale factor.The same cannot be said for the gyro bias and SF at 40 deg/s, for which the One Plus 7 Pro showed the highest scale factor but the lowest bias, while the Pixel 7 Pro and Vivo X60 Pro had the highest bias and lowest scale factor, respectively.

Effect of MEMS Errors on Positioning
The inertial navigation state solution, including position, velocity, and attitude, is affected by errors from three sources: errors in accelerometer and gyro sensor measurements, errors in the initialized state, and processing errors.As discussed in Section 2, measurement errors consist of a stochastic, random component and a deterministic, systematic one.Random noise from accelerometers and gyros has a cumulative effect on navigation errors.Accelerometer and gyro biases are integrated into the navigation equations, producing position, velocity, and attitude errors that increase over time.Attitude errors also affect velocity and position errors.Velocity initialization errors produce a growing position error when integrated.
Processing errors arise due to several factors, including the discretization of the navigation equation, the effects of finite iteration rates, approximations in the gravity model, computational rounding errors, and timing errors [13,15].
Inertial error propagation is also influenced by the host vehicle trajectory; indeed, for example, the coupling of heading errors into position and velocity, as well as the effect of the scale factor and cross-coupling errors, all strongly depend on the host vehicle dynamics [28].
Very simple models of gravity, function of latitude and height only, can be a significant source of error (up to 0.1 mg), particularly if high-precision inertial sensors are used.Timing errors (due to a non-perfect clock within the inertial navigation processor) are generally negligible compared to the other sources.

Short-Term Straight-Line Pure Inertial Propagation
In order to analyze the effect of inertial error propagation, we can evaluate the shortterm error propagation given the noise SD and bias values determined in Section 3 and some errors in the initial position, velocity, and attitude states.
Let us consider the simplest case of a host vehicle traveling in a straight and level line at a constant velocity and constant temperature, and derive each error contribution as done in [13].The effects of the curvature and rotation of the Earth and gravity approximations can be neglected.The error of the position of the INS body frame b, with the respect to the origin of a frame β resolved about the axes of a frame γ error, can be formulated as the integral of the velocity error with a constant velocity error, where t is the integration time, while the velocity error is the integral of the acceleration error with a constant accelerometer bias b a , where C γ b is a rotation matric from frame b to frame γ.Therefore, the position error will be: Note that there is no error propagation between the axes, since we assume that the attitude remains constant.
With a small-angle approximation, the attitude error can be expressed as a vector resolved about a certain set of axes.We can denote with f b ib the specific force measured by the accelerometer, and with δΨ γ γb , the error in the INS-indicated attitude of frame b with respect to a frame γ, resolved about the frame γ axes.
An acceleration error due to the constant attitude error δΨ γ γb under a small-angle assumption is: Sensors 2023, 23, 7609 13 of 25 Velocity and position errors due to an attitude error are: An attitude error due to a gyro bias is simply: Therefore, velocity and position errors due to a gyro bias are: Assuming white noise and denoting the single-sided accelerometer and gyroscope noise PSDs as S a and S g , the SDs of position and velocity errors due to accelerometer noise for each axis i ∈ x, y, z are [13]: While the SDs of attitude, horizontal position, and horizontal velocity errors due to gyroscope noise are [13]: where i ∈ x, y, z and j ∈ North, East.
In a nutshell, according to [13], short-term position error growth due to different sources can be summarized as in Table 9.
Gyro noise, S g g 1 3 S g t 3 g 1 5 S g t 5 S g t For the five smartphones considered, the following figures show the short-term straight-line position error SD growth per axis due to the noise and bias values determined in Section 3, with an initial position error of 10 m, initial velocity error of 0.1 m/s, and initial attitude error of 0.01 rad.The figure on the left displays the horizontal error, while the one on the right illustrates the vertical error.In particular, Figure 8 shows the total error accounting for bias, noise, and errors in the initial condition, while Figure 9 shows the error due to the noise contribution only.We can see that the largest horizontal position error in Figure 8 is accumulated with the MEMS errors of the One Plus 7 Pro, while the smallest is with the ones of the Pixel 7 Pro.This is expected, since the MEMS measurements of the One Plus 7 Pro had the highest accelerometer and gyro bias values, while the ones of the Pixel 7 Pro had the lowest gyro bias.It is interesting to see in Figure 9 that, if noise was the only source of error, the One Plus would outperform, since it showed the lowest noise SD values, but as shown in Figure 8, because of the strongest impact of its large accelerometer and gyro biases, it accumulated the largest position error.
As expected, the gyro biases had the strongest impact on positioning over time.Indeed, this grows with t 3 .Accelerometer biases produce an error in position that grows with t 2 .Approximately, for 2D navigation, uncompensated gyro and accelerometer biases result in position errors of 1  6 b g gt 3 and 1 2 b a gt 2 , respectively [29].In less than 100 s, a pure inertial propagation using the inertial measurements with the errors found in Section 3 for all the considered smartphones would result in an error of larger than 1 km.For the five smartphones considered, the following figures show the short-term straight-line position error SD growth per axis due to the noise and bias values determined in Section 3, with an initial position error of 10 m, initial velocity error of 0.1 m/s, and initial attitude error of 0.01 rad.The figure on the left displays the horizontal error, while the one on the right illustrates the vertical error.In particular, Figure 8 shows the total error accounting for bias, noise, and errors in the initial condition, while Figure 9 shows the error due to the noise contribution only.We can see that the largest horizontal position error in Figure 8 is accumulated with the MEMS errors of the One Plus 7 Pro, while the smallest is with the ones of the Pixel 7 Pro.This is expected, since the MEMS measurements of the One Plus 7 Pro had the highest accelerometer and gyro bias values, while the ones of the Pixel 7 Pro had the lowest gyro bias.It is interesting to see in Figure 9 that, if noise was the only source of error, the One Plus would outperform, since it showed the lowest noise SD values, but as shown in Figure 8, because of the strongest impact of its large accelerometer and gyro biases, it accumulated the largest position error.
As expected, the gyro biases had the strongest impact on positioning over time.Indeed, this grows with  3 .Accelerometer biases produce an error in position that grows with  2 .Approximately, for 2D navigation, uncompensated gyro and accelerometer biases result in position errors of    2 , respectively [29].In less than 100 s, a pure inertial propagation using the inertial measurements with the errors found in Section 3 for all the considered smartphones would result in an error of larger than 1 km.These results only show the position, velocity, and attitude errors when purely propagating the MEMS measurements (pure inertial propagation).In addition to the quality of the MEMS measurements, the final navigation performance of each smartphone also depends on the GNSS measurements; indeed MEMS inertial measurements are usually corrected with GNSS measurements (these may be may be more accurate for one of the considered devices and less for another one).The next section investigates the impact of different MEMS INS measurements with different errors on an INS-GNSS position solution.

INS-GNSS Positioning
In most cases, the MEMS measurements of a smartphones are fused with GNSS observations.If at least four GNSS satellites are available, processing their signals and observations can provide a position solution that can prevent the error drift showed in Figures 8 and 9 of a pure inertial solution.We evaluated the impact of different MEMS measurement errors on an INS-GNSS tightly coupled navigation solution for a short drive of 5 min around our campus in San Jose, California.
We modelled the accelerometer and gyro measurements as follows, according to [13,30], taking into account the mean value across the x,y,z axes of the error components estimated in our lab tests and reported in Section 3, for each of the five considered smartphones.

𝑓 ̃𝑖𝑏
=   +      +   (14)  ̃  =   +      +   (15) where  ̃  and  ̃  are the IMU-output specific force and angular rate measurements,    and    are the true counterparts,   and   are their biases,   and   are their scale factors, and   and   are their noise, respectively.GNSS pseudorange  and pseudorange rate ̇ observations were modelled as in Equations ( 16) and (17), respectively, according to [31,32], by assuming a GPS constellation of 30 satellites and accounting for a signal in space error SD of 1 m, an atmosphere residual error (after applied correction) SD of 2 m for the ionosphere and 0.2 m for the troposphere, a code tracking error SD of 1 m, a range rate tracking error SD of 0.02 m/s, an initial receiver clock offset of 10,000 m, and initial clock drift of 100 m/s.These results only show the position, velocity, and attitude errors when purely propagating the MEMS measurements (pure inertial propagation).In addition to the quality of the MEMS measurements, the final navigation performance of each smartphone also depends on the GNSS measurements; indeed MEMS inertial measurements are usually corrected with GNSS measurements (these may be may be more accurate for one of the considered devices and less for another one).The next section investigates the impact of different MEMS INS measurements with different errors on an INS-GNSS position solution.

INS-GNSS Positioning
In most cases, the MEMS measurements of a smartphones are fused with GNSS observations.If at least four GNSS satellites are available, processing their signals and observations can provide a position solution that can prevent the error drift showed in Figures 8 and 9 of a pure inertial solution.We evaluated the impact of different MEMS measurement errors on an INS-GNSS tightly coupled navigation solution for a short drive of 5 min around our campus in San Jose, California.
We modelled the accelerometer and gyro measurements as follows, according to [13,30], taking into account the mean value across the x,y,z axes of the error components estimated in our lab tests and reported in Section 3, for each of the five considered smartphones.
where f b ib and ω b ib are the IMU-output specific force and angular rate measurements, f b ib and ω b ib are the true counterparts, b a and b g are their biases, s a and s g are their scale factors, and w a and w g are their noise, respectively.
ρ observations were modelled as in Equations ( 16) and ( 17), respectively, according to [31,32], by assuming a GPS constellation of 30 satellites and accounting for a signal in space error SD of 1 m, an atmosphere residual error (after applied correction) SD of 2 m for the ionosphere and 0.2 m for the troposphere, a code tracking error SD of 1 m, a range rate tracking error SD of 0.02 m/s, an initial receiver clock offset of 10,000 m, and initial clock drift of 100 m/s. .
Sensors 2023, 23, 7609 16 of 25 In Equation ( 16), x sat i y sat i z sat i T denotes the position vector of the ith GPS satellite that is transmitting the signal, x u y u z u T is the user's position vector, and b is the receiver's clock offset in meters.In Equation ( 17), v sat i and v u are, respectively, the velocity vector of the ith transmitting GPS satellite and of the user, .
b represents the clock's drift expressed as range-rate bias (in m/s), and a i is the line-of-sight (LOS) vector from the user to the ith GPS satellite.
We filtered the inertial measurements with the simulated GNSS measurements utilizing an INS-GNSS tight integration EKF based on [13].Figure 10 illustrates the functional architecture of the adopted INS-GNSS integration.In Equation ( 16), [          ]  denotes the position vector of the ith GPS satellite that is transmitting the signal, [      ]  is the user's position vector, and  is the receiver's clock offset in meters.In Equation (17),    and   are, respectively, the velocity vector of the ith transmitting GPS satellite and of the user,  ̇ represents the clock's drift expressed as range-rate bias (in m/s), and   is the line-of-sight (LOS) vector from the user to the ith GPS satellite.
We filtered the inertial measurements with the simulated GNSS measurements utilizing an INS-GNSS tight integration EKF based on [13].Figure 10 illustrates the functional architecture of the adopted INS-GNSS integration.Table 10 reports the EKF formulation described in [32].
where,  is the attitude error,  is the velocity error,  is the position error,   are the accelerometer biases,   are the gyro biases,    is the receiver clock offset, ̇  is the receiver clock drift.
The measurement vector is: Table 10 reports the EKF formulation described in [32].

Quantity Formulation
Predicted state vector Corrected system noise covariance matrix (Joseph form) The state vector of the EKF is the following: where, δϕ is the attitude error, δv is the velocity error, δr is the position error, b a are the accelerometer biases, b g are the gyro biases, δρ GNSS c is the receiver clock offset, is the receiver clock drift.
Sensors 2023, 23, 7609 17 of 25 The measurement vector is: where ρ GNSS and .ρ GNSS are the pseudoranges and pseudorange rates of the available GPS satellites, respectively.
The measurement innovation vector includes the differences between the GNSSmeasured pseudorange and pseudorange rates and the corresponding values predicted by the corrected inertial navigation solution at the same time of validity, by using the estimated receiver clock offset and drift, and navigation-data-indicated satellite positions and velocities.
The matrices Φ k−1 , Q k−1 , R k , H k were implemented according to Chapter 14 of [13].
We estimated five different trajectories using the same INS-GNSS tight integration filter, identical GNSS observations, and identical initial conditions.However, we modeled different sets of inertial measurements based on the MEMS error estimates from the lab tests in Section 3 for each of the five smartphones.We used a precise navigation system that fused a carrier-phase GNSS and higher-grade inertial measurements to provide a reference trajectory (ground truth) for the drive.We then calculated the error of the INS-GNSSestimated trajectories using this reference.
Figure 11 shows the motion profile as the North, East, Down (NED) displacements and velocity, bank, elevation, and heading of the reference trajectory.The motion profile includes five turns of approximately 90 deg, with a maximum speed of approximately 10 m/s.measured pseudorange and pseudorange rates and the corresponding values predicted by the corrected inertial navigation solution at the same time of validity, by using the estimated receiver clock offset and drift, and navigation-data-indicated satellite positions and velocities.
We estimated five different trajectories using the same INS-GNSS tight integration filter, identical GNSS observations, and identical initial conditions.However, we modeled different sets of inertial measurements based on the MEMS error estimates from the lab tests in Section 3 for each of the five smartphones.We used a precise navigation system that fused a carrier-phase GNSS and higher-grade inertial measurements to provide a reference trajectory (ground truth) for the drive.We then calculated the error of the INS-GNSS-estimated trajectories using this reference.
Figure 11 shows the motion profile as the North, East, Down (NED) displacements and velocity, bank, elevation, and heading of the reference trajectory.The motion profile includes five turns of approximately 90 deg, with a maximum speed of approximately 10 m/s.
We analyzed two cases: one with a mask angle of 10 deg, corresponding to seven GNSS satellites available for the whole drive, and one with a mask angle of 45 deg, corresponding to a reduced GNSS availability for most of the drive.
Figure 12 shows the kml tracks of the five estimated position solutions obtained with the MEMS measurements of the five considered smartphones, as well as the track of the reference solution, with a mask angle of 10 deg.In general, from Figure 12, there are no evident performance differences.For all the considered smartphones, the GNSS observations from the available seven satellites successfully corrected the inertial solution and prevented any error drift.Small positioning differences can be recognized when zooming into Figure 12, as shown in Figure 13.Some more evident differences in the velocity and especially the attitude estimation errors can be observed by directly comparing the velocity and attitude error components.Figures 14 and 15 show the lowest velocity and attitude estimation errors (obtained with the MEMS errors of the Pixel 7 Pro) and the largest ones (obtained with the MEMS errors of the One Plus 7 Pro), respectively.We analyzed two cases: one with a mask angle of 10 deg, corresponding to seven GNSS satellites available for the whole drive, and one with a mask angle of 45 deg, corresponding to a reduced GNSS availability for most of the drive.
Figure 12 shows the kml tracks of the five estimated position solutions obtained with the MEMS measurements of the five considered smartphones, as well as the track of the reference solution, with a mask angle of 10 deg.In general, from Figure 12, there are no evident performance differences.For all the considered smartphones, the GNSS observations from the available seven satellites successfully corrected the inertial solution and prevented any error drift.Small positioning differences can be recognized when zooming into Figure 12, as shown in Figure 13.Some more evident differences in the velocity and especially the attitude estimation errors can be observed by directly comparing the velocity and attitude error components.Figures 14 and 15        When increasing the mask angle to 45 deg after initialization, the number of available GNSS satellites dropped to three for the first 268 s, as illustrated in Figure 16.
Figures 17 and 18 show the same tracks of Figure 12, but obtained with a mask angle of 45 deg.Unlike in Figure 12, where the solutions were obtained with seven available GNSS satellites, for only three GNSS satellites available we can see a substantial degradation of the positioning accuracy with an error drift.In this case, the differences between the performances of the five different smartphones were more evident and relevant.The position solution estimated for the One Plus 7 Pro was the one that diverged first.The one based on the MEMS measurement errors of the Pixel 7 Pro appeared to accumulate the smallest error by the end of the time interval with only three satellites available.Figures 19 and 20 show the position, velocity, and attitude estimation error components obtained   When increasing the mask angle to 45 deg after initialization, the number of available GNSS satellites dropped to three for the first 268 s, as illustrated in Figure 16.
Figures 17 and 18 show the same tracks of Figure 12, but obtained with a mask angle of 45 deg.Unlike in Figure 12, where the solutions were obtained with seven available GNSS satellites, for only three GNSS satellites available we can see a substantial degradation of the positioning accuracy with an error drift.In this case, the differences between the performances of the five different smartphones were more evident and relevant.The position solution estimated for the One Plus 7 Pro was the one that diverged first.The one based on the MEMS measurement errors of the Pixel 7 Pro appeared to accumulate the smallest error by the end of the time interval with only three satellites available.Figures 19 and 20 show the position, velocity, and attitude estimation error components obtained When increasing the mask angle to 45 deg after initialization, the number of available GNSS satellites dropped to three for the first 268 s, as illustrated in Figure 16.
Figures 17 and 18 show the same tracks of Figure 12, but obtained with a mask angle of 45 deg.Unlike in Figure 12, where the solutions were obtained with seven available GNSS satellites, for only three GNSS satellites available we can see a substantial degradation of the positioning accuracy with an error drift.In this case, the differences between the performances of the five different smartphones were more evident and relevant.The position solution estimated for the One Plus 7 Pro was the one that diverged first.The one based on the MEMS measurement errors of the Pixel 7 Pro appeared to accumulate the smallest error by the end of the time interval with only three satellites available.Figures 19 and 20 show the position, velocity, and attitude estimation error components obtained for these two smartphones.We can see that the INS-GNSS positioning accuracy in poor GNSS conditions (number of available GNSS satellites less than four) can be substantially different across the five considered smartphones can change substantially.By comparing the North, East, and Down position estimation error components of the Pixel 7 Pro (Figure 19) with those of One Plus 7 Pro (Figure 20), we can observe a difference of about one order of magnitude (e.g., for the Down component, we have errors up to about 320 m for the Pixel 7 Pro and up to about 3200 m for the One Plus 7 Pro).Sensors

Discussion
Sections 4.1 and 4.2 present an analysis of the short-term effects of the main error sources introduced in Section 2 and determined in Section 3 on the navigation accuracy in two different scenarios and conditions, with corresponding results.While Section 4.1 examined straight-line motion at a constant speed using INS only, Section 4.2 examined motion with five turns of approximately 90 degrees and a maximum speed of approximately 10 m/s using both INS and GNSS.From Section 4.1, we can see that pure inertial navigation using MEMS measurements with a smartphone can be accurate for a very short time (a few seconds) and quickly becomes highly inaccurate.For all five smartphones, the accumulated horizontal error on a short-term straight-line propagation was larger than 1 km in just 100 s.We can also see that phones with larger uncompensated biases had a much faster error growth, leading to significant differences in their performance when navigating in GNSS-denied environments such as tunnels and parking garages.From Section 4.2, we can see that, as long as more than four GNSS satellites are available, MEMS measurements from a phone with larger biases and higher noise did not lead to significantly larger navigation errors than those with lower biases and lower noise, unlike in the case of the pure inertial propagation in Section 4.1.However, there was a non-negligible difference in performance when only three GNSS satellites were available.In this case, the error drifts by more than 3 km within a span of approximately 250 s during a drive that includes three turns, each of approximately 90 deg.
An important aspect to consider is that the accuracy of the final position solution provided by a smartphone, in reality, will also strongly depend on the availability and quality of the GNSS measurements, which here in this paper, were simulated to be iden-

Discussion
Sections 4.1 and 4.2 present an analysis of the short-term effects of the main error sources introduced in Section 2 and determined in Section 3 on the navigation accuracy in two different scenarios and conditions, with corresponding results.While Section 4.1 examined straight-line motion at a constant speed using INS only, Section 4.2 examined motion with five turns of approximately 90 degrees and a maximum speed of approximately 10 m/s using both INS and GNSS.From Section 4.1, we can see that pure inertial navigation using MEMS measurements with a smartphone can be accurate for a very short time (a few seconds) and quickly becomes highly inaccurate.For all five smartphones, the accumulated horizontal error on a short-term straight-line propagation was larger than 1 km in just 100 s.We can also see that phones with larger uncompensated biases had a much faster error growth, leading to significant differences in their performance when navigating in GNSS-denied environments such as tunnels and parking garages.From Section 4.2, we can see that, as long as more than four GNSS satellites are available, MEMS measurements from a phone with larger biases and higher noise did not lead to significantly larger navigation errors than those with lower biases and lower noise, unlike in the case of the pure inertial propagation in Section 4.1.However, there was a non-negligible difference in performance when only three GNSS satellites were available.In this case, the error drifts by more than 3 km within a span of approximately 250 s during a drive that includes three turns, each of approximately 90 deg.
An important aspect to consider is that the accuracy of the final position solution provided by a smartphone, in reality, will also strongly depend on the availability and quality of the GNSS measurements, which here in this paper, were simulated to be identical for each smartphone, in order to isolate and uniquely evaluate the MEMS impacts on positioning performance.Indeed, one smartphone may embed MEMS of a higher quality, but a GNSS receiver with a poorer signal processing performance.In addition, some smartphones may utilize measurements from additional sensors, such as a magnetometer, barometer, motion constraints modelled as virtual measurements, and different estimation algorithms, which can all affect the achievable navigation performance.Therefore, the reader should not solely rely on the results presented in this paper to determine the positioning capabilities of the considered smartphones.How accurate the position solution of one smartphone was with respect to that of another smartphone presented here may not reflect the overall performances, which are based on the individual navigation architecture and on the individual availability and quality of the measurements provided by additional sensors.Nevertheless, the goal of this work was to quantify the main error components affecting MEMS INS measurements in a smartphone and analyze their effect on positioning, rather than determining what smartphone showed the overall best navigation capabilities.
Numerous literature studies have proposed different methods for enhancing the achievable navigation accuracy when using an INS and or the fusion of an INS with a GNSS.Zero updates and motion constraints are techniques that can help to improve the accuracy of position tracking when using IMUs in smartphones and other devices [13,33,34].These techniques can be combined with machine learning methods and with the processing of the measurements of other sensors to further improve the achievable positioning accuracy [35][36][37].In particular, Zero velocity updates (ZVUs) are used to maintain the alignment and calibration of an INS when the host vehicle or user is stationary during navigation.This technique is particularly useful in poor GNSS signal environments, such as urban areas, and can be used for land vehicle navigation.Zero angular rate updates (ZARUs) are another technique that can be used to improve the accuracy of position tracking.ZARUs and ZVUs are often performed together, but may also be implemented independently.
Motion constraints are used to correct and calibrate the errors in an INS by taking advantage of the limitations in the movement of a vehicle or pedestrian.These constraints provide additional information to the navigation solution based on the operating context.They are also known as nonholonomic constraints, which introduce a dependency of the state estimates on their previous values [13].
Machine learning methods can be used to improve position tracking, e.g., by identifying periods when IMUs are stopped (zero-velocity detection) and estimating the displacement of the sensors during periods of movement.For example, classifiers such as Random Forest, Support Vector Machines (SVM), and neural networks based on Long Short-Term Memory (LSTM) layers can be used to identify zero-velocity periods [36,37].
In addition, a higher accuracy and robustness can be achieved by combining data from additional available embedded sensors, such as magnetometers, barometers, Wi-Fi systems, and cameras [38,39].The fusion of data from these sensors can overcome their individual limitations and provide a more precise and reliable navigation solution.

Conclusions
In this paper, we analyzed the main sources of the stochastic and deterministic errors affecting MEMS sensor measurements in five commercial smartphones.We carried out specific laboratory tests to determine the standard deviations, bias instabilities, random walks, rate random walks, biases, and scale factors of both the accelerometers and gyros in these devices.
Our results in Section 3 showed that the MEMS measurement errors of one smartphone could be significantly larger than those of another.These differences were large enough to result in substantially different INS and INS-GNSS navigation performances.
Some of the MEMS sensors may not have been calibrated before being embedded into their respective smartphones, considering the large biases and scale factors we determined.
In general, the measurements of the MEMS sensors embedded in the smartphones we considered are not accurate enough for meaningful, long-term pure inertial navigation.Fusing MEMS measurements with a GNSS prevents drift, as long as at least four GNSS satellites are available.However, when fusing three GNSS observations only, as expected, the solution will be affected by a drifting error, whose severity will mainly depend on the bias of the inertial measurements.
In our future work, we plan to conduct more specific tests to determine higher-order errors and evaluate their effect on positioning accuracy, also modelling motion constraints and additional measurements from other sensors.

Figure 1 .
Figure 1.Example of Allan Variance plot for the y-axis accelerometer of iPhone XR.Figure 1. Example of Allan Variance plot for the y-axis accelerometer of iPhone XR.

Figure 1 .
Figure 1.Example of Allan Variance plot for the y-axis accelerometer of iPhone XR.Figure 1. Example of Allan Variance plot for the y-axis accelerometer of iPhone XR.

Figure 2 .
Figure 2. Example of Allan Variance plot for the y-axis gyro of iPhone XR.

Figure 2 .
Figure 2. Example of Allan Variance plot for the y-axis gyro of iPhone XR.

Figure 4 .
Figure 4. Six positions (a-f).The six positions of the IMU are indicated by the directions of each orthogonal axis of the IMU.The reference direction corresponds to a vector pointing towards the reader, represented by a dot within a circle.A vector pointing in the opposite direction away from the reader is represented by a cross within a circle.

Figure 4 .
Figure 4. Six positions (a-f).The six positions of the IMU are indicated by the directions of each orthogonal axis of the IMU.The reference direction corresponds to a vector pointing towards the reader, represented by a dot within a circle.A vector pointing in the opposite direction away from the reader is represented by a cross within a circle.

Figure 5 .
Figure 5. Experimental setup for the Gyro Rate Test showing the robot Dorna 2 and smartphone device

Figure 5 .
Figure 5. Experimental setup for the Gyro Rate Test showing the robot Dorna 2 and smartphone device.

Figure 6 .
Figure 6.Experimental setup for the Gyro Rate Test showing the robot Dorna 2 and the phone holder.

Figure 7 .
Figure 7. Phone holder that connects the smartphones to the robot head.In general, the test can be repeated with different reference values   in order to characterize the scale factor and bias as a function of the angular rate.For this paper, we collected data for two representative angular rate values of 10 deg/s and 40 deg/s.Note that the test can also be repeated for different  values for the characterization of the dependent errors.In our tests, each gyro axis was aligned with the local vertical axis.Tables 7 and 8 report the bias and SF values at 10 deg/s and 40 deg/s, respectively, for all five smartphones.

Figure 6 . 25 Figure 6 .
Figure 6.Experimental setup for the Gyro Rate Test showing the robot Dorna 2 and the phone holder.

Figure 7 .
Figure 7. Phone holder that connects the smartphones to the robot head.In general, the test can be repeated with different reference values   in order to characterize the scale factor and bias as a function of the angular rate.For this paper, we collected data for two representative angular rate values of 10 deg/s and 40 deg/s.Note that the test can also be repeated for different  values for the characterization of the dependent errors.In our tests, each gyro axis was aligned with the local vertical axis.Tables 7 and 8 report the bias and SF values at 10 deg/s and 40 deg/s, respectively, for all five smartphones.

Figure 7 .
Figure 7. Phone holder that connects the smartphones to the robot head.In general, the test can be repeated with different reference values ω re f in order to characterize the scale factor and bias as a function of the angular rate.For this paper, we collected data for two representative angular rate values of 10 deg/s and 40 deg/s.Note that the test can also be repeated for different g values for the characterization of the g-dependent errors.In our tests, each gyro axis was aligned with the local vertical axis.Tables7 and 8report the bias and SF values at 10 deg/s and 40 deg/s, respectively, for all five smartphones.

Figure 8 .
Figure 8. Short-term straight-line position error SD growth per axis for One Plus, iPhone XR, Vivo X60 Pro, Pixel 7 Pro, and Samsung SM-A536V.

Figure 8 .
Figure 8. Short-term straight-line position error SD growth per axis for One Plus, iPhone XR, Vivo X60 Pro, Pixel 7 Pro, and Samsung SM-A536V.

Figure 9 .
Figure 9. Short-term straight-line position error SD growth per axis for One Plus, iPhone XR, Vivo X60 Pro, Pixel 7 Pro, and Samsung SM-A536V with perfect initial conditions, zero biases, and only noise effect.

Figure 10 .
Figure 10.Functional architecture of the adopted INS-GNSS integration.

Figure 10 .
Figure 10.Functional architecture of the adopted INS-GNSS integration.

Figure 11 .
Figure 11.Reference trajectory estimated by the high-precision INS-GNSS navigation system.Figure 11.Reference trajectory estimated by the high-precision INS-GNSS navigation system.

Figure 11 .
Figure 11.Reference trajectory estimated by the high-precision INS-GNSS navigation system.Figure 11.Reference trajectory estimated by the high-precision INS-GNSS navigation system.

25 Figure 12 .
Figure 12.Kml trajectories of reference IMU in black, iPhone XR in green, One Plus 7 Pro in light blue, Vivo X60 Pro in purple, Google Pixel 7 Pro in yellow, and Samsung SM-A536V in red, when assuming a mask angle of 10 deg.

Figure 12 . 25 Figure 12 .
Figure 12.Kml trajectories of reference IMU in black, iPhone XR in green, One Plus 7 Pro in light blue, Vivo X60 Pro in purple, Google Pixel 7 Pro in yellow, and Samsung SM-A536V in red, when assuming a mask angle of 10 deg.

Figure 14 .
Figure 14.Position, velocity, and attitude estimation errors for Samsung SM-A536V, with a mask angle of 10 deg (corresponding to 7 GNSS satellites available for the whole drive).

Figure 15 .
Figure 15.Position, velocity, and attitude estimation errors for One Plus 7 Pro, with a mask angle of 10 deg (corresponding to 7 GNSS satellites available for the whole drive).

Figure 14 .
Figure 14.Position, velocity, and attitude estimation errors for Samsung SM-A536V, with a mask angle of 10 deg (corresponding to 7 GNSS satellites available for the whole drive).

Sensors 2023, 23 , 7609 19 of 25 Figure 14 .
Figure 14.Position, velocity, and attitude estimation errors for Samsung SM-A536V, with a mask angle of 10 deg (corresponding to 7 GNSS satellites available for the whole drive).

Figure 15 .
Figure 15.Position, velocity, and attitude estimation errors for One Plus 7 Pro, with a mask angle of 10 deg (corresponding to 7 GNSS satellites available for the whole drive).

Figure 15 .
Figure 15.Position, velocity, and attitude estimation errors for One Plus 7 Pro, with a mask angle of 10 deg (corresponding to 7 GNSS satellites available for the whole drive).

Sensors 2023 ,
23, 7609 20 of 25 for these two smartphones.We can see that the INS-GNSS positioning accuracy in poor GNSS conditions (number of available GNSS satellites less than four) can be substantially different across the five considered smartphones can change substantially.By comparing the North, East, and Down position estimation error components of the Pixel 7 Pro (Figure19) with those of One Plus 7 Pro (Figure20), we can observe a difference of about one order of magnitude (e.g., for the Down component, we have errors up to about 320 m for the Pixel 7 Pro and up to about 3200 m for the One Plus 7 Pro).

Figure 16 .
Figure 16.Number of available GNSS satellites with a mask angle of 45 deg.

Figure 17 .
Figure 17.Kml trajectories of reference IMU in black, iPhone XR in green, One Plus 7 Pro in light blue, Vivo X60 Pro in purple, Google Pixel 7 Pro in yellow, and Samsung SM-A536V in red, with a mask angle of 45 deg.

Figure 16 .
Figure 16.Number of available GNSS satellites with a mask angle of 45 deg.

Figure 16 .
Figure 16.Number of available GNSS satellites with a mask angle of 45 deg.

Figure 17 .
Figure 17.Kml trajectories of reference IMU in black, iPhone XR in green, One Plus 7 Pro in light blue, Vivo X60 Pro in purple, Google Pixel 7 Pro in yellow, and Samsung SM-A536V in red, with a mask angle of 45 deg.

Figure 17 .Figure 18 .
Figure 17.Kml trajectories of reference IMU in black, iPhone XR in green, One Plus 7 Pro in light blue, Vivo X60 Pro in purple, Google Pixel 7 Pro in yellow, and Samsung SM-A536V in red, with a mask angle of 45 deg.

Figure 20 .
Figure 20.Position, velocity, and attitude estimation errors for One Plus 7 Pro.

Figure 20 .
Figure 20.Position, velocity, and attitude estimation errors for One Plus 7 Pro.

Table 1 .
Tested smartphones and corresponding inertial sensors they integrate.

Table 4 .
Accelerometer bias instability and random walks.

Table 5 .
Gyro bias instability and random walks.

Table 5 .
Gyro bias instability and random walks.

Table 6
reports the bias and scale factor (SF) determined for the five smartphones by carrying out the Six-Position Static test.

Table 6 .
Accelerometer bias and scale factor.

Table 6
reports the bias and scale factor (SF) determined for the five smartphones by carrying out the Six-Position Static test.

Table 6 .
Accelerometer bias and scale factor.

Table 7 .
Gyro bias and scale factor at 10 deg/s.

Table 8 .
Gyro bias and scale factor at 40 deg/s.

Table 9 .
Short-term velocity and position error growth.

Table 9 .
Short-term velocity and position error growth.
−   ) Figure9.Short-term straight-line position error SD growth per axis for One Plus, iPhone XR, Vivo X60 Pro, Pixel 7 Pro, and Samsung SM-A536V with perfect initial conditions, zero biases, and only noise effect.