altoslib: Report raw baro height instead of kalman filtered value
[fw/altos] / altoslib / AltosState.java
index 3ab2c0eb5dd4a4fdcefa95b4c60c7cb3922fdfdb..eea7a9c6760c1bfd4acd7cd86aa0c63c334c66f7 100644 (file)
@@ -513,26 +513,27 @@ public class AltosState extends AltosDataListener {
        }
 
        public double height() {
-               double k = kalman_height.value();
-               if (k != AltosLib.MISSING)
-                       return k;
-
                double b = baro_height();
                if (b != AltosLib.MISSING)
                        return b;
 
+               double k = kalman_height.value();
+               if (k != AltosLib.MISSING)
+                       return k;
+
                return gps_height();
        }
 
        public double max_height() {
-               double  k = kalman_height.max();
-               if (k != AltosLib.MISSING)
-                       return k;
-
                double a = altitude.max();
                double g = ground_altitude();
                if (a != AltosLib.MISSING && g != AltosLib.MISSING)
                        return a - g;
+
+               double  k = kalman_height.max();
+               if (k != AltosLib.MISSING)
+                       return k;
+
                return max_gps_height();
        }
 
@@ -884,8 +885,8 @@ public class AltosState extends AltosDataListener {
                received_time = ms;
        }
 
-       public void set_gps(AltosGPS gps) {
-               super.set_gps(gps);
+       public void set_gps(AltosGPS gps, boolean set_location, boolean set_sats) {
+               super.set_gps(gps, set_location, set_sats);
                if (gps != null) {
                        this.gps = gps;
                        update_gps();