Air-pressure calibration

shushuk shared this idea 2 years ago
Collecting votes

As a mountainbiker I use altitude information intensely. Accurate information (current value, total uphill!) is essential. The most accurate altitude information is provided by an air pressure sensor, which is available in my Xperia Z3 compact (and other smartphones).

Currently the calibration of the actual altitude can be done in 2 ways (actually 3, but the following 2 are the most relevant):

1. Automatically (Altitude-Manager --> Air Pressure --> Automatic) by using GPS or(?) SRTM data.

2. Manually (Altitude-Manager --> Air Pressure --> Altitude) by defining an altitude an calibrating the sensor.

The big disadvantage when using #1 is, that imprecise GPS-data (SRTM had no influence in my tests) is used as a basis which has the effect that in case of recording a track the starting altitude is e.g. 200m instead of 400m, rising constantly as GPS-signal gets better and showing >150m uphill and more after seconds/minutes. This makes this setting useless for track recording.

#2 offers perfect values as soon as you have calibrated the air pressure in advance. Disadvantage here is that you have to do it manually with several clicks each time you activate gps or start a track recording (air pressure changes over time and todays values can be quite different from yesterdays...). This prevents also the usage of Locus widget as a quick start for track recording...

My suggestion for proper usage of air-pressure sensors: Let altitude calibration (option #2) be done automatically at GPS-activation when air pressure sensor is used (Altitude Manager --> Settings --> Air Pressure Sensor =On) and Altitude-Calibration is chosen (Altitude-Manager --> Air Pressure --> Altitude = xxx m)!

In my experience >90% of track recordings are for training purposes starting at home at a well known altitude. Or at other places where starting-altitude is known. So Option #2 would be perfect for calibration at GPS-activation resulting in correct altitude values in the statistics of the track.

If user really doesn't know the altitude - well, he can choose option #1...



Comments (10)


GPS subsystem usually provides some data about the accuracy, like HDOP and VDOP. The Locus could postpone the automatic initial recalibration when given minimal accuracy is achieved, and/or when the provided GPS height drift drops below given value.

SRTM has its issues as well, that are not temporary in contrary to GPS. It may be worthy for now to use manual setting, based on know altitude or well filtered GPS height with offset.


I agree that the automatic calibration with GPS often leeds to crap results and is basically useless. Maybe this is because it starts right away together with track recording and the very first GPS fixes are quite often very bad, especially their altitude value.

It would be nice to get a detailed description of what Locus is actually doing. Maybe there is a really simple way to improve things... like silently ignoring the first 30 seconds of fixes for calibration and correct the recorsed altitudes afterwards.

Always starting with a fixed altitude would not work for me... but might work for others. It is easy to forget though... and when you start someplace else for a change, you will have completely bogus altitudes.


Thanks for both comments. But what I suggest is a Setting without (!) any gps-/srtm influence, just clean air-pressure data, based on known altitude data.

@joeloc: Stefan, I understand that in your case a fixed base-altitude wouldn't work. You always start at different locations - but this is not the 'common' situation for most users, I believe ;-) (unfortunately not in my case...)

But your needs could be achieved by the setting Air-Pressure Sensor = on and Calibration = Automatic. Improved by your recommended ignorance oft the first 30 seconds or so.

My needs are: Air-Pressure Sensor = on and Calibration = Manual defined value. No GPS data. Yes, forgetting to change the base-value might be a problem - but only once. Second time you think of it :-) And it IS a manual Setting and therefore in the users "responsibility"

The Settings are there already. But in my mind, they are not used as 'promised'.


It would be also very nice to have an option where i could set the start and end height manually after the tracking. Because on a long day hiking the wheather and air pressure can change. Once I recorded my whole track with air pressure (and height) data, I should be able to set, that my track started for example at 100 meter above sea level, and ended at also 100 meters. On a one day hiking I usually get 40-50 meter difference, so if I can set manually the height, then it could tweak my track and make and extremly precise heigth data. Of course if i would just fill the start height, it would place the whole track in the correct height, without the weather-correction.


A good filter could use both short term barometric height stability and long term GPS height stability, gradually recalibrating the barometer on the fly.


E.g. Locusmap would keep GPS - Barometer height difference, well filtered with long time constant, e.g. 2-5 min .Then Barometer would be by small steps recalibrated for barometric height to drift toward zero GPS - Barometer height difference with even longer time constant, e.g. 15-30 min.


Currently 11 (in Words ELEVEN) steps are necessary to start a Track recording with calibrated altitude:

In the past 1 click on the widget was enough....

A change as suggested would Rally be appreciated!!!


Altitudes are a complex topic :-).


Imaginary portion of alltitude value can be usually neglected. :-)


Interesting ideas in this thread, but unfortunately without Menion reaction.

I just start to use Locus for track recording. I have phone with baromer and I would like to have elevation data as accurate as possible. Although Locus provides very good results relating to altitude/ascent/descent calculations, I find the pressure tab in altitude manager fuzzy. It crazy combines two independent settings (manual and automatic barometer calibration) in one select option.

In my opinion, manual and automatic barometer calibration should be independent settings as it was in my Garmin I used before. My ideal Pressure tab should contain:

1. informations:

GPS altitude

Barometric altitude

GPS accuracy (signal strength, number of satellites)

Time and method (manual/auto) of last Barometric altitude calibration

2. Button "calibrate now" (manual calibration) user can make it anytime, one from 3 offered methods for calibration can be used: take GPS altitude|input sea level pressure|input altitude

3. Checkbox "automatic calibration" (turn it on/off)

Ideas for future improvement:

1. During Locus start a notification with link to manual calibration can be displayed, if position significantly differs from the last when turning off (can be deactivated in settings)

2. More fine settings for automatic calibrations (but not necessary, in Garmin it is also blackbox)

3. History log for automatic calibration - time, correction value and duration of barometric altitude changes due to automatic calibration