bfabiszewski/ulogger-android

geoid height correction is missing

Opened this issue · 5 comments

As far as I can see height data is systematically wrong.
In my location I get heights which are about 40 m too high for example but as the geoid is different on each point of the earth it might be a totally different offset at your location.

This is probably due to the fact that geoid correction is missing.
See for example this thread: Akaflieg-Freiburg/enroute#28

A simple example to do pretty good geoid correction is at geoid.py which uses the EGM96 gridded data WW15MGH.DAC and interpolates with splines. Btw. this file and method is for example also used for the geoid correction osmand.

Thanks for the info!
I was thinking about implementing something like this.
But not here in the logger app, but in the track viewer part.

thanks, that's probably ok too. Would this also apply to gpx exports from the server?
Btw. if implemented in the app it should be possible with NMEA sentences GGA ($GPGGA) from the GPS device too, see
https://de.wikipedia.org/w/index.php?title=NMEA_0183
http://www.nmea.de/nmea0183datensaetze.html

This is yet to be seen. Could probably also be applied while exporting data.
The development of the server part is however slow. I need to do a major rewrite to modernize and cleanup the code first before I implement any new features. But I am still short of time.

I am trying to keep this logger as simple as possible. There are many other GPS trackers with many more features. I just focus on battery life and reliability. I don't access any extended data from GPS device, generally I am fine with coordinates, altitude is just a bonus. This is usually enough to simply map outdoor activities.

@bfabiszewski what is your strategy to modernize the server part?

In the meantime, is there any simple solution to do this correction at PC for an exported gpx?
Something like geoid_correct.py in.gpx out.gpx