[SOLVED] Insufficient GPS support -- MI 8 ( dipper)

i just installed /e/ on a new MI8, because this device was/is well known as the first consumer level device, which provides dual channel navigation capabilities.

but the practical results utilizing /e/ are more than disappointing!

analyzing the GPS support by “GPS test” and “GNSS compare” it becomes obvious, that the device doesn’t see/utilize/report Galileo and Baidu satellites at all!

the actual results are therefor more unreliable than the recorded tracks from a very simple MI A1, because those device uses much more satellites in practice.

looking for answers in the net, i found many reports, which show working Galilieo and Baidu reception on MI 8 devices even in case of lineageOS.

i really have no answer, what’s the reason for this behavior in /e/ and how to solve it!
maybe, someone else can give me an hint…

and just as side note:
before i flashed the /e/-image, i did install the most recent MIUI pie release…

edit: see also:
https://forum.xda-developers.com/mi-8/help/port-miui-10-gps-t3886805
https://forum.xda-developers.com/showpost.php?p=78255680&postcount=506

1 Like

I just tested on what you’ve been reporting with GPSTest app on my Mi 8 running e-0.7-p-2020021641501-dev-dipper

Here are some results…


…both screenshots indicate that Mi 8 at least sees Glonas, Galieo and Baido, even Japanese satelites.

What does it tell us?
Can you please give me some pointers on how to run tests for GPS dual frequency mode?

And btw here is my baseband version if that is of any help?? But I guess the GPS module is a separate module running a different firmware. However, there u go…

thanks for your test!

it’s really interesting! – in fact we use more or less the same /e/ installation and phone hardware, but the result looks completely different!

your output demonstrates, how it should work!

you receive signals from Galileo and Baidou satellites and the values in the third column indicate working dual channel utilization!

that’s exactly what i would like to see as well, but i have no idea, what i could do, to get closer to this behavior.

studding reports from LOS users i also saw some reports, where it worked, and others, which couldn’t find a solution to this issue.

could you please tell me, which MIUI was on your phone before you flashed /e/?
did you use the gps-module already with original software?

because of the really dangerous anti rollback mechanism of this device, i’m not able to experiment with different original firmware versions, but i would be really happy, if someone could tell me a possible solution for this issue.

but thanks again for your quick and very helpful response!

1 Like

Hi, great that it helped, a bit at least.
I bought the phone second hand. Also I used it with original Miui for a while, including gps, even updated to the latest Miui release until mid December 2019.
I understand your unfortunate situation and would like to help you as best i can.

just like @heartshapedbox i also think, this unpleasant behavior of the device could be related to the installed firmware. i therefore would really like to know, how you think about the necessity/usefulness/dangers of flashing more recent firmware images beside the /e/ system.

there are this ready made flashable firmware packages for xiaomi devices available:

https://forum.xda-developers.com/android/software/tool-xiaomi-flashable-firmware-creator-t3871311
https://xiaomifirmwareupdater.com/archive/firmware/dipper/

and i would most likely choose the “V11.0.6.0.PEAMIXM” package, because it represents the most recent “global” + “pie” firmware offer.

does this make sense at all or would i destroy may device by such an attempt?

up to now i just followed the more general advice, that we have to install an original vendor provided MIUI image befor we install or do a major release upgrade of /e/. and that’s, what i already did before i installed /e/ on this MI 8, i used the OTA capabilities of the phone to upgrade V11.0.6.0.PEAMIXM.

but do i still have to care about the firmware after installing /e/ over this vendor provided base?

i would be really glad, if someone more experienced concerning this kind of troubles and /e/ internals could tell us a little bit more about the best practice handling of this kind of issues resp. the usefulness of xiaomi firmware updates in particular.

Hi,

I posted some details about firmware levels and TrustZone here : https://gitlab.e.foundation/e/management/issues/476#note_27508
One of the links leads to a firmware update method (without installing Miui).

1 Like

thanks for this very useful insights and links!

i still need some time, before i’m able to grasp all the complexity! :wink:

Hi @smu44 can you please post the link to the guide directly :pray:, I could not find anything :frowning: , or if so the links were dead :skull: .

Hi @heartshapedbox,
The most interesting link is https://forum.xda-developers.com/mi-6/how-to/how-to-avoid-twrp-errors-related-to-t3692393 (just checked, working).
Where the author explains how to check your TrustZone (which is firmware-level related), and how to flash firmwares only :slight_smile:
Be careful with the script provided, use it only as an example ! Anyway the method seems quite reliable.
Honestly I didn’t try this method, as I only got one phone and use it for work :worried:
Where it gets complicated is to get the correct Miui version to download : you’ll have to find which TZ is ok for your /e/ level, then find which Miui version provides it …

1 Like

although i would also appreciate bettere resp. more recent firmware utilization in /e/, as it can be realized by tools like XiaomiFirmwareUpdater, i have to report another surprising change:

yesterday, when i was already downloading the original MIUI firmware again to test the device by utilizing its original software again, the phone was just running GPSTest like so many hours the two days before, suddenly something happened, and all the Galileo and Baidou satellites appeared! :slight_smile:

i have no rational explanation for this behavior, because the affected device and the GPS software was already running literaly for hours previously on the phone, but now it simply works!

the results resp. accuracy look really impressive and the RAW GNSS access opens a lot of interesting refinement capabilities…

1 Like

Reading the point from outside, it looks like the phone in your location was not getting all sat signals in the first two days (shadowing for some reason?); this resolved by itself.

hmm – it was receiving most of the GPS and Glonas satellites and at the same location i works now rather well and doesn’t take very long to locate signals from 20-30 sources, including Galileo and Baidou sats.

i think, it’s more likely, that it took so long, to collect enough data about the ephemerides and almanacs for the affected GNSS systems.

but that’s in fact better than asking for A-GPS support via SUPL by default. on some devices this is even done internally by the baseband chip over the air, which is completely hidden to the user and nevertheless leaks a lot of relevant information.

https://blog.wirelessmoves.com/2014/08/supl-reveals-my-identity-and-location-to-google.html

Anyhow: what happened is interesting and open for a learning lesson.
You [ @mash ] looks quite well informed about GPS matters; why not write a note about how GPS in smartphone runs and what may happen in an early phase, when starting data must be acquired?