Logiqx / gp3s-coros

GPS3S wishlist for future COROS firmware releases
Creative Commons Zero v1.0 Universal
1 stars 0 forks source link

Number of satellites is incorrect in FIT + GPX files #21

Open Logiqx opened 1 year ago

Logiqx commented 1 year ago

The windsurfing and speedsurfing modes include "sat" in the GPX exports, and a developer field called "Sat" in the FIT file.

Based on my observations, the satellite data does not appear to be correct in the windsurfing / speedsurfing exports.

I suspect the value has been acquired from the NMEA sentence $GPGSV because it does not reflect loss of signal. The $GPGSV sentence reports "satellites in view", not "satellites in use" which is what we require in the exports, so we know when the signals are lost.

The sats value in the exports typically averages around 12 or 13 (I've seen a max of 15), rarely changing and certainly not dropping to 0 when all signals are lost after a crash or submersion. The sats average of 12 or 13 also suggests that it represents the number of visible GPS-only satellites - i.e. excluding BeiDou, GLONASS, Galileo.

The number of "satellites in use" is available in the NMEA sentence $GPGGA (n.b. some chipsets output a max value of 12) and $GNGNS (max value of 99). If $GNGNS is not available then the $XXGSA sentences can be utilised which I have thoroughly documented at https://logiqx.github.io/gps-wizard/nmea/messages/gsa.html

Please can you check what is being done in the COROS firmware, and if using $GPGSV switch to using $GPGGA / $GNGNS / $XXGSA.

n.b. If present the $GNGNS sentence should be used in preference to $GPGGA (pre-dated multi-GNSS) since $GNGSS sometimes has a max value of 12. See thread for some background information.

ADDENDUM

Further evidence that the satellite counts are incorrect can be seen in the following charts. The spikes in HDOP are not accompanied by fewer satellites. One would normally expect spikes in HDOP to be accompanied by a drop in the number of satellites.