Still Experiencing Elevation Inaccuracy on the 955: Fridge Experiment and More Example Runs

Part 1: (will post rest in comments since its not letting me post the full thing here)

Summary:

I know there are flaws to elevation calculations (either by using maps or by using barometric altimeters), but the barometric elevation data from the 955 has just seemed off lately (not crazy off, but something seems faulty). Elevation data on the 955 seems to be affected too much by temperature changes leading to inconsistent and inaccurate Elevation, Total Ascent, and Total Descent data. Temperature changes lead to additional elevation changes which are added to Total Ascent and Total Descent. It seems like other watches (including other non-Forerunner Garmin watches) are less affected by this so not sure if its hardware or software related. I have noticed this issues for the at least the past year when recording activities and also when just watching the altimeter widget while not recording activities. I (and others) previously posted about similar issues on the forum and those are linked below:

Prior Posts:

Mine:

https://forums.garmin.com/sports-fitness/running-multisport/f/forerunner-955-series/352892/altimeter-and-elevation-issues-still-occurring-calibration-temperature

Others:

https://forums.garmin.com/sports-fitness/running-multisport/f/forerunner-955-series/353524/altitude-measurements-seems-to-be-inacurate-sw17-24

https://forums.garmin.com/sports-fitness/running-multisport/f/forerunner-955-series/346202/16-17---inaccurate-calculation-for-total-ascent-and-descent

Recent Example - same exact run, steady weather (no storms), but different temperatures

(Elevation Plot: Aug vs Nov vs corrected elev)

 

(Temperature: Aug vs Nov)

 

The Ending Elevation – Starting Elevation = ~35ft for both runs. Which isn’t that bad. But the Nov run shows the ~160ft more Total Ascent and Total Descent which is about a 7.5% increase from the Aug run. The November run was colder and had a greater temperature drop recorded (blue line on temperature plot). The Nov temperature drop was also steeper and resulted in the Nov elevation plot being higher than the Aug plot pretty much from the beginning. Interestingly around 3mi and 5mi, the Nov run elevation plot goes lower than the Aug run (this is near where the temperature in the Nov run starts to increase again).

When temperature decreases, the elevation reading increases beyond what it should and when the temperature increases, the elevation reading decreases beyond what it should. Therefore, the changing temperature seems to increase both the Total Ascent and Total Descent. (If you are moving, then it adds these incorrect changes into both the Total Ascent and Total Descent. I confirmed this with the Fridge Test - which I will put in the comments, since its not letting me post everything at once)

  • Part 2:

    Fridge Test:

    Garmin firmware: 19.18 (I have not updated it after hearing reports on this forum of the latest FW 20.XX is not recording elevation data during activities)

    I manually calibrated the altimeter right before starting an activity (GPS disabled) and carefully placed the watch in the fridge. I recorded the temperature, elevation, and Total Ascent every few minutes and then I eventually removed the watch and immediately put it on my wrist and started walking around (to test if movement had an impact on how any data was being recorded). All of this was indoors on flat ground so any there should have been zero elevation changes the entire time.

    Fridge Test Observations:

    1) The Record Temperature On/Off setting during activity has no effect. I did the test a couple times with different settings and it led to the same result.
    2) When the watch is sitting still in the fridge, only the elevation reading incorrectly increases, but it does not record the increase in elevation into the Total Ascent field.
    3) As soon as I removed the watch and put it on and started walking on flat ground, it immediately added the full elevation change from the last 20min into the Total Ascent field. This is likely replicating what is happening when running outdoors. When moving and the temperature is dropping, the elevation is incorrectly increasing and also being added to the Total Ascent.
    4) As the watch warmed up on my wrist, the elevation started to decrease, and if I started to walk around again it would add this elevation decrease to the Total Descent field.
    5) Its not a super scientific experiment, but I tried to control as much as possible. When the watch was in the fridge it was at the same height as it was when I put it on. And when I walked around, I stayed on the same floor. I'm also pretty certain the air pressure is the same inside vs outside the fridge as I did a separate test where I kept the watch in the fridge for 15min without opening the door, and when I opened the door the first time, the elevation graph still showed a gradual increase (same as the other tests where I opened the door multiple times). It didn’t show a flat chart with a sharp increase when opening the fridge door as I would have expected if there was a pressure difference.
    6) The Avg Rate of change seems to be 2.25ft/F (as an inverse relationship)

    ... and its not letting me upload pictures. Ill try to add more in another comment

  • Part 3:

    Below are some examples of different cases while recording activities and the behavior seems to follow a similar trend as the above Fridge Experiment.

    Frequent Case 1: Initial Temp Decrease and then Flat

    Most of my runs are in the Northeast US. I typically wear the watch before my run which will results in high starting temperature on the watch (usually around 75-82F). The temperature rapidly decreases at start of activity and usually plateaus after 10-20min.

    On these runs, the Ending Elevation is higher than the Starting Elevation (assuming I started and ending in the exact same spot). The additional incorrect elevation gain recorded in the Total Ascent field appears to = Ending Elevation – Starting Elevation.

    Typically, the Max Temp Drop is 80F -> 55F = 25F drop. So, 25F x 2.25ft/F (from above test) = 56ft of additional incorrect elevation gain (normally the Ending Elevation is between 30ft – 75ft higher than the Starting Elevation in these scenarios so it is close to the results of the Fridge Test)

    For these cases the corrected Total Ascent would be:

    Actual Total Ascent = Total Ascent from Watch – (Ending Elevation – Starting Elevation)      

    This is easy to calculate and not the end of the world for me to manually adjust for, BUT…

     

    Frequent Case 2: Temperature Decreases and Increases Multiple Times During Activity

    … I also found a lot of cases where the temperature increases and decreases multiple times throughout a run (sometimes larger swings, sometimes smaller swings). Based on my experiment and experience with Case 1, this is would result in additional incorrect elevation gain to Total Ascent when the temperature decreases AND additional incorrect elevation loss to Total Descent when the temperature increases. This can also lead to more normally looking data as the Starting Elevation = Ending Elevation and Total Ascent = Total Descent if the temperature changes happen to balance out (but the Total Ascent/Descent numbers will both be too high to the accumulated changes).

    Even when the starting and ending elevation points seem reasonable, the Total Ascent/Total Descent appear to be overstated simply due to individual peaks showing higher elevation than the actual elevations for those peaks on maps.

     

    Infrequent Case (for me): Temp Increases Over Time

    This would just be the opposite of Case 1, but usually doesn’t happen to me (probably due to where I run and the local conditions). Temperature increase would decrease the elevation and add to the Total Descent (and ending elevation will be lower than starting elevation). Could probably replicate this if you put a cold watch on and went for a run in hot weather.

    I have pictures of these examples (and a few more from the fridge test), but the forum isnt letting me upload pictures anymore. Ill try again later...

  • Part 4:

    Potential Fixes???

    • Garmin Supports recommends cleaning the watch: I rinse the watch daily, and soak it in warm water weekly. It doesn’t seem to help, but probably good to keep barometer clean any way.
    • Calibrate the altimeter during the run (at least after a few min after temp drops): Besides being a pain for me to keep manually calibrating during a run, even if the watch could automatically calibrate the altimeter at different points during an activity, I don’t think it would solve the issue. The watch would also need to automatically subtract out incorrect elevation gain from the Total Ascent field AND subtract out incorrect elevation loss from the Total Descent field each time. I have tried calibrating during an activity before, and it just changes the current elevation and does not correct the Total Ascent/Total Descent (it also just shows a spike in the elevation chart down to the correct elevation). Coros and Suunto watches do some altimeter calibrations automatically during activities but I am unsure if they also correct any Total Ascent/Total Descent issues (but they may not have these temperature related issues in the first place).
      • Just to be clear, I already calibrate the watch using DEM before I start each activity
    • Ignore elevation readings and use a map source: Maps seem to underestimate elevation gain especially on trails due to elevation data resolution (unless you are only running up and down mountains without minor elevation changes in between). I usually cross reference the Total Ascent with route data from Footpath, Caltopo, and/or Strava corrected elevation.
      • Also, for a top end watch, there should be somewhat reasonable data. The Garmin Fenix watches seem to be better (even older models like Fenix 6 – I think I have a comparison of the Fenix 6 vs the 955 in my prior post). I also tested a Coros Pace 3 and it seems to not be affected by temperature (and elevation readings seem more consistent). I have also heard positive things about Suuntos elevation accuracy, but have not personally tested it. This almost seems to be Forerunner issue…
    • Hardware issue – Barometer? The barometer location on the Forerunner is under the watch instead of on the side like the Fenix, Instinct, Coros, and newer Suunto watches.
    • Software issue? Is there a “simple” software issue that is placing too much reliance on temperature for elevation calculations? This didn’t seem to happen the first year of using the watch so it could either be unintended software bugs or the barometer not lasting long. On a side note, the latest software (20.XX) has been giving people issues with not recording elevation data at all, so maybe inaccurate data is still better than no data?

     

    Next:

    Ill try to add the rest of my photos if the forum lets me.

    Ill try to record some outdoor activities with Garmin and Coros at the same time and see if there are any major differences.

    Is anyone else still having issues with this (if this is something you care about)? Feel free to do the fridge test or share any other comparisons if you have multiple watches. Or if you live somewhere cold and do a test with a normal run on a flat track.

  • Fridge Test pictures continued

    Above: this was after removing from fridge and walking around on flat ground - this triggered the (incorrect) elevation gain to be added to the total ascent

    Below: This is what the elevation chart looks like and shows changing elevation despite it not moving vertically (the increase of elevation was when it was sitting in the fridge and the decrease started once I started wearing the watch)

  • Part 3 Examples:

    Above: Case 1 example (Temp Decrease)

    Below: Case 2 example (Multiple Temp Changes)

  • Interesting observations. I have not read all of it though. In my experience, from running with a FR955 and a Fenix 6X always, and having used a Fenix 7 for a over a year: FR955 and Fenix 7 show the exact same altimeter/baro behavior (during a storm the barometer stays locked and the altimeter changes, even during sleep). The Fenix 6X is much more stable and realistic, although I have to shield its sensor port while running in high winds.

  • Another example from a run today (Dec) vs a little over a week ago (Nov). There are two hills per lap and I did three laps in Nov and two laps in Dec. The elevation graph shows the Elevation change from 0ft (I think the starting elevation was like 5ft different so this corrects for that - I used the GPSVisualizer website to plot these files). The ending elevation for both runs was higher than the starting elevation which was expected given the overall decrease in temperature. BUT the peak elevations on the Dec run are way higher than on the Nov run, and the valleys are pretty close. This led to the Dec run having higher Total Ascent and Total Descent per lap. The temperature graph also shows a greater (and steeper) temperature change for the Dec (it was colder today than on the Nov run).

  • a77 I have complained that my floors climbed has been extremely inaccurate recently. I think this ties to your elevation issue and could be potentially caused by the temperature changes... I will notice my elevation levels to dramatically increase when I am walking into work our leaving for work. I have not been running nearly as much lately or else I would try to dive into my data more. I was under the impression that my barometer hardware may be broken based on other threads I had read, but I am seeing altimeter issues pop up more often in the forum so maybe it is a software issue?

  • . I was under the impression that my barometer hardware may be broken based on other threads I had read, but I am seeing altimeter issues pop up more often in the forum so maybe it is a software issue?

    The altimeter seems to react to quick ambient pressure changes as if they were altitude changes. Slow ambient pressure changes on the other hand, are correctly translated to barometer changes. The pressure sensor is temperature-compensated and this is another factor to take into account.

    The way this all works is OK during stable weather when ambient pressure changes are slow, but not during storm season.

    There are probably boundaries set between which ambient pressure changes are interpreted as barometeric pressure changes. If the changes are of a larger amplitude, they are interpreted as altitude changes. Which is logical: someone could be in an elevator, standing still but moving up or down. This is extremely hard to get right. Adjust things one way, and everyone ends up with flat runs. Adjust it the other, and everyone sleeps in an elevator.

    Maybe the idea is that nightly auto-calibration is enough to mitigate any drift. It is now probably working well enough in the majority of cases.

    Perhaps better integration between the accelerometer-derived data and acitivities (user is sedentary, sleeping, walking, in an activity) and baro/alti logic, esp. with  loads of data to trawl through, could improve things. But I'm glad that is not my job :-)

    Every time we have unstable weather, I have to calibrate the altimeter every hour, just as with Casio and Suunto ABC watches 25 years ago. I think my Fenix 5 Plus performed better in the baro/alti department, but I don't wear it 24/7 anymore so it isn't subject to the same temperature changes, hence not a fair comparison.

    Although the FR955 (and Fenix 7) sadly lack a test mode, as long as I don't see values that are extreme, I don't think the baro sensor in my FR955 is broken.