summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKeith Packard <keithp@keithp.com>2017-10-02 17:02:18 -0700
committerKeith Packard <keithp@keithp.com>2017-10-02 17:08:33 -0700
commitd75e8b9046295051c91696461e8d5f59c8260ccc (patch)
tree2baaf1b6ed5877d8dec315803813b9586a45d13b
parentc6be13e8ef80e5afc836e04cbfe4cb17631540e4 (diff)
altosuilib: Show raw tick values in graph and info table
Not terribly useful, but did help validate firmware handling of tick wrapping, so we'll keep it. Signed-off-by: Keith Packard <keithp@keithp.com>
-rw-r--r--altoslib/AltosDataListener.java7
-rw-r--r--altoslib/AltosFlightSeries.java11
-rw-r--r--altosuilib/AltosGraph.java16
-rw-r--r--altosuilib/AltosInfoTable.java2
4 files changed, 35 insertions, 1 deletions
diff --git a/altoslib/AltosDataListener.java b/altoslib/AltosDataListener.java
index fb37fe3d..359d04c9 100644
--- a/altoslib/AltosDataListener.java
+++ b/altoslib/AltosDataListener.java
@@ -21,7 +21,14 @@ public abstract class AltosDataListener {
public double time = AltosLib.MISSING;
public double frequency = AltosLib.MISSING;
+ public int raw_tick = AltosLib.MISSING;
+
+ public int tick() {
+ return raw_tick;
+ }
+
public void set_tick(int tick) {
+ raw_tick = tick;
cal_data.set_tick(tick);
set_time(cal_data.time());
}
diff --git a/altoslib/AltosFlightSeries.java b/altoslib/AltosFlightSeries.java
index f7ea0d15..ab7943b3 100644
--- a/altoslib/AltosFlightSeries.java
+++ b/altoslib/AltosFlightSeries.java
@@ -191,6 +191,17 @@ public class AltosFlightSeries extends AltosDataListener {
public void set_received_time(long received_time) {
}
+ public AltosTimeSeries tick_series;
+
+ public static final String tick_name = "Tick";
+
+ public void set_tick(int tick) {
+ super.set_tick(tick);
+ if (tick_series == null)
+ tick_series = add_series(tick_name, null);
+ tick_series.add(time(), tick);
+ }
+
public AltosTimeSeries rssi_series;
public static final String rssi_name = "RSSI";
diff --git a/altosuilib/AltosGraph.java b/altosuilib/AltosGraph.java
index 31042abb..5df95233 100644
--- a/altosuilib/AltosGraph.java
+++ b/altosuilib/AltosGraph.java
@@ -80,6 +80,7 @@ public class AltosGraph extends AltosUIGraph {
static final private Color orient_color = new Color(31, 31, 31);
static AltosUnits dop_units = null;
+ static AltosUnits tick_units = null;
AltosUIFlightSeries flight_series;
@@ -89,7 +90,7 @@ public class AltosGraph extends AltosUIGraph {
AltosUIAxis height_axis, speed_axis, accel_axis, voltage_axis, temperature_axis, nsat_axis, dbm_axis;
AltosUIAxis distance_axis, pressure_axis, thrust_axis;
AltosUIAxis gyro_axis, orient_axis, mag_axis;
- AltosUIAxis course_axis, dop_axis;
+ AltosUIAxis course_axis, dop_axis, tick_axis;
if (stats.serial != AltosLib.MISSING && stats.product != null && stats.flight != AltosLib.MISSING)
setName(String.format("%s %d flight %d\n", stats.product, stats.serial, stats.flight));
@@ -98,6 +99,7 @@ public class AltosGraph extends AltosUIGraph {
pressure_axis = newAxis("Pressure", AltosConvert.pressure, pressure_color, 0);
speed_axis = newAxis("Speed", AltosConvert.speed, speed_color);
thrust_axis = newAxis("Thrust", AltosConvert.force, thrust_color);
+ tick_axis = newAxis("Tick", tick_units, accel_color, 0);
accel_axis = newAxis("Acceleration", AltosConvert.accel, accel_color);
voltage_axis = newAxis("Voltage", AltosConvert.voltage, voltage_color);
temperature_axis = newAxis("Temperature", AltosConvert.temperature, temperature_color, 0);
@@ -129,6 +131,11 @@ public class AltosGraph extends AltosUIGraph {
plot,
false);
+ flight_series.register_axis(AltosUIFlightSeries.tick_name,
+ accel_color,
+ false,
+ tick_axis);
+
flight_series.register_axis(AltosUIFlightSeries.accel_name,
accel_color,
true,
@@ -320,6 +327,12 @@ public class AltosGraph extends AltosUIGraph {
return flight_series.series(cal_data);
}
+ public void set_filter(double filter) {
+ System.out.printf("filter set to %f\n", filter);
+ flight_series.set_filter(filter, filter);
+ units_changed(false);
+ }
+
public void set_data(AltosFlightStats stats, AltosUIFlightSeries flight_series) {
set_series(setup(stats, flight_series));
}
@@ -330,6 +343,7 @@ public class AltosGraph extends AltosUIGraph {
public AltosGraph(AltosUIEnable enable, AltosFlightStats stats, AltosUIFlightSeries flight_series) {
this(enable);
+ this.flight_series = flight_series;
set_series(setup(stats, flight_series));
}
}
diff --git a/altosuilib/AltosInfoTable.java b/altosuilib/AltosInfoTable.java
index 9e528b1f..e759394b 100644
--- a/altosuilib/AltosInfoTable.java
+++ b/altosuilib/AltosInfoTable.java
@@ -142,6 +142,8 @@ public class AltosInfoTable extends JTable implements AltosFlightDisplay, Hierar
info_add_row(0, "Device", "%s", AltosLib.product_name(cal_data.device_type));
else if (cal_data.product != null)
info_add_row(0, "Device", "%s", cal_data.product);
+ if (state.tick() != AltosLib.MISSING)
+ info_add_row(0, "Tick", "%6d", state.tick());
if (state.altitude() != AltosLib.MISSING)
info_add_row(0, "Altitude", "%6.0f m", state.altitude());
if (cal_data.ground_altitude != AltosLib.MISSING)