* Track flight state from telemetry or eeprom data stream
*/
-package org.altusmetrum.AltosLib;
+package org.altusmetrum.altoslib_1;
public class AltosState {
public AltosRecord data;
public void init (AltosRecord cur, AltosState prev_state) {
data = cur;
+ /* Discard previous state if it was for a different board */
+ if (prev_state != null && prev_state.data.serial != data.serial)
+ prev_state = null;
ground_altitude = data.ground_altitude();
altitude = data.altitude();
}
ngps++;
}
- } else
- pad_alt = ground_altitude;
-
- data.new_gps = false;
+ } else {
+ if (ngps == 0)
+ pad_alt = ground_altitude;
+ }
gps_waiting = MIN_PAD_SAMPLES - npad;
if (gps_waiting < 0)