Our Latest News and Events

Data Quality from the Dual Frequency Xiaomi MI 8


31 July 2018

Within the last month an exciting firmware update (MIUI V9.5.11.0 OEACNFA) was released for the Xiaomi MI 8, the first Smartphone enabled with dual frequency GNSS. The Android raw measurements API is now enabled, allowing us to delve deeper into the new dual frequency GNSS chipset.

The Xiaomi Mi 8, embedded with a Broadcom BCM47755 chip, endeavours to revolutionise the GNSS mass-market world, providing access to the single frequency (L1) GPS, Galileo and GLONASS and Beidou, as well as a second frequency L5/E5a for GPS and Galileo respectively. The availability of this second frequency allows improved signal tracking and additional mitigation of errors, such as ionospheric effects which prevent the achievement of high accuracy with single-frequency receivers.

This sequel to our post of 6 July explores the quality of the raw measurements from the Xiaomi Mi-8, the first Smartphone enabled with dual frequency GNSS.  In our initial post we described the operational performance of the in-built positioning engine and, whilst it gave positions twice as good as its single frequency equivalent, we cannot compare to a dedicated survey grade receiver with results 3.5 times worse in terms of accuracy. 

art2 e 1smFigure 1 Satellites tracked by the Xiaomi Mi 8It is important to have realistic expectations on the quality of the measurements and positions.  A Smartphone is a mass market communications and entertainment device that, in some cases, also contains a GNSS receiver.  The receiver is contained within a plethora of electronics and will be subjected to continuous electrical and RF interferences.  Further confounding the situation is the mass market city environment in which we live and the way the devices are carried, as the human body absorbs, attenuates and reflects GNSS signals. A Smartphone is not an ideal host for a GNSS receiver.

This work is part of the FLAMINGO (www.FLAMINGOgnss.com) initiative, which aims to facilitate smartphones and IoT devices to achieve accuracies below 50 cm by using Android raw GNSS measurements and advances in GNSS hardware.

 As a first part of our analysis into the capabilities of this new smartphone generation, we evaluate the performance and availability of the receiver’s GNSS observations. The analyses are performed with 30 minutes of data collected in a static scenario on 13 July 2018.  The single most important feature for enabling high accuracy positioning techniques in a mass-market environment is the availability of satellites and therefore the use of multiple GNSS constellations. We first consider the number of GPS, GLONASS and Galileo satellites that provide at least a single frequency (~L1) measurement through the raw measurements API. These results are presented in Figure 1 and show, at times, 26 satellites being tracked (and there has since been a launch of a further 4 Galileo satellites on 25th of July 2018).

art2 e 2smFigures 2,3,4 Analysis of GNSS signals (enlarge)art2 e 3smart2 e 4sm An interesting analysis regards the comparison between the number of satellites tracked from the location API reported in the NMEA file and the one decoded from the GNSS raw measurements API. Since the number of satellites tracked is based on the internal viewing mask and on the almanac, not all of them are used to compute the solution. For the comparison with the number of satellites tracked and decoded by the GNSS raw measurements API has to be carried out with the number of satellites used to compute the internal position-velocity-time (PVT) solution. We have split the constellations into different plots with Figures 2, 3 and 4 showing this analysis for GPS, GLONASS and Galileo respectively.


This analysis shows that the number of satellites used to compute the internal PVT solution is mostly higher or equal to the number of satellites available from the API for Galileo and GLONASS. On the other hand, the satellites used internally from the phone are less numerous than those decoded through the GNSS raw measurements API. The difference is always limited to one or two satellites.

Considering the availability of the second frequency L5/E5a observations, Figure 5 shows that the GNSS chipset is not able to provide the observations for all satellites for which these should be available, the GPS Block IIF and Galileo satellites. The availability of dual frequency observations is limited between 5 and 8 satellites per epoch (Figure 5).

art2 e 5smFigure 5 Availability of the 2nd Frequency

art2 e 2smFigures 6,7 GPS/Galileo SNRart2 e 7sm The signal-to-noise ratio (SNR), or the signal strength, provides an indication to the reliability of GNSS observations from a smartphone (Figures 6 and 7). The SNR is lower in the smartphone compared to both low cost and geodetic class receivers. This is due to the poor GNSS Antenna on these devices which is the main impediment to high accuracy positioning. With a geodetic receiver and antenna, we expect the L5/E5a to be approximately 5 and 3 dBHz than the L1/E1 measurements. For the Smartphone we are seeing that L1 and E1 are considerably stronger than L5/E5a, almost certainly due to the antenna.  GPS L1 is an average 1.6 dBHz stronger than L5 and Galileo E1 3.12 dBHz stronger than E5a. 


The SNR also indicates the level of noise present in the measurement, but alone the value is not meaningful. For this reason, an SNR threshold in combination with an appropriate cut-off angle should be used to avoid poor observations.


Figures 6 and 7 shows that with a reasonable value for the SNR threshold, e.g. 30 dbHz, a significant number of satellites will not be removed. This reduces the already low availability of dual frequency observations and prevents the possibility of obtaining high accuracy positioning. Thankfully, the recent launch of four Galileo satellites on the 25th of July 2018 will reduce this concern, increasing the number of possible dual-frequency observations.

art2 e 2smFigure 8 Azimuth and elevation of the satellites used in this analysis Focusing on the available observations, we now consider the pseudorange and carrier-phase raw measurements. Satellites G02, G25, G26, G29, E03, E12, R13 and R05 (G=GPS, E=Galileo, R=GLONASS), as in Figure 8, are chosen to consider observations at a spread of azimuth and elevations. The pseudorange noise is defined as the Root Mean Square Error (RMSE) between the measured and interpolated code observations. The interpolated value is calculated using a mobile average of the pseudorange within a time window of 20 seconds.

The RMSE obtained for pseudoranges on the L1/E1 frequency are shown in Figure 9. These results vary according to the satellite’s elevation, where the higher the satellite, the lower the noise. Furthermore, comparing satellites E03 and G02, Galileo signals appear to have a lower noise. GLONASS satellites, instead, shows a significant higher noise with respect to the other constellations.

art2 e 2smFigures 9,10 RMSE for pseudorangesart2 e 7sm

The benefit of using the L5/E5a frequency is evident from considering the RMSE of the pseudoranges, as in Figure 10. The higher values observed in the Galileo satellites reflects, once again, the effects of elevation and the SNR, as illustrated in Figures 11 and 12.

Considering now the carrier-phase observations, the results are also encouraging. Figure 13 and  14 illustrate the carrier-phase RMSE evaluated as in the case of the pseudorange, and, as expected, is lower.

art2 e 2smFigures 11,12 SNR vs Elevationart2 e 7sm art2 e 2smFigures 13,14 RMSE for carrier-phaseart2 e 7sm


As demonstrated by this analysis, the Xiaomi Mi 8 presents an exciting milestone to achieving higher accuracy positioning in mobile devices. However, considering the issues associated with the high SNR, still some challenges lie ahead.

Devices that produce the raw GNSS measurements will spawn new applications if the features become utilised by developers.  NSL have already mentored Android application developers within major hackathons and outlined the concept of FLAMINGO with the potential for improved performance of the Smartphone's location engine. Important to these 250+ non-GNSS savvy users is the improved applied accuracy (ie related to other Smartphone sensors, captured and mapped features rather than an "absolute" accuracy) so long as there is no deterioration in availability.  They expect higher accuracy positions as quick (actually quicker!) as they get positions now and this itself is a major challenge to PPP and RTK position algorithms.

A third post will follow that will examine the performance of positioning that can be achieved using PPP and RTK with Smartphone data and the improvements (or otherwise) from using the second frequency afforded by the Xiaomi Mi-8. 


Update 03/08/2018: Further analysis executed on the carrier phase observations collected from Xiaomi Mi 8 has led to an update of the article's initial conclusions. The carrier phase is not affected by duty cycles, and so the article has been amended.





by Marco Fortunato, NSL

6 July 2018

Xiaomi-Mi-8-696x435Figure 1 Xiaomi-Mi-8

During May 2018, the GNSS community waited with bated breath for the release of the first Android dual frequency smartphone, the Xiaomi MI 8, finally seeing its launch on the last day of that month. This new generation of mobile devices is embedded with a Broadcom BCM47755 chip, which can record GNSS signals on both the L1/E1 and L5/E5 frequencies.

This device is an important stepping stone to the revolution that is sweeping the world of GNSS mass-market receivers, which are responding to the newly available signals of Galileo and GPS that allow improved positioning and signal tracking. Google has even released a new Android GNSS Raw Measurement API that is available on some Smartphones providing access to the embedded receivers’ raw data that allows the creation of the traditional GNSS measurements of pseudorange and carrier phase. The FLAMINGO (www.FLAMINGOgnss.com) initiative is championing this revolution with a consortium of Europe's top space companies. Utilising Android raw GNSS measurements and advances in GNSS hardware, systems are being developed for smartphones and IOT to achieve positioning under 50 cm.

 Whilst the Google API is not yet available for dual frequency mobile devices, the performance of Xiaomi MI 8 may still be assessed using the logged NMEA data files, produced from internal position-velocity-time (PVT) calculations. To evaluate the capabilities of the Xiaomi MI 8, we compare the accuracy of the internal PVT solution to that of a Samsung S8, embedded with the older single frequency Broadcom 4774 chipset, and from a geodetic class GNSS receiver (Septentrio PolaRx5e). These devices are placed in a static scenario for a period of 10 minutes.


xiaomiFig1SmFigure 2 Scatter plot (enlarge)

Figure 2 shows the position scatter in a local reference frame for each device. The origin is fixed at the Ground Control Point (GCP), graphically representing the accuracy of the distance from the origin. An R95, i.e. the radius containing 95% of solutions, is presented for each dataset in order to illustrate the GNSS precision.

Of course, the highest accuracy and precision is achieved by the Septentrio PolaRex5e. Considering the mass-market devices, the GNSS dual frequency chipset, as stated by Broadcom, improves both accuracy and precision. This is clearly presented in the figure. The horizontal precision, for example, almost halves: decreasing from 4.92 to 2.75 is observed in the R95. The overall accuracy is presented in Figure 3, where the Root Mean Square Error (RMSE) is considered for the East, North and Up directions. Calculations are made for each individual epoch, with reference to the GCP. These results highlight the significant improvements obtained by the new chipset in the vertical component: a reduction from 12.63 m to 5.11 m is observed between the Samsung S8 and Xiaomi MI 8 respectively. As expected, the geodetic class receiver is still far superior to the performance of both smartphone device. The lower RMSE in the N direction for the Xiaomi MI 8 originates from the greater, with respect to the Septentrio’s solutions, standard deviation of the internal PVT results. This leads to a different mean distance from the precise coordinates.



xiaomiFig1SmFigure 3 RMSE in a local reference system for the dataset collected from Septentrio PolaRx5e, Xiaomi Mi 8 and Samsung S8

A test was also performed in a dynamic scenario in order to evaluate the improvements that can be obtained in real-time navigation. Measurements were taken by a Samsung S8 and Xiaomi MI 8, placed in the pocket of a cyclist’s backpack for 10 minutes.

Figure 4 and 5 illustrate results in two slightly different environments. The pink and white markers represent the Samsung S8 and Xiaomi MI 8 respectively.


XiaomiGig3smFigure 4 (enlarge)

xiaomiFig4SmFigure 5 (enlarge)


Figure 4 demonstrates that, in a slightly closed environment (with proximity to buildings), the Samsung S8 provides more reliable results. Alternatively, in a more open environment (Figure 5), the track reconstructed by the Xiaomi MI 8 is much more representative. This may highlight that the Xiaomi is placing more emphasis on the GNSS PVT solution than the Samsung S8 which may be placing more dependence on other sensors within its navigation solution. These results clearly illustrate the potential of dual frequency receivers. Eventually the Android raw measurements API will be made available for dual frequency smartphones, allowing a more comprehensive analysis. Currently, we can only catch glimpses of the potential of this new GNSS technology. The future will be exciting.






Vidal Ashkenazi receives his OBE from HRH Prince Charles

 16 June 2017

VAinvestitureSmProfessor Vidal Ashkenazi OBE

Professor Vidal Ashkenazi's contribution to British Science was formally recognised on Friday 16th June 2017 as he was awarded an OBE (Officer of the Most Excellent Order of the British Empire) by the HRH The Prince of Wales during an Investiture ceremony, at Buckingham Palace, London. 

Following a long and distinguished career as an academic in the University of Nottingham, Vidal founded NSL in 1998 and is currently our CEO.