Dashboard slope /gradient enhancement
Gathering feedback
Calculating the slope/gradient via altitude (only GPS) / distance results in nonsense-values.
Apps like Clinometer use the acceleration sensors of the smartphone with precision up to 0.1 degree(!).
Using this technique with appropriate damping factor (biking!) and values only for the driving direction would be great (maybe second value for the inclination in sharp curves)
Disappointing there are no further comments or discussion for this topic.
While cycle touring over 7 weeks I experimented with displaying the slope on a dashboard. I found it necessary to have quite heavy filtering of the elevation (settings > GPS > Altitude Manager > Filter > ultra heavy filter) otherwise (as A.Bodner has observed) the displayed slope was "nonsense values" - values varying between +/-10% even with a constant gradient. I observed while nonsense slope values, the elevation values seemed quite reasonable? Why?
However by applying the heavy filtering to workaround this problem, it resulted in another problem - the elevation graph was also heavily filtered (of course!), and no longer accurate. See below - green track has no filtering, red track (of identical ride) uses ultra heavy filter:
Unfortunately it was weeks of recorded tracks before I realized my stupidity and lost detail/ accuracy of the recorded elevation. So I reverted to no filtering, but also giving up display of the slope.
Maybe the elevation and slope variables can be filtered (if required) independently? Or better still as A. Bodner has suggested, use the level sensor for slope calculation. I have found the level sensor very accurate and responsive, no delay for filtering/ damping. Tapping a "Calibrate" button could save the "0 degree angle" of the phone when mounted on handle bars.
Disappointing there are no further comments or discussion for this topic.
While cycle touring over 7 weeks I experimented with displaying the slope on a dashboard. I found it necessary to have quite heavy filtering of the elevation (settings > GPS > Altitude Manager > Filter > ultra heavy filter) otherwise (as A.Bodner has observed) the displayed slope was "nonsense values" - values varying between +/-10% even with a constant gradient. I observed while nonsense slope values, the elevation values seemed quite reasonable? Why?
However by applying the heavy filtering to workaround this problem, it resulted in another problem - the elevation graph was also heavily filtered (of course!), and no longer accurate. See below - green track has no filtering, red track (of identical ride) uses ultra heavy filter:
Unfortunately it was weeks of recorded tracks before I realized my stupidity and lost detail/ accuracy of the recorded elevation. So I reverted to no filtering, but also giving up display of the slope.
Maybe the elevation and slope variables can be filtered (if required) independently? Or better still as A. Bodner has suggested, use the level sensor for slope calculation. I have found the level sensor very accurate and responsive, no delay for filtering/ damping. Tapping a "Calibrate" button could save the "0 degree angle" of the phone when mounted on handle bars.
Interesting Idea.
Aside of compass and barometer usage, it is rare to see in navigation software to combine GPS positioning and direction with orientation and acceleration sensors, creating a kind of combined Inertial Navigation Unit.
Interesting Idea.
Aside of compass and barometer usage, it is rare to see in navigation software to combine GPS positioning and direction with orientation and acceleration sensors, creating a kind of combined Inertial Navigation Unit.
SURPRISE!! There are (now?) two values in the miscellaneous section for the slopes (inclinations) forward and sidewards and yes you can calibrate these values to zero via the compass screen for the mounted smartphone on the steering bar, BUT the units are degrees (not %) AND the values are not practical (upwards: 359° .. 357° ... etc., downwards 1° .. 5° ... etc.). Please adjust these and make me happy, when cycling in the mountains
SURPRISE!! There are (now?) two values in the miscellaneous section for the slopes (inclinations) forward and sidewards and yes you can calibrate these values to zero via the compass screen for the mounted smartphone on the steering bar, BUT the units are degrees (not %) AND the values are not practical (upwards: 359° .. 357° ... etc., downwards 1° .. 5° ... etc.). Please adjust these and make me happy, when cycling in the mountains
Is the compass inclination used anywhere in Locus other than for display on the Compass screen? I don't think so. There would currently be a conflict between the "use compass below speed" setting, and using compass inclination above that speed. I don't use the compass at all (disabled) for map rotation because it is not accurate when mounted on my bike handlebars.
Is the compass inclination used anywhere in Locus other than for display on the Compass screen? I don't think so. There would currently be a conflict between the "use compass below speed" setting, and using compass inclination above that speed. I don't use the compass at all (disabled) for map rotation because it is not accurate when mounted on my bike handlebars.
Rather
use compass orientation below the speed. either with inclination either without it
use GPS bearing orientation above the speed.
Rather
use compass orientation below the speed. either with inclination either without it
use GPS bearing orientation above the speed.
Surely it does matter - while riding (i.e. speed>=value) I can assume the GPS can be used for accurate orientation. Conversely when I stop (i.e. speed<value) it is impossible for GPS to know which direction I am facing, hence swap to compass (if reliable). Do I miss your point? However, either way, this discussion is unrelated to the original topic suggestion of use of sensor for slope calculation instead of derivation via filtered GPS elevations.
Surely it does matter - while riding (i.e. speed>=value) I can assume the GPS can be used for accurate orientation. Conversely when I stop (i.e. speed<value) it is impossible for GPS to know which direction I am facing, hence swap to compass (if reliable). Do I miss your point? However, either way, this discussion is unrelated to the original topic suggestion of use of sensor for slope calculation instead of derivation via filtered GPS elevations.
Andrew, I have difficulties to really understand your point. :-/ Once you write about altitude (vertical differences / slope), then about compass (horizontal differences) - is it about one of them or both? And where shall the gradient been shown - just in the dashboard (overlay information in map screen) or also in graphs?
Andrew, I have difficulties to really understand your point. :-/ Once you write about altitude (vertical differences / slope), then about compass (horizontal differences) - is it about one of them or both? And where shall the gradient been shown - just in the dashboard (overlay information in map screen) or also in graphs?
I suppose the Andrew's idea is to use the phone orientation sensors ( data of phone tilting are visible on compass screen, as orientation and magnetic sensors are related ) to correct and smooth altitude and mainly slope data. As the slope info is extremely sensitive to altitude data noise.
I suppose the Andrew's idea is to use the phone orientation sensors ( data of phone tilting are visible on compass screen, as orientation and magnetic sensors are related ) to correct and smooth altitude and mainly slope data. As the slope info is extremely sensitive to altitude data noise.
Georg D - as Libor so eloquently says.
Georg D - as Libor so eloquently says.
I really can`t believe it! The proposal of using the magnetic sensor for steepness is available since months, but in a way, that makes no sense! When I cycle on a road in the mountains, I see for example 350 degree (or -7 degree, if it goes downwards).
Therefore a last attempt:
All over the world the steepness is measured in percent, that is the elevation vertical divided by the distance horizontal times 100. Mathematically this is the tangent function of the angle times 100 for per centum. Please be aware, the tangent function needs an angle in radiants, that is degree * PI / 180 and the range is usually from -PI to *PI. Please check, that uphill are positive values, horizontally is 0% and downhill ...
Once again: This value of the steepness especially for MTB-riders on the display of locusmap is similar important like the motor-rpm in racing cars. Of course it is only usable for bicycles, where the smartphone is fixed to the steering bar or stem. And you have to calibrate it. You can check the calibration by turning around the bicycle by 180 degrees (via the vertical axis) in a slanted position.
Yes, you can see the correct steepness also without motion! That is far beyond the posibilities of the Garmin gagdets!
I hoped that my hint using the second value for the lateral inclination in curves would produce a lot of discussion and protests. That was a nonsense, because the resulting vector of gravity plus centrifugal acceleration does not change the direction related to the smartphone sensor. Only when accelerating the resulting vector leads to wrong values for the steepness. Therefore no problem when driving downhill and using the brakes as long as the speed is constant (only the suspension fork will influence the correct value).
I and I think all people riding bicycles and using a smartphone fixed to the bike wish to have this value when starting in the new bike season!
I really can`t believe it! The proposal of using the magnetic sensor for steepness is available since months, but in a way, that makes no sense! When I cycle on a road in the mountains, I see for example 350 degree (or -7 degree, if it goes downwards).
Therefore a last attempt:
All over the world the steepness is measured in percent, that is the elevation vertical divided by the distance horizontal times 100. Mathematically this is the tangent function of the angle times 100 for per centum. Please be aware, the tangent function needs an angle in radiants, that is degree * PI / 180 and the range is usually from -PI to *PI. Please check, that uphill are positive values, horizontally is 0% and downhill ...
Once again: This value of the steepness especially for MTB-riders on the display of locusmap is similar important like the motor-rpm in racing cars. Of course it is only usable for bicycles, where the smartphone is fixed to the steering bar or stem. And you have to calibrate it. You can check the calibration by turning around the bicycle by 180 degrees (via the vertical axis) in a slanted position.
Yes, you can see the correct steepness also without motion! That is far beyond the posibilities of the Garmin gagdets!
I hoped that my hint using the second value for the lateral inclination in curves would produce a lot of discussion and protests. That was a nonsense, because the resulting vector of gravity plus centrifugal acceleration does not change the direction related to the smartphone sensor. Only when accelerating the resulting vector leads to wrong values for the steepness. Therefore no problem when driving downhill and using the brakes as long as the speed is constant (only the suspension fork will influence the correct value).
I and I think all people riding bicycles and using a smartphone fixed to the bike wish to have this value when starting in the new bike season!
The slope/gradient value is really annoying. Especially when using a smartphone it would be much better to use the values of the gyroscope / compass with the possibility to equal it to zero in advance (due to the gradient of the bike mount).
The slope/gradient via GPS is really useless and inaccurate because it differs between +/- 10% without changing elevation.
Furthermore there should be a limit in time (like 3 seconds) for measurement, so that the value is more precise and not changing like crazy.
The slope/gradient value is really annoying. Especially when using a smartphone it would be much better to use the values of the gyroscope / compass with the possibility to equal it to zero in advance (due to the gradient of the bike mount).
The slope/gradient via GPS is really useless and inaccurate because it differs between +/- 10% without changing elevation.
Furthermore there should be a limit in time (like 3 seconds) for measurement, so that the value is more precise and not changing like crazy.
Many people share same experience in many help topics and forum discussions.
+1
Many people share same experience in many help topics and forum discussions.
+1
Is there really still no interest of the developers to provide a solution for usage of the gyroskop instead of GPS data only?
Is there really still no interest of the developers to provide a solution for usage of the gyroskop instead of GPS data only?
( Not speaking for the developer)
IMHO, filtering of accelerometer and gyroscope data during the real erratic bike motion is a bigger deal than the proper Kalman filtering of the 3D GPS position and 3D velocity, with low process error variance and high measurement error variance.
( Not speaking for the developer)
IMHO, filtering of accelerometer and gyroscope data during the real erratic bike motion is a bigger deal than the proper Kalman filtering of the 3D GPS position and 3D velocity, with low process error variance and high measurement error variance.
Maybe we could help to push this if we try to find a description of the minimum required change to find out if we did miss something or if this is ready for implementation.
if we look at the activities which could benefit from a acceleration based feature, we can't enable it by default:
- not usable for runners
- not usable for hiking
- only usable for static mountings
-- cycling
-- maybe car, but there is to much acceleration there to get precise data
Configuration needed?
- yes, I don't know any generic solution where we could skip a configuration
What should be configurable?
- selection of 2 methods: elevation change (old method) and acceleration sensor (new method)
- old method should be default because only the old method could handle all activity types
I guess the old method does cover barometric messurement as well, which means we just need to select between elevation change and acceleration sensor.
- do we need configuration for freuqenzy and filtering? Would be nice but I wouldn't complain about hardcoded values if this limitation would make it less complex
Calibration needed?
- yes, gyroscope needs a 0 angle calibration. But we could reuse the compas screen onclick calibration
Should this feature get recorded?
I would say no, because of acceleration based errors. It does not need much of breaking force to accedently twist the screen upsidedown if you forget to disable screenrotation :D
That means overall we need the following:
- configuration UI for enabling it, old method is default
- UI for calibration would be nice but a less complex solution would be to tell the user to calibrate it on gps/compass screen
- a help text or section in the documentation which warns for acceleration based error values
- a documentation section which describe that elevation change related slope messurement is based on GPS, presure or SRTM
- don't record it just display it like on the compass screen
Who does not agree with this summary?
Maybe we could help to push this if we try to find a description of the minimum required change to find out if we did miss something or if this is ready for implementation.
if we look at the activities which could benefit from a acceleration based feature, we can't enable it by default:
- not usable for runners
- not usable for hiking
- only usable for static mountings
-- cycling
-- maybe car, but there is to much acceleration there to get precise data
Configuration needed?
- yes, I don't know any generic solution where we could skip a configuration
What should be configurable?
- selection of 2 methods: elevation change (old method) and acceleration sensor (new method)
- old method should be default because only the old method could handle all activity types
I guess the old method does cover barometric messurement as well, which means we just need to select between elevation change and acceleration sensor.
- do we need configuration for freuqenzy and filtering? Would be nice but I wouldn't complain about hardcoded values if this limitation would make it less complex
Calibration needed?
- yes, gyroscope needs a 0 angle calibration. But we could reuse the compas screen onclick calibration
Should this feature get recorded?
I would say no, because of acceleration based errors. It does not need much of breaking force to accedently twist the screen upsidedown if you forget to disable screenrotation :D
That means overall we need the following:
- configuration UI for enabling it, old method is default
- UI for calibration would be nice but a less complex solution would be to tell the user to calibrate it on gps/compass screen
- a help text or section in the documentation which warns for acceleration based error values
- a documentation section which describe that elevation change related slope messurement is based on GPS, presure or SRTM
- don't record it just display it like on the compass screen
Who does not agree with this summary?
I guess this idea could be marked as solved if we could get the Dashboard Pitch element as percent value. Because it does already have what we need, it does use the phone sensor, it is filtered and it is able to calibrate it.
The only point is that angle value is not usefull because it is from 0° to 360° instead of -180° to 180° and % whould be the best solution.
I guess this idea could be marked as solved if we could get the Dashboard Pitch element as percent value. Because it does already have what we need, it does use the phone sensor, it is filtered and it is able to calibrate it.
The only point is that angle value is not usefull because it is from 0° to 360° instead of -180° to 180° and % whould be the best solution.
Replies have been locked on this page!