Page 1 of 1

Support for Dual Frequency GNSS on Android phones

Posted: Fri Oct 18, 2019 9:10 pm
by solbergen
Just tried using laptimer with my new phone, which features high precision Dual Frequency GNSS.
It tracks both E1/E5 Galileo, L1/L5 GPS, plus GLONASS and Beidou at the same time, for increased satellites and improved performance.

When using a GPStester, it shows i am seeing 20/26 satellites, whereas using laptimer i am only seeing 12/16. Precision is 3.8m vs ~12m (39ft).

Dual frequency GNSS is a feature that will come in more and more flagship phones (and will also be featured in many bluetooth GNSS devices to come), currently it is active on the following phones;

Samsung S10 series
Oneplus 7 Pro
Samsung Note 10 series
Asus Zenphone 6
Xiaomi Mi9T Pro / Redmi K20 Pro
ZTE Axon 10
Oppo reno 10
LG G8
Nubia Red Magic
Sony Xperia 1

The amount of work to support this is kind-of-unknown, but i would assume that it would be relatively simple?

Re: Support for Dual Frequency GNSS on Android phones

Posted: Sat Oct 19, 2019 10:20 am
by Harry
LapTimer ignores Galileo satellite information (GAGSV) currently. In case you want support, please create a log file with GPS/GLONASS Sensors traced and send it to me. Make sure you are outside when logging.

You can find instructions on how to send trace files in the FAQ section here on the forum.

Harry

Re: Support for Dual Frequency GNSS on Android phones

Posted: Sun Oct 20, 2019 4:36 pm
by Harry
Hello again,

Thanks for sending the log file. I discovered several items and fixed them for LapTimer v23.0.9:

1) GPS/Galileo/GLONASS satellite ids were delivered as local IDs and overlapped in parts (see your snapshot). This made LapTimer overwrite and drop satellites. v23.0.9 will map local IDs / PRNs to a global NMEA ID before doing any further processing. As an example, the Galileo #8 satellite will show up with id #308 and the GLONASS #8 satellite will show up as
2) Your device uses a u-blox 9 chipset using some non-standard NMEA extensions. v23.0.9 will cope with both the Standard and u-blox 9 specific extensions.
3) Your device delivers NMEA sentences GAGSV, GLGSV, GNGGA, GNGSA, GNRMC, GNVTG, GPDTM, GPGSV. All but the VTG and DTM sentences are used by LapTimer. VTG is redundant to other sentences and DTM is not required (local time information). For your reference, a good overview in NMEA sentences is available here: https://gpsd.gitlab.io/gpsd/NMEA.html
4) Finally, I found a bug that occurred for satellite IDs starting with a '0' digit.

- Harry

Re: Support for Dual Frequency GNSS on Android phones

Posted: Tue Apr 28, 2020 11:37 am
by bazza_c
What phone/device was this from. Looks like it was only delivering 1hz update rate in any case. I would prefer at least 5 or 10hz

Re: Support for Dual Frequency GNSS on Android phones

Posted: Sat Jul 11, 2020 12:13 pm
by solbergen
First of all; Thanks alot for enabling this feature Harald! This should benefit many many users, and will give a greatly improved experience!

This was originally from the Xiaomi MI9T Pro. I've since switched phones, but i think most cellphone gnss is 1hz...?

I am looking at using a external Ublox F9P gnss receiver later, and trying to integrate it with RTK basestation. This should be a seriously interesting proposition for harry's to work on - RTK enabled GNSS over BLE(Sending the corrections from cellphone to the BLE device) could provide for high HZ and atleast decimeter precision on the track. A company named Sapcorda is now starting to provide a worldwide RTK augmentation service with a new corrections transfer format instead of the old RTCMv2 messaging.