Um das Problem mal zu veranschaulichen ein wenig Python Code. Den kann man hier https://www.online-python.com/ auch ohne Python zu installieren laufen lassen:
#!/usr/bin/python3
from random import uniform
MAX_ERROR = 1.0
HYSTERESIS = 0.9
ele1 = [0]*100
ele2 = [x*0.2 for x in range(0,100)]
error = [uniform(-MAX_ERROR, MAX_ERROR) for x in range(100)]
def simple_asc(ele, error):
asc = 0
last = 0
for h, e in zip(ele, error):
h += e
if last < h:
asc += h - last
last = h
return asc
def hyst_asc(ele, error):
asc = 0
last = 0
for h, e in zip(ele, error):
h += e
if h - last > HYSTERESIS:
asc += h - last
last = h
elif last - h > HYSTERESIS:
last = h
return asc
asc1 = simple_asc(ele1, error)
asc2 = simple_asc(ele2, error)
print(f"simple (no ascent): {asc1}")
print(f"simple (20m ascent): {asc2}")
asc1 = hyst_asc(ele1, error)
asc2 = hyst_asc(ele2, error)
print(f"hysteresis (no ascent): {asc1}")
print(f"hysteresis (20m ascent): {asc2}")
Alles anzeigen
Der Code berechnet 100 Höhenwerte die jeweils 0 sind und 100 Werte die von 0 auf 20m ansteigen. Zu jeder Reihe wird ein Fehler der zwischen -1..1m gleich verteilt ist addiert.
Das ist das Ergebnis von einem Lauf:
simple (no ascent): 33.71272522203891
simple (20m ascent): 44.58051622146269
hysteresis (no ascent): 19.149429739458103
hysteresis (20m ascent): 31.851038856431288
Der erste Lauf (simple) addiert alle positiven Deltas zwischen 2 aufeinanderfolgenden Werten auf. Der 2. Lauf (hysteresis) berechnet den Wert mit einer Hysterese. Das kann man jetzt immer wieder durchlaufen lassen. Für keinen Anstieg kommt einfach Mist heraus. Für den Anstieg ein stark fehlerbehafteter Wert, der aber immer noch mehr dem tatsächlichen Anstieg entspricht.
So ähnlich ist es auch bei deinem GPS. Wenn Du mit dem max. Fehler und der Hysterese spielst, wirst Du sehen wie diese Werte von einander abhängen. Es kann sehr wohl sein dass in der Firmware des 67er entweder der GPS-Wert sehr stark rauscht, oder die Hysterese nicht optimal eingestellt ist. Es kann auch sein, dass der Algorithmus im 67er einfach einen echten Anstieg braucht um gute Werte zu liefern.