X-Git-Url: https://git.gag.com/?a=blobdiff_plain;ds=sidebyside;f=altosui%2FAltosTelemetry.java;h=7d68b5b5394898c62698ee90bdcf05e519ed43e2;hb=dc0b49dcbaa2d0a69e002c151337b6e9fd3060d9;hp=3eb0efa8eea8e5defa4185a887cca358d0fc98fa;hpb=f3e68341f6f5daaf26dd162e4f9a06c29988986a;p=fw%2Faltos diff --git a/altosui/AltosTelemetry.java b/altosui/AltosTelemetry.java index 3eb0efa8..7d68b5b5 100644 --- a/altosui/AltosTelemetry.java +++ b/altosui/AltosTelemetry.java @@ -253,12 +253,8 @@ public class AltosTelemetry extends AltosRecord { accel_minus_g = map.get_int(AO_TELEM_CAL_ACCEL_MINUS, MISSING); /* flight computer values */ - acceleration = map.get_int(AO_TELEM_KALMAN_ACCEL, MISSING); - if (acceleration != MISSING) - acceleration /= 16.0; - speed = map.get_int(AO_TELEM_KALMAN_SPEED, MISSING); - if (speed != MISSING) - speed /= 16.0; + acceleration = map.get_double(AO_TELEM_KALMAN_ACCEL, MISSING, 1/16.0); + speed = map.get_double(AO_TELEM_KALMAN_SPEED, MISSING, 1/16.0); height = map.get_int(AO_TELEM_KALMAN_HEIGHT, MISSING); flight_accel = map.get_int(AO_TELEM_ADHOC_ACCEL, MISSING); @@ -330,6 +326,16 @@ public class AltosTelemetry extends AltosRecord { AltosParse.word(words[i++], "fp:"); flight_pres = AltosParse.parse_int(words[i++]); + /* Old TeleDongle code with kalman-reporting TeleMetrum code */ + if ((flight_vel & 0xffff0000) == 0x80000000) { + speed = ((short) flight_vel) / 16.0; + acceleration = flight_accel / 16.0; + height = flight_pres; + flight_vel = MISSING; + flight_pres = MISSING; + flight_accel = MISSING; + } + AltosParse.word(words[i++], "gp:"); ground_pres = AltosParse.parse_int(words[i++]);