From c494eecc51f7d80e24e5db7af0021c56cb6871d4 Mon Sep 17 00:00:00 2001 From: Keith Packard Date: Sun, 18 Nov 2012 10:08:38 -0800 Subject: altoslib: MegaMetrum data telem packets have sensor data, not flight no Setting the seen_flight bit without a flight number leads to bogus file names Signed-off-by: Keith Packard --- altoslib/AltosTelemetryRecordMegaData.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'altoslib') diff --git a/altoslib/AltosTelemetryRecordMegaData.java b/altoslib/AltosTelemetryRecordMegaData.java index 16a7b80c..98b9f4c5 100644 --- a/altoslib/AltosTelemetryRecordMegaData.java +++ b/altoslib/AltosTelemetryRecordMegaData.java @@ -87,7 +87,7 @@ public class AltosTelemetryRecordMegaData extends AltosTelemetryRecordRaw { next.kalman_speed = speed / 16.0; next.kalman_height = height; - next.seen |= AltosRecord.seen_flight | AltosRecord.seen_temp_volt; + next.seen |= AltosRecord.seen_sensor | AltosRecord.seen_temp_volt; return next; } -- cgit v1.2.3 From fcb801b145e1ae6f1c0b3418a99245d34dbf5aa4 Mon Sep 17 00:00:00 2001 From: Keith Packard Date: Sun, 18 Nov 2012 10:10:29 -0800 Subject: altoslib: Allow flight number to be zero It's zero when there's no storage space on the device. Instead of waiting for non-zero flight number, wait for the seen_flight bit to be set in the telem tracking state Signed-off-by: Keith Packard --- altoslib/AltosLog.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'altoslib') diff --git a/altoslib/AltosLog.java b/altoslib/AltosLog.java index 1c7069ce..aa30190c 100644 --- a/altoslib/AltosLog.java +++ b/altoslib/AltosLog.java @@ -85,7 +85,7 @@ public class AltosLog implements Runnable { continue; try { AltosRecord telem = AltosTelemetry.parse(line.line, previous); - if (telem.serial != 0 && telem.flight != 0 && + if ((telem.seen & AltosRecord.seen_flight) != 0 && (telem.serial != serial || telem.flight != flight || log_file == null)) { close_log_file(); -- cgit v1.2.3 From c4737c81ee2da826b38cc52efbfb09017e6825ca Mon Sep 17 00:00:00 2001 From: Keith Packard Date: Sun, 18 Nov 2012 10:13:49 -0800 Subject: altoslib: Reset telem tracking state when switching altimeters This discards any local state when the new telem packet has a different serial number Signed-off-by: Keith Packard --- altoslib/AltosTelemetryRecordRaw.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'altoslib') diff --git a/altoslib/AltosTelemetryRecordRaw.java b/altoslib/AltosTelemetryRecordRaw.java index c21da6fc..51dd704d 100644 --- a/altoslib/AltosTelemetryRecordRaw.java +++ b/altoslib/AltosTelemetryRecordRaw.java @@ -62,7 +62,8 @@ public class AltosTelemetryRecordRaw extends AltosTelemetryRecord { public AltosRecord update_state(AltosRecord previous) { AltosRecord next; - if (previous != null) + + if (previous != null && previous.serial == serial) next = previous.clone(); else next = new AltosRecordNone(); -- cgit v1.2.3