Hallo@all,
ich habe seit gestern einen merkwürdigen Fehler. Die Strecke wird nicht gezählt - steht auf 0. Heute Morgen und heute Nachmittag das selbe. Mitten auf der BAB ging es dann plötzlich wieder. Alles andere läuft wie immer.
Hatte das schon mal jemand? Hat jemand eine Idee bzw. Abhilfe?
Hallo!
Du meinst beim Panel Trip Timer? Da gibt es einen ungeklärten Effekt. Die Entfernung geht ja prinzipiell auf Meter genau bei dem Trip Timer, obwohl der km-Zähler das nicht hergibt. Xavier hat das über die Motordrehzahl gelöst mit einem Umrechnungsfaktor auf die Raddrehzahl in Verbindung mit dem Radumfang.
Konkret wird, beginnend mit einer Konstanten für diesen Umrechnungsfaktor, jeden Kilometer anhand des Kilometerstandes, dieser Umrechnungsfaktor nachjustiert, um etwaige Abweichungen auszugleichen. Das kann bedingt sein, durch abgefahrene Reifen, oder unterschiedlichen Luftdruck und dergleichen.
Dieser ungeklärte Effekt setzt den Umrechnungsfaktor auf 0 und dann geht nichts mehr.
Xavier ist dem mit einem Workaround begegnet, solange die Ursache unklar ist, indem dieser Umrechnungsfaktor, der in der Datenbank gespeichert wird, beim Start der App gegen 0 geprüft wird. Ist dem so, wird wieder mit der Konstanten gestartet.
Also App neu starten sollte ausreichen, um das Problem zu lösen.
Nachtrag: Die Ursache ist im Prinzip schon klar: ungültige Daten vom Can-Bus. Wir hatten das mal im Zusammenhang mit den einzelnen Zellwerten. Die 88 bzw. 80 Spannungswerte und die 66 bzw. 60 Temperaturwerte werden über mehere Zyklen einer PID übertragen mit Indexnummern kombiniert. D.h. man sammelt die 88 Werte über mehrere gleiche PIDs auf bis man einen vollständigen Datensatz hat. Dabei haben wir diese Indexnummer vom Can-Bus gleich als Index in einem Array für die 88 Werte verwendet. Ist mal ein ungültiger Datensatz dahergekommen, lagen wir mit dem Index ausserhalb des Adreßbereichs des Arrays und die App hat sich mit einer (damals unbehandelten) Exception beendet. Als wir das realisiert hatten, haben wir eine Plausibilitätsprüfung für diese Indexnummer vom Can-Bus eingebaut - seither ist der Spuk zu Ende. Etwas vergleichbares werden wir auch für den Umrechnungsfaktor einbauen.
Martin