Towards Smarter Positioning through Analyzing Raw GNSS and Multi-Sensor Data from Android Devices: A Dataset and an Open-Source Application
Abstract
:1. Introduction
- Developing a novel open-source sensor logging app called “Mimir”, designed for both smartphone and smartwatch environments;
- Providing an open-source multi-sensor dataset acquired on various Android smart devices (four smartphones and one smartwatch), along with a geodesic-grade reference receiver;
- Comparing the data quality and positioning accuracy of the Android smart devices in the context of positioning applications.
2. Related Research
2.1. Usage of Android GNSS Measurements
2.2. Access to Public Datasets
2.3. Wearables and Next GNSS Chip Generation
2.4. Paper Structure
3. Methodology
- By “survey”, we mean the act of surveying and gathering data using a measurement device, as defined in land surveying topics.
- In Differential GNSS (DGNSS), the “base” refer to the static receiver and “rover” refer to the moving receiver.
- In GNSS, an “epoch” is defined a measure of time when a new GNSS measurement is received. A 1 Hz sampling rate would be equivalent to 1 epoch per second.
3.1. Device Selection
3.2. Logging Application Developments
3.3. Analysis Software Developments
3.4. Survey Protocol
4. Dataset Description
4.1. Scenarios and Environments
4.1.1. Static Scenario (S1)
4.1.2. Short Dynamic Scenario with Urban-Canyoning (S2)
4.1.3. Dynamic Scenario in Urban Area (S3)
4.1.4. Dynamic Scenario in Forest/Lake Area (S4)
4.2. List of the Surveys Performed
4.3. File Structure
4.4. Sensors Summary
- GNSS measurements that can be associated with multiple line entries in the log file: (1) location measurements (latitude, longitude, altitude) provided by the phone, from different providers; (2) raw GNSS measurements, as described in [11,44]; (3) navigation messages, as provided by the Android API and decoded by the GNSS receiver (i.e., not from another network channel).
- INS measurements, composed of two type of sensors: accelerometers, providing linear acceleration measurements, and gyroscopes, providing rotational acceleration measurements. In total, we have on each mobile device three accelerometers and three gyroscopes, placed on the three orthogonal axes (X, Y, Z), allowing re-composition of a relative motion in three dimensions.Additionally, an INS often include magnetometers, which measures the magnetic field (similar to a magnetic compass). The magnetometer enables the absolute orientation and estimation of the INS drifts [45]. Similarly to the INS measurements, three magnetometers allow the measurement of the magnetic field in three dimensions. All this information can be put together to form a low-grade INS system to be combined with GNSS measurements [1,2,45]. In the Android documentation, these sensors are regrouped under the term “motion sensors”.
- Barometer measurements, related to the atmospheric pressure can be converted into altitude. As GNSS is known to have low precision in the up/vertical direction due to the geometry of a GNSS system, a fusion of GNSS/Barometer measurements is often seen in positioning applications [46].
5. Performance Metrics
5.1. Positioning
5.2. Visibility
5.3. Measurements
6. Results
6.1. Positioning Analysis
6.2. Visibility Analysis
6.3. Measurements Analysis
7. Discussion and Future Work
7.1. A Suitable Reference Definition
7.2. The Android Platform for Research
7.3. Android Devices and Scenario Impact
7.4. Positioning with Smart Devices
8. Conclusions
Author Contributions
Funding
Data Availability Statement
Acknowledgments
Conflicts of Interest
Abbreviations
API | Application Programming Interface |
BLE | Bluetooth Low Energy |
CN0 | Carrier-to-Noise ratio |
CSV | Comma Separated Value |
DGNSS | Differential GNSS |
ECG | Electrocardiogram |
GNSS | Global Navigation Satellite System |
ECG | Electrocardiogram |
SpO2 | Oxygen Saturation |
PPG | photoplethysmogram |
GSR | Galvanic Sensor Response |
INS | Inertial Navigation System |
SNR | Signal-to-Noise Ratio |
TOW | Time of Week |
WiFi | Wireless Fidelity |
Appendix A. Android Sensor Measurements
Tag | Measurement | Description | Unit |
Fix | provider | Origin of the location provided (e.g., GPS, NLP, FLP) | |
latitude | Geodetic latitude (WGS84) | [Dec. Deg.] | |
longitude | Geodetic longitude (WGS84) | [Dec. Deg.] | |
altitude | Geodetic altitude (WGS84) | [m] | |
speed | User velocity | [m/s] | |
accuracy | Horizontal uncertainty (1-σ) | [m] | |
bearing | Horizontal direction | [Deg.] | |
time | UTC time in UNIX | [ms] | |
speedAccuracyMetersPerSecond | User velocity uncertainty (1-σ) | [m/s] | |
bearingAccuracyDegrees | Horizontal direction velocity (1-σ) | [Deg.] | |
elapsedRealtimeNanos | Time since system boot | [ns] | |
verticalAccuracyMeters | Vertical uncertainty (1-σ) | [m] | |
elapsedRealtimeUncertaintyNanos | Time since system boot uncertainty (1-σ) | [ns] | |
Raw | utcTimeMillis | UTC time in UNIX | [ms] |
timeNanos | Internal clock from GNSS hardware receiver | [ns] | |
leapSecond | Number of leap seconds w.r.t. provided clock | [s] | |
timeUncertaintyNanos | Internal clock uncertainty (1-σ) | [ns] | |
fullBiasNanos | Full bias between clock and true GPS time | [ns] | |
biasNanos | Partial clock bias | [ns] | |
biasUncertaintyNanos | Partial clock bias uncertainty (1-σ) | [ns] | |
driftNanosPerSecond | Clock drift | [ns/s] | |
driftUncertaintyNanosPerSecond | Clock drift uncertainty (1-σ) | [ns/s] | |
hardwareClockDiscontinuityCount | Counts of hardware discontinuities | ||
svid | Satellite ID | ||
timeOffsetNanos | Time offset of the measurements | [ns] | |
state | Current tracking state of the signal | ||
receivedSvTimeNanos | Received satellite time at measurement time | [ns] | |
receivedSvTimeUncertaintyNanos | Received time uncertainty (1-σ) | [ns] | |
cn0DbHz | Carrier-to-Noise ratio | [dB-Hz] | |
pseudorangeRateMetersPerSecond | Pseudorange rate, i.e., Doppler shift | [m/s] | |
pseudorangeRateUncertaintyMetersPerSecond | Pseudorange rate uncertainty | [m/s] | |
accumulatedDeltaRangeState | Carrier tracking state | ||
accumulatedDeltaRangeMeters | Accumulated pseudorange rate, i.e., carrier phase | [m/s] | |
accumulatedDeltaRangeUncertaintyMeters | Accumulated pseudorange rate uncertainty | [m/s] | |
carrierFrequencyHz | GNSS carrier frequency | [Hz] | |
carrierCycles | Number of carrier phase cycles (deprecated) | ||
carrierPhase | Carrier phase (deprecated) | ||
carrierPhaseUncertainty | Carrier phase uncertainty (deprecated) | ||
multipathIndicator | Multipath flag | [Boolean] | |
snrInDb | Signal-to-Noise ratio | [dB-Hz] | |
constellationType | Constellation ID | ||
automaticGainControlLevelDb | Current Automatic Gain Control | [dB] | |
basebandCn0DbHz | Baseband Carrier-to-Noise ratio | [dB-Hz] | |
fullInterSignalBiasNanos | Full GNSS inter-signal bias | [ns] | |
fullInterSignalBiasUncertaintyNanos | Full GNSS inter-signal bias uncertainty (1-σ) | [ns] | |
satelliteInterSignalBiasNanos | Partial GNSS inter-signal bias | [ns] | |
satelliteInterSignalBiasUncertainty | Partial GNSS inter-signal bias uncertainty (1-σ) | [ns] | |
codeType | RINEX code type | ||
elapsedRealtimeNanos | Time since system boot (1-σ) | [ns] | |
Nav | utcTimeMillis | UTC time in UNIX | [ms] |
svid | Satellite ID | ||
type | Navigation message type | ||
status | Parity check status | ||
messageId | Message frame ID | ||
submessageId | Message sub-frame ID | ||
data | Byte array of navigation message |
Tag | Measurement | Description | Unit |
ACC | x_meterPerSecond2 | X-axis acceleration | [m/s2] |
y_meterPerSecond2 | Y-axis acceleration | [m/s2] | |
z_meterPerSecond2 | Z-axis acceleration | [m/s2] | |
accuracy | Android accuracy classification | ||
GYR | x_radPerSecond | X-axis rotation | [rad/s] |
y_radPerSecond | Y-axis rotation | [rad/s] | |
z_radPerSecond | Z-axis rotation | [rad/s] | |
accuracy | Android accuracy classification | ||
MAG | x_microTesla | X-axis magnetic field | [µTesla] |
y_microTesla | Y-axis magnetic field | [µTesla] | |
z_microTesla | Z-axis magnetic field | [µTesla] | |
accuracy | Android accuracy classification | ||
ACC_UNCAL | x_uncalibrated_meterPerSecond2 | Raw X-axis acceleration | [m/s2] |
y_uncalibrated_meterPerSecond2 | Raw Y-axis acceleration | [m/s2] | |
z_uncalibrated_meterPerSecond2 | Raw Z-axis acceleration | [m/s2] | |
x_bias_meterPerSecond2 | Compensated X-axis acceleration | [m/s2] | |
y_bias_meterPerSecond2 | Compensated Y-axis acceleration | [m/s2] | |
z_bias_meterPerSecond2 | Compensated Z-axis acceleration | [m/s2] | |
accuracy | Android accuracy classification | ||
GYR_UNCAL | x_uncalibrated_radPerSecond | Raw X-axis rotation | [rad/s] |
y_uncalibrated_radPerSecond | Raw Y-axis rotation | [rad/s] | |
z_uncalibrated_radPerSecond | Raw Z-axis rotation | [rad/s] | |
x_bias_radPerSecond | Compensated X-axis rotation | [rad/s] | |
y_bias_radPerSecond | Compensated Y-axis rotation | [rad/s] | |
z_bias_radPerSecond | Compensated Z-axis rotation | [rad/s] | |
accuracy | Android accuracy classification | ||
MAG_UNCAL | x_uncalibrated_microTesla | Raw X-axis magnetic field | [µTesla] |
y_uncalibrated_microTesla | Raw Y-axis magnetic field | [µTesla] | |
z_uncalibrated_microTesla | Raw Z-axis magnetic field | [µTesla] | |
x_bias_microTesla | Compensated X-axis magnetic field | [µTesla] | |
y_bias_microTesla | Compensated Y-axis magnetic field | [µTesla] | |
z_bias_microTesla | Compensated Z-axis magnetic field | [µTesla] | |
accuracy | Android accuracy classifications |
Tag | Measurement | Description | Unit |
PSR | pressure_hPa | Ambient air pressure | [hPa or mBar] |
accuracy | Android accuracy classification |
Appendix B. Scenario 1—Static Acquisition in Open-Sky Environment
Mean ± StD (1-) [m] | RMSE [m] | |||||
---|---|---|---|---|---|---|
Device | Inc. [%] | East | North | Up | 2D | 3D |
GP7 | 100.00 | 2.382 | 3.742 | |||
GPW | 100.00 | 2.349 | 3.323 | |||
ON2 | 100.00 | 0.658 | 6.645 | |||
A52 | 100.00 | 2.825 | 5.395 | |||
X11 | 100.00 | 5.457 | 6.652 |
Freq. [%] | Constellations [%] | |||||||
---|---|---|---|---|---|---|---|---|
Device | L1 | L5 | G | R | E | C | I | J |
GP7 | 56.5 | 69.4 | 81.0 | 40.0 | 90.0 | 59.4 | — | 50.0 |
GPW | 65.6 | 0.0 | 66.7 | 127.3 | 50.0 | 14.7 | — | — |
ON2 | 86.9 | 85.3 | 104.5 | 100.0 | 100.0 | 93.9 | — | — |
A52 | 68.3 | 0.0 | 63.6 | 90.9 | 20.0 | 46.7 | — | 25.0 |
X11 | 90.7 | 93.3 | 85.0 | 90.0 | 105.6 | 112.5 | 125.0 | — |
Device | Inc. [%] | Mean [m] | StD [m] | Min. [m] | Max. [m] | |
---|---|---|---|---|---|---|
Pseudorange | GP7 | 99.90 | 0.061 | 1.736 | 108.773 | |
GPW | 99.93 | 0.058 | 0.456 | 22.945 | ||
ON2 | 100.00 | 0.059 | 1.545 | 50.699 | ||
A52 | 99.98 | 0.072 | 1.643 | 87.806 | ||
X11 | 99.96 | 0.063 | 0.482 | 23.511 |
Device | Inc. [%] | Mean [m] | StD [m] | Min. [m] | Max. [m] | |
---|---|---|---|---|---|---|
Doppler | GP7 | 99.97% | 0.073 | 0.252 | 25.736 | |
GPW | 100.00% | 0.083 | 0.160 | 2.966 | ||
ON2 | 100.00% | 0.069 | 1.308 | 15.844 | ||
A52 | 100.00% | 0.086 | 1.088 | 14.831 | ||
X11 | 100.00% | 0.112 | 0.910 | 19.542 |
Device | Inc. [%] | Mean [m] | StD [m] | Min. [m] | Max. [m] | |
---|---|---|---|---|---|---|
Phase | GP7 | 99.50% | 0.093 | 0.748 | 29.441 | |
GPW | 99.98% | 0.098 | 0.327 | 11.616 | ||
ON2 | 99.09% | 0.100 | 1.386 | 29.283 | ||
A52 | — | — | — | — | — | |
X11 | 99.45% | 0.136 | 1.092 | 29.967 |
Device | Inc. [%] | Mean [dB] | StD [dB] | Min. [dB] | Max. [dB] | |
---|---|---|---|---|---|---|
C/n0 | GP7 | 100.00% | 30.8 | 8.0 | 10.6 | 48.2 |
GPW | 100.00% | 31.5 | 6.4 | 12.1 | 44.9 | |
ON2 | 100.00% | 28.2 | 10.6 | — | 44.7 | |
A52 | 100.00% | 44.1 | 5.4 | 21.4 | 56.3 | |
X11 | 100.00% | 33.8 | 6.7 | 3.0 | 49.0 |
Appendix C. Scenario 2—Pedestrian Dynamic in Urban Canyoning Environment
Mean ± StD (1-) [m] | RMSE [m] | |||||
---|---|---|---|---|---|---|
Device | Inc. [%] | East | North | Up | 2D | 3D |
GP7 | 100.00 | 2.428 | 7.964 | |||
GPW | 100.00 | 3.329 | 7.528 | |||
ON2 | 100.00 | 6.515 | 11.265 | |||
A52 | — | 3.400 | 7.224 | |||
X11 | 100.00 | 5.329 | 16.657 |
Freq. [%] | Constellations [%] | |||||||
---|---|---|---|---|---|---|---|---|
Device | L1 | L5 | G | R | E | C | I | J |
GP7 | 78.9 | 95.5 | 94.1 | 75.0 | 77.8 | 86.7 | — | 100.0 |
GPW | 97.4 | — | 64.7 | 125.0 | 44.4 | 46.7 | — | 50.0 |
ON2 | 95.5 | 80.8 | 129.4 | 112.5 | 100.0 | 59.3 | — | — |
A52 | 114.0 | — | 72.2 | 200.0 | 50.0 | 45.8 | — | 50.0 |
X11 | 124.4 | 136.4 | 115.8 | 110.0 | 105.6 | 171.4 | 500.0 | 0.0 |
Device | Inc. [%] | Mean [m] | StD [m] | Min. [m] | Max. [m] | |
---|---|---|---|---|---|---|
Pseudorange | GP7 | 99.94% | 0.124 | 9.752 | 246.959 | |
GPW | 99.83% | 0.413 | 18.186 | 226.721 | ||
ON2 | 99.35% | 0.553 | 13.840 | 138.471 | ||
A52 | 99.98% | 0.090 | 15.080 | 195.191 | ||
X11 | 99.27% | 0.281 | 13.038 | 143.735 |
Device | Inc. [%] | Mean [m] | StD [m] | Min. [m] | Max. [m] | |
---|---|---|---|---|---|---|
Doppler | GP7 | 100.00% | 0.076 | 0.395 | 10.060 | |
GPW | 100.00% | 0.098 | 0.374 | 6.036 | ||
ON2 | 99.99% | 0.317 | 2.073 | 13.691 | ||
A52 | 100.00% | 0.058 | 0.651 | 7.768 | ||
X11 | 100.00% | 0.007 | 1.085 | 21.977 |
Device | Inc. [%] | Mean [m] | StD [m] | Min. [m] | Max. [m] | |
---|---|---|---|---|---|---|
Phase | GP7 | 99.91% | 0.096 | 1.004 | 22.052 | |
GPW | 99.98% | 0.119 | 0.798 | 18.423 | ||
ON2 | 98.35% | 0.383 | 2.542 | 29.935 | ||
A52 | 100.00% | 0.000 | 0.000 | 0.000 | 0.000 | |
X11 | 98.04% | 0.039 | 1.335 | 28.787 |
Device | Inc. [%] | Mean [dB] | StD [dB] | Min. [dB] | Max. [dB] | |
---|---|---|---|---|---|---|
C/n0 | GP7 | 100.00% | 32.742 | 8.964 | 10.600 | 51.452 |
GPW | 100.00% | 28.139 | 6.772 | 12.100 | 44.307 | |
ON2 | 100.00% | 24.779 | 11.000 | 0.000 | 49.000 | |
A52 | 100.00% | 42.822 | 6.292 | 21.300 | 57.300 | |
X11 | 100.00% | 29.477 | 7.533 | 5.000 | 49.000 |
Appendix D. Scenario 3—Pedestrian Dynamic in Urban Environment
Mean ± StD (1-) [m] | RMSE [m] | |||||
---|---|---|---|---|---|---|
Device | Inc. [%] | East | North | Up | 2D | 3D |
GP7 | 100.00 | 1.040 ± 4.977 | 6.109 | 9.822 | ||
ON2 | 100.00 | 1.810 ± 4.551 | 5.405 | 7.738 | ||
ON2 | 100.00 | 3.771 ± 8.038 | 12.607 | 20.151 | ||
A52 | 100.00 | 29.149 | 32.263 | |||
X11 | 100.00 | 10.137 | 15.384 |
Freq. [%] | Constellations [%] | |||||||
Device | L1 | L5 | G | R | E | C | I | J |
GP7 | 83.0 | 77.8 | 87.5 | 90.0 | 72.7 | 80.8 | — | — |
GPW | 91.5 | — | 75.0 | 140.0 | 36.4 | 34.6 | — | — |
ON2 | 114.9 | 103.7 | 125.0 | 110.0 | 113.6 | 100.0 | — | — |
A52 | 100.0 | — | 68.8 | 90.0 | 50.0 | 61.5 | — | — |
X11 | 112.8 | 114.8 | 125.0 | 110.0 | 113.6 | 100.0 | 200.0% | — |
Device | Inc. [%] | Mean [m] | StD [m] | Min. [m] | Max. [m] | |
---|---|---|---|---|---|---|
Pseudorange | GP7 | 99.98% | 0.106 | 10.293 | 264.025 | |
ON2 | 99.81% | 0.095 | 16.888 | 277.366 | ||
ON2 | 99.94% | 4.986 | 137.541 | |||
A52 | 99.99% | 0.123 | 14.754 | 297.405 | ||
X11 | 99.99% | 0.394 | 22.109 | 269.135 |
Device | Inc. [%] | Mean [m] | StD [m] | Min. [m] | Max. [m] | |
---|---|---|---|---|---|---|
Pseudorange | GP7 | 99.98% | 0.106 | 10.293 | 264.025 | |
ON2 | 99.81% | 0.095 | 16.888 | 277.366 | ||
ON2 | 99.94% | 4.986 | 137.541 | |||
A52 | 99.99% | 0.123 | 14.754 | 297.405 | ||
X11 | 99.99% | 0.394 | 22.109 | 269.135 |
Device | Inc. [%] | Mean [m] | StD [m] | Min. [m] | Max. [m] | |
---|---|---|---|---|---|---|
Phase | GP7 | 99.62% | 0.096 | 0.972 | 29.383 | |
ON2 | 99.95% | 0.098 | 0.821 | 19.709 | ||
ON2 | 98.43% | 1.335 | 29.333 | |||
A52 | 100.00% | 0.000 | 0.000 | 0.000 | 0.000 | |
X11 | 98.78% | 0.046 | 1.061 | 29.073 |
Device | Inc. [%] | Mean [dB] | StD [dB] | Min. [dB] | Max. [dB] | |
---|---|---|---|---|---|---|
C/n0 | GP7 | 100.00% | 34.5 | 8.2 | 10.6 | 52.0 |
ON2 | 100.00% | 27.0 | 7.0 | 12.1 | 43.9 | |
ON2 | 100.00% | 24.5 | 11.1 | 0.0 | 50.4 | |
A52 | 100.00% | 42.0 | 6.5 | 16.1 | 58.1 | |
X11 | 100.00% | 29.0 | 7.3 | 3.6 | 48.8 |
Appendix E. Scenario 4—Pedestrian Dynamic in Light Forest and Lake Environment
Mean ± StD (1-) [m] | RMSE [m] | |||||
---|---|---|---|---|---|---|
Device | Inc. [%] | East | North | Up | 2D | 3D |
GP7 | 100.00 | 1.734 ± 1.738 | 3.069 | 4.390 | ||
ON2 | 100.00 | 0.166 ± 2.286 | 0.881 ± 2.121 | 3.244 | 4.344 | |
ON2 | 100.00 | 0.180 ± 2.241 | 1.829 ± 4.352 | 5.228 | 9.905 | |
A52 | — | — | — | — | — | — |
X11 | 100.00 | 0.593 ± 3.188 | 3.145 ± 4.068 | 6.078 | 8.394 |
Freq. [%] | Constellations [%] | |||||||
---|---|---|---|---|---|---|---|---|
Device | L1 | L5 | G | R | E | C | I | J |
GP7 | 78.2 | 80.7 | 88.9 | 90.0 | 60.0 | 83.3 | — | — |
GPW | 82.6 | — | 66.7 | 100.0 | 40.0 | 33.3 | — | — |
ON2 | 106.5 | 111.5 | 122.2 | 100.0 | 110.0 | 100.0 | — | — |
A52 | 93.4 | — | 66.7 | 90.0 | 50.0 | 50.0 | — | — |
X11 | 108.6 | 111.5 | 122.2 | 100.0 | 110.0 | 104.2 | — | — |
Device | Inc. [%] | Mean [m] | StD [m] | Min. [m] | Max. [m] | |
---|---|---|---|---|---|---|
Pseudorange | GP7 | 99.95% | 0.141 | 12.020 | 154.113 | |
ON2 | 99.73% | 0.168 | 14.831 | 274.383 | ||
ON2 | 99.87% | 0.064 | 5.215 | 115.495 | ||
A52 | 99.98% | 0.054 | 13.572 | 176.996 | ||
X11 | 99.81% | 0.603 | 25.354 | 271.240 |
Device | Inc. [%] | Mean [m] | StD [m] | Min. [m] | Max. [m] | |
---|---|---|---|---|---|---|
Doppler | GP7 | 99.91% | 0.085 | 0.610 | 29.231 | |
ON2 | 100.00% | 0.088 | 0.395 | 6.730 | ||
ON2 | 100.00% | 0.055 | 0.958 | 22.330 | ||
A52 | 100.00% | 0.077 | 0.755 | 6.299 | ||
X11 | 100.00% | 0.064 | 0.846 | 25.563 |
Device | Inc. [%] | Mean [m] | StD [m] | Min. [m] | Max. [m] | |
---|---|---|---|---|---|---|
Phase | GP7 | 98.97% | 0.090 | 1.127 | 29.975 | |
ON2 | 99.89% | 0.110 | 0.895 | 27.966 | ||
ON2 | 98.92% | 0.065 | 0.888 | 28.932 | ||
A52 | 100.00% | 0.000 | 0.000 | 0.000 | 0.000 | |
X11 | 99.10% | 0.079 | 0.931 | 29.919 |
Device | Inc. [%] | Mean [dB] | StD [dB] | Min. [dB] | Max. [dB] | |
---|---|---|---|---|---|---|
C/n0 | GP7 | 100.00% | 33.8 | 7.4 | 10.6 | 52.7 |
ON2 | 100.00% | 27.8 | 6.7 | 12.1 | 45.3 | |
ON2 | 100.00% | 25.6 | 10.5 | 0.0 | 48.8 | |
A52 | 100.00% | 42.5 | 6.1 | 19.3 | 58.7 | |
X11 | 100.00% | 29.2 | 7.1 | 5.0 | 47.8 |
References
- Zhu, F.; Tao, X.; Liu, W.; Shi, X.; Wang, F.; Zhang, X. Walker: Continuous and Precise Navigation by Fusing GNSS and MEMS in Smartphone Chipsets for Pedestrians. Remote Sens. 2019, 11, 139. [Google Scholar] [CrossRef]
- Harke, K.; O’Keefe, K. Gyroscope Drift Estimation of a GPS/MEMSINS Smartphone Sensor Integration Navigation System for Kayaking. In Proceedings of the 35th International Technical Meeting of the Satellite Division of The Institute of Navigation (ION GNSS+ 2022), Denver, CO, USA, 19–23 September 2022; pp. 1413–1427. [Google Scholar]
- Garmin. Garmin Developers. Available online: https://developer.garmin.com/connect-iq/overview/ (accessed on 12 September 2023).
- Fitbit. Fitbit Developers. Available online: https://dev.fitbit.com/ (accessed on 12 September 2023).
- APROPOS. Approximate Computing for Power and Energy Optimisation. Available online: https://projects.tuni.fi/apropos/ (accessed on 12 September 2023).
- LEDSOL. Enabling Clean and Sustainable Water through Smart UV/LED Disinfection and SOLar Energy Utilization. Available online: https://www.leap-re.eu/ledsol/ (accessed on 12 September 2023).
- Grenier, A.; Lohan, E.S.; Ometov, A.; Nurmi, J. Multi-Sensor Dataset From Android Smart Devices; Zenodo: Geneva, Switzerland, 2023. [Google Scholar] [CrossRef]
- EUSPA. World’s First Dual-Frequency GNSS Smartphone Hits the Market. Available online: https://www.euspa.europa.eu/newsroom/news/world-s-first-dual-frequency-gnss-smartphone-hits-market (accessed on 12 September 2023).
- Subirana, J.; Zornoza, J.; Hernández-Pajares, M. GNSS Data Processing Volume I: Fundamentals and Algorithms; ESA Communications; European Space Agency: Paris, France, 2013. [Google Scholar]
- Grenier, A. Development of a GNSS Positioning Application under Android OS Using GALILEO Signals. Master’s Thesis, Ecole Nationale de Sciences Geographiques, Champs-sur-Marne, France, 2019. [Google Scholar]
- Zangenehnejad, F.; Gao, Y. GNSS Smartphones Positioning: Advances, Challenges, Opportunities, and Future Perspectives. Satell. Navig. 2021, 2, 1–23. [Google Scholar] [CrossRef] [PubMed]
- Paziewski, J.; Fortunato, M.; Mazzoni, A.; Odolinski, R. An Analysis of Multi-GNSS Observations Tracked by Recent Android Smartphones and Smartphone-Only Relative Positioning Results. Measurement 2021, 175, 109162. [Google Scholar] [CrossRef]
- Magiera, W.; Vārna, I.; Mitrofanovs, I.; Silabrieds, G.; Krawczyk, A.; Skorupa, B.; Apollo, M.; Maciuk, K. Accuracy of Code GNSS Receivers under Various Conditions. Remote Sens. 2022, 14, 2615. [Google Scholar] [CrossRef]
- Wen, Q.; Geng, J.; Li, G.; Guo, J. Precise Point Positioning with Ambiguity Resolution Using an External Survey-Grade Antenna Enhanced Dual-Frequency Android GNSS Data. Measurement 2020, 157, 107634. [Google Scholar] [CrossRef]
- Wang, L.; Li, Z.; Wang, N.; Wang, Z. Real-Time GNSS Precise Point Positioning for Low-Cost Smart Devices. GPS Solut. 2021, 25, 1–13. [Google Scholar] [CrossRef]
- Li, M.; Huang, G.; Wang, L.; Xie, W. BDS/GPS/Galileo Precise Point Positioning Performance Analysis of Android Smartphones Based on Real-Time Stream Data. Remote Sens. 2023, 15, 2983. [Google Scholar] [CrossRef]
- Fortunato, M.; Ravanelli, M.; Mazzoni, A. Real-Time Geophysical Applications with Android GNSS Raw Measurements. Remote Sens. 2019, 11, 2113. [Google Scholar] [CrossRef]
- Stauffer, R.; Hohensinn, R.; Herrera-Pinzón, I.D.; Pan, Y.; Moeller, G.; Kłopotek, G.; Soja, B.; Brockmann, E.; Rothacher, M. Estimation of Tropospheric Parameters with GNSS Smartphones in a Differential Approach. Meas. Sci. Technol. 2023, 34, 095126. [Google Scholar] [CrossRef]
- Lohan, E.S.; Bierwirth, K.; Kodom, T.; Ganciu, M.; Lebik, H.; Elhadi, R.; Cramariuc, O.; Mocanu, I. Standalone Solutions for Clean and Sustainable Water Access in Africa through Smart UV/LED Disinfection, Solar Energy Utilization, and Wireless Positioning Support. IEEE Access 2023, 11, 81882–81899. [Google Scholar] [CrossRef]
- Lohan, E.S.; Kodom, T.; Lebik, H.; Grenier, A.; Zhang, X.; Cramariuc, O.; Mocanu, I.; Bierwirth, K.; Nurmi, J. Raw GNSS Data Analysis for the LEDSOL Project—Preliminary Results and Way Ahead. In Proceedings of the WiP in Hardware and Software for Location Computation (WIPHAL 2023), Castellon, Spain, 6–8 June 2023; Volume 3434. [Google Scholar]
- Lo, S.; Chen, Y.H.; Akos, D.; Cotts, B.; Miralles, D. Test of Crowdsourced Smartphones Measurements to Detect GNSS Spoofing and Other Disruptions. In Proceedings of the International Technical Meeting of The Institute of Navigation, Reston, VA, USA, 28–31 January 2019; pp. 373–388. [Google Scholar]
- Spens, N.; Lee, D.K.; Nedelkov, F.; Akos, D. Detecting GNSS Jamming and Spoofing on Android Devices. Navig. J. Inst. Navig. 2022, 69, navi.537. [Google Scholar] [CrossRef]
- Orendorff, D.; Van Diggelen, F.; Elliott, J.; Fu, M.; Khider, M.; Dane, S. Google Smartphone Decimeter Challenge. 2021. Available online: https://kaggle.com/competitions/google-smartphone-decimeter-challenge (accessed on 21 November 2023).
- Howard, A.; Chow, A.; Julian, B.; Orendorff, D.; Fu, M.; Khider, M.; Dane, S. Google Smartphone Decimeter Challenge. 2022. Available online: https://kaggle.com/competitions/smartphone-decimeter-2022 (accessed on 21 November 2023).
- Fu, G.M.; Khider, M.; van Diggelen, F. Android Raw GNSS Measurement Datasets for Precise Positioning. In Proceedings of the 33rd International Technical Meeting of the Satellite Division of the Institute of Navigation (ION GNSS+ 2020), Online, 22–25 September 2020; pp. 1925–1937. [Google Scholar]
- EUSPA. GNSS Raw Measurements Task Force. 2021. Available online: https://www.euspa.europa.eu/euspace-applications/gnss-raw-measurements/gnss-raw-measurements-task-force (accessed on 21 November 2023).
- Reeder, B.; David, A. Health at Hand: A Systematic Review of Smart Watch Uses for Health and Wellness. J. Biomed. Inform. 2016, 63, 269–276. [Google Scholar] [CrossRef] [PubMed]
- Jat, A.S.; Grønli, T.M. Smart Watch for Smart Health Monitoring: A Literature Review. In Proceedings of the International Work-Conference on Bioinformatics and Biomedical Engineering, Maspalomas, Spain, 27–30 June 2022; Springer: Cham, Switzerland, 2022; pp. 256–268. [Google Scholar]
- Hernández-Orallo, E.; Manzoni, P.; Calafate, C.T.; Cano, J.C. Evaluating How Smartphone Contact Tracing Technology Can Reduce the Spread of Infectious Diseases: The Case of COVID-19. IEEE Access 2020, 8, 99083–99097. [Google Scholar] [CrossRef] [PubMed]
- Site, A.; Lohan, E.S.; Jolanki, O.; Valkama, O.; Hernandez, R.R.; Latikka, R.; Alekseeva, D.; Vasudevan, S.; Afolaranmi, S.; Ometov, A.; et al. Managing Perceived Loneliness and Social-Isolation Levels for Older Adults: A Survey with Focus on Wearables-Based Solutions. Sensors 2022, 22, 1108. [Google Scholar] [CrossRef] [PubMed]
- Broadcom. Broadcom Introduces Second Generation Dual-Frequency GNSS. Available online: https://www.broadcom.com/blog/broadcom-introduces-second-generati (accessed on 12 September 2023).
- Barbeau, S. Crowdsourcing GNSS Features of Android Devices. 2021. Available online: https://barbeau.medium.com/crowdsourcing-gnss-capabilities-of-android-devices-d4228645cf25 (accessed on 21 November 2023).
- Google. Google Pixel Watch. Available online: https://store.google.com/us/product/google_pixel_watch?hl=en-US (accessed on 12 September 2023).
- Karki, B.; Won, M. Characterizing Power Consumption of Dual-Frequency GNSS of Smartphone. In Proceedings of the IEEE Global Communications Conference, Taipei, Taiwan, 7–11 December 2020; pp. 1–6. [Google Scholar]
- Google. GPS Measurement Tools Github. Available online: https://github.com/google/gps-measurement-tools (accessed on 12 September 2023).
- University, T. Mimir Github. Available online: https://github.com/agrenier-gnss/mimir (accessed on 12 September 2023).
- University, T. Mimir Analyzer Github. Available online: https://github.com/agrenier-gnss/MimirAnalyzer (accessed on 12 September 2023).
- Takasu, T. PPP Ambiguity Resolution Implementation in RTKLIB. Geophys. J. Int. 2013, 194, 1441–1454. [Google Scholar]
- Ferreira, D.L.; Nunes, B.A.A.; Campos, C.A.V.; Obraczka, K. User Community Identification through Fine-Grained Mobility Records for Smart City Applications. IEEE Trans. Intell. Transp. Syst. 2022, 23, 4387–4401. [Google Scholar] [CrossRef]
- Fu, H.; Kone, Y.; Renaudin, V.; Zhu, N. A Survey on Artificial Intelligence for Pedestrian Navigation with Wearable Inertial Sensors. In Proceedings of the IEEE 12th International Conference on Indoor Positioning and Indoor Navigation (IPIN), Beijing, China, 5–8 September 2022; pp. 1–8. [Google Scholar]
- Fu, H.; Bonis, T.; Renaudin, V.; Zhu, N. A Computer Vision Approach for Pedestrian Walking Direction Estimation with Wearable Inertial Sensors: PatternNet. In Proceedings of the 2023 IEEE/ION Position, Location and Navigation Symposium (PLANS), Monterey, CA, USA, 24–27 April 2023; pp. 691–699. [Google Scholar]
- Zhu, N.; Bouronopoulos, A.; Leduc, T.; Servières, M.; Renaudin, V. Evaluation of the Human Body Mask Effects on GNSS Wearable Devices for Outdoor Pedestrian Navigation Using Fisheye Sky Views. In Proceedings of the 2023 IEEE/ION Position, Location and Navigation Symposium (PLANS), Monterey, CA, USA, 24–27 April 2023; pp. 841–850. [Google Scholar]
- Google. Android Developers. Available online: https://developer.android.com/ (accessed on 12 September 2023).
- EUSPA. Using GNSS Raw Measurements on Android Devices; Technical Report; European Agency for the Space Program: Paris, France, 2019. [Google Scholar]
- Perul, J.; Renaudin, V. HEAD: SmootH Estimation of wAlking Direction with a handheld device embedding inertial, GNSS, and magnetometer sensors. Navigation 2020, 67, 713–726. [Google Scholar] [CrossRef]
- Chiang, K.W.; Chang, H.W.; Li, Y.H.; Tsai, G.J.; Tseng, C.L.; Tien, Y.C.; Hsu, P.C. Assessment for INS/GNSS/Odometer/Barometer Integration in Loosely Coupled and Tightly Coupled Scheme in a GNSS-degraded Environment. IEEE Sens. J. 2019, 20, 3057–3069. [Google Scholar] [CrossRef]
- Romero, I. RINEX: The Receiver Independent Exchange Format Version 3.05; ESA/ESOC/Navigation Support Office: Darmstadt, Germany, 2020. [Google Scholar]
- Massarweh, L.; Fortunato, M.; Gioia, C. Assessment of Real-Time Multipath Detection with Android Raw GNSS Measurements by Using a Xiaomi Mi 8 Smartphone. In Proceedings of the IEEE/ION Position, Location and Navigation Symposium (PLANS), Portland, OR, USA, 20–23 April 2020; pp. 1111–1122. [Google Scholar]
- Verheyde, T.; Blais, A.; Macabiau, C.; Marmet, F.X. Analyzing Android GNSS Raw Measurements Flags Detection Mechanisms for Collaborative Positioning in Urban Environment. In Proceedings of the International Conference on Localization and GNSS (ICL-GNSS), IEEE, Tampere, Finland, 2–4 June 2020; pp. 1–6. [Google Scholar]
- Grenier, A.; Lohan, E.S.; Ometov, A.; Nurmi, J. A Survey on Low-Power GNSS. IEEE Commun. Surv. Tutor. 2023, 25, 1482–1509. [Google Scholar] [CrossRef]
Acronym | Device Name | Type | Release | Android (API) | GNSS Chip | Frequencies | Phase | Navigation Message |
---|---|---|---|---|---|---|---|---|
GP7 | Google Pixel 7 | Phone | October 2022 | Android 13 (API 33) | Broadcom BCM4776 | L1, L5 | ✓ | ✓ |
GPW | Google Pixel Watch | Watch | October 2022 | WearOS 3.5 (API 30) | Broadcom BCM4776 | L1 | ✓ | ✓ |
ON2 | OnePlus Nord 2 5G | Phone | July 2021 | Android 12 (API 31) | Unknown | L1, L5 | ✓ | ✓ |
A52 | Samsung A52 5G | Phone | March 2021 | Android 13 (API 33) | Qualcomm SD 720G | L1 | ✗ | ✗ |
X11 | Xiaomi 11T | Phone | September 2021 | Android 12 (API 31) | Unknown | L1, L5 | ✓ | ✗ |
Motion | Environment | Duration | Device Carrying Mode | |
---|---|---|---|---|
S1 | Static | Open-sky | 45 min | Placed on tripod |
S2 | Pedestrian | Urban canyoning | 10 min | In right-hand, texting * |
S3 | Pedestrian | Suburban area | 30 min | In backpack, pocket * |
S4 | Pedestrian | Forest & lake | 30 min | In backpack, pocket * |
Scenario | Date | Device | GNSS | INS | Magnetometer | Barometer |
---|---|---|---|---|---|---|
S1 | 17.02.2023 | GP7 | ✓ | ✓ | ✓ | ✗ |
03.03.2023 | ON2 | ✓ | ✓ | ✓ | ✗ | |
03.03.2023 | X11 | ✓ | ✓ | ✓ | ✗ | |
17.03.2023 | A52 | ✓ | ✓ | ✓ | ✗ | |
14.08.2023 | GPW | ✓ | ✓ | ✓ | ✓ | |
S2 | 01.08.2023 | GP7 | ✓ | ✓ | ✓ | ✓ |
01.08.2023 | GPW | ✓ | ✓ | ✓ | ✓ | |
01.08.2023 | X11 | ✓ | ✓ | ✓ | ✓ | |
11.08.2023 | A52 | ✓ | ✓ | ✓ | ✓ | |
11.08.2023 | ON2 | ✓ | ✓ | ✓ | ✓ | |
S3 | GP7 | ✓ | ✓ | ✓ | ✓ | |
ON2 | ✓ | ✓ | ✓ | ✓ | ||
11.08.2023 | X11 | ✓ | ✓ | ✓ | ✓ | |
A52 | ✓ | ✓ | ✓ | ✓ | ||
GPW | ✓ | ✗ | ✗ | ✗ | ||
S4 | GP7 | ✓ | ✓ | ✓ | ✓ | |
ON2 | ✓ | ✓ | ✓ | ✓ | ||
11.08.2023 | X11 | ✓ | ✓ | ✓ | ✓ | |
A52 | ✓ | ✓ | ✓ | ✓ | ||
GPW | ✓ | ✓ | ✓ | ✓ |
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. |
© 2023 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).
Share and Cite
Grenier, A.; Lohan, E.S.; Ometov, A.; Nurmi, J. Towards Smarter Positioning through Analyzing Raw GNSS and Multi-Sensor Data from Android Devices: A Dataset and an Open-Source Application. Electronics 2023, 12, 4781. https://doi.org/10.3390/electronics12234781
Grenier A, Lohan ES, Ometov A, Nurmi J. Towards Smarter Positioning through Analyzing Raw GNSS and Multi-Sensor Data from Android Devices: A Dataset and an Open-Source Application. Electronics. 2023; 12(23):4781. https://doi.org/10.3390/electronics12234781
Chicago/Turabian StyleGrenier, Antoine, Elena Simona Lohan, Aleksandr Ometov, and Jari Nurmi. 2023. "Towards Smarter Positioning through Analyzing Raw GNSS and Multi-Sensor Data from Android Devices: A Dataset and an Open-Source Application" Electronics 12, no. 23: 4781. https://doi.org/10.3390/electronics12234781
APA StyleGrenier, A., Lohan, E. S., Ometov, A., & Nurmi, J. (2023). Towards Smarter Positioning through Analyzing Raw GNSS and Multi-Sensor Data from Android Devices: A Dataset and an Open-Source Application. Electronics, 12(23), 4781. https://doi.org/10.3390/electronics12234781