Altitude returned by GPS API is off by 50 m with Rhodes 5.0.25

// Expert user has replied.
T Thierry Leloup 2 years 11 months ago
4 3 0

Hello everybody,

We tested the GPS API with Rhodes 5.0.25 and it is working alright for position (latitude/longitude) but the altitude is systematically off by 50 m.
We compared the value returned by the Rhodes API and the one returned by GPS Test, a free GPS application for Android.
In our case, GPS test indicates an altitude of 440 m (which is also the value indicated by Google Map) when Rhodes API systematically returns an altitude of 490 m.
We have tested on several Android platforms with different OS version (Nexus 7, Notes 3 and Acer Liquid Z500).

FYI, we implemented the recommended patch for iOs () and it is working alright, i.e. no altitude difference between Rhodes and another GPS application, after we implemented some modification on top of this recommended patch ().

Question : does anyone face the same kind of problem with the altitude on Android platforms ?

Thanks,
Thierry

Please register or login to post a reply

3 Replies

R Robert Galvin

Moving to RhoMobile space for move coverage.

Under the covers for Android we are using the Android.location.location class

What does your Android manifest look like, are you using coarse or fine accuracy:

V Vincent Lagneau

Hi Rob,

Our Android Manifest, generated by Rhodes 5.0.25, has these two location permissions :

 
 

So the problem might come from the precision of the built-in GPS receivers of our devices, as Jon said.

I'll investigate with different GPS applications to find possible differences between their values and the Rhodes ones. I'll also take into account the advice given by Garmin that Jon linked.

I'll give you an update if I find anything positive.

Thank you both for your help.

J Jon Tara

Realize that altitude is quite a bit more difficult with GPS than position. It will depend on the quality of the receiver, how many satellites are used, etc. (Better GPS receivers receive from more satellites at once. Almost no phone has the best kind of receiver due to space and cost limitations.)

Android devices vary widely in their onboard sensors. iOS has less variability, only a very few models.

Really, fine-grained altitude, for example, to detect which floor of a building you are on, is not practical, even with the best receiver. Note that newer devices (including iPhone 6, 6+ and some Androids) have an air-pressure sensor that might be more useful than this. You would have to compare to current weather report. At least it will give you relative altitude as the device moves.

Even Garmin suggest that you should not expect better than +- 400ft (120m) vertical accuracy.

That said, if you think there is some consistent, systemic issue, you should report it as an Issue on Github. Perhaps it is a rounding difference between Rhodes and popular apps. Did you try other popular apps? Maybe they are applying a heuristic.

I don't think I would sweat a difference of that little. You just cannot pinpoint vertical with GPS. If you know the device is at ground level, the best approach is to look-up the elevation in a map database. Otherwise, I'd find another strategy such as air pressure (if available on device) or locator beacons installed in the location (e.g. to identify which floor).

How accurate is the GPS elevation reading?

CONTACT
Can’t find what you’re looking for?