AltosTelemetryReader: actually open serial port
[fw/altos] / ao-tools / altosui / AltosRecord.java
index c3e9d2110d52c9f013a8da6d342acce47878ae8f..004847678b71feff904b0295aff4cfb0338b14b2 100644 (file)
@@ -31,7 +31,7 @@ public class AltosRecord {
        int     flight;
        int     rssi;
        int     status;
-       String  state;
+       int     state;
        int     tick;
        int     accel;
        int     pres;
@@ -48,6 +48,8 @@ public class AltosRecord {
        int     accel_minus_g;
        AltosGPS        gps;
 
+       double  time;   /* seconds since boost */
+
        /*
         * Values for our MP3H6115A pressure sensor
         *
@@ -71,24 +73,36 @@ public class AltosRecord {
                return ((count / 16.0) / 2047.0 + 0.095) / 0.009 * 1000.0;
        }
 
-       public double pressure() {
+       public double raw_pressure() {
                return barometer_to_pressure(pres);
        }
 
+       public double filtered_pressure() {
+               return barometer_to_pressure(flight_pres);
+       }
+
        public double ground_pressure() {
                return barometer_to_pressure(ground_pres);
        }
 
-       public double altitude() {
-               return AltosConvert.pressure_to_altitude(pressure());
+       public double filtered_altitude() {
+               return AltosConvert.pressure_to_altitude(filtered_pressure());
+       }
+
+       public double raw_altitude() {
+               return AltosConvert.pressure_to_altitude(raw_pressure());
        }
 
        public double ground_altitude() {
                return AltosConvert.pressure_to_altitude(ground_pressure());
        }
 
-       public double height() {
-               return altitude() - ground_altitude();
+       public double filtered_height() {
+               return filtered_altitude() - ground_altitude();
+       }
+
+       public double raw_height() {
+               return raw_altitude() - ground_altitude();
        }
 
        public double battery_voltage() {
@@ -128,7 +142,7 @@ public class AltosRecord {
                return counts_per_g / 9.80665;
        }
        public double acceleration() {
-               return (accel_plus_g - accel) / accel_counts_per_mss();
+               return (ground_accel - accel) / accel_counts_per_mss();
        }
 
        public double accel_speed() {
@@ -136,9 +150,8 @@ public class AltosRecord {
                return speed;
        }
 
-       public int state() {
-               System.out.printf("state: %s -> %d\n", state, Altos.state(state));
-               return Altos.state(state);
+       public String state() {
+               return Altos.state_name(state);
        }
 
        public static String gets(FileInputStream s) throws IOException {
@@ -188,7 +201,7 @@ public class AltosRecord {
                flight = 0;
                rssi = 0;
                status = 0;
-               state = "startup";
+               state = Altos.ao_flight_startup;
                tick = 0;
                accel = 0;
                pres = 0;