altosui: Support raw telemetry from TeleDongle
[fw/altos] / altosui / AltosTelemetryReader.java
index 980391b437476add2ca092b27ad0d00e6c89a2a2..18f17841acf76ac4373aeb58569ad46c0e732784 100644 (file)
@@ -26,6 +26,7 @@ class AltosTelemetryReader extends AltosFlightReader {
        AltosDevice     device;
        AltosSerial     serial;
        AltosLog        log;
+       AltosRecord     previous;
 
        LinkedBlockingQueue<AltosLine> telem;
 
@@ -33,7 +34,9 @@ class AltosTelemetryReader extends AltosFlightReader {
                AltosLine l = telem.take();
                if (l.line == null)
                        throw new IOException("IO error");
-               return new AltosTelemetry(l.line);
+               AltosRecord     next = AltosTelemetry.parse(l.line, previous);
+               previous = next;
+               return next;
        }
 
        void close(boolean interrupted) {
@@ -58,6 +61,7 @@ class AltosTelemetryReader extends AltosFlightReader {
                serial = new AltosSerial(device);
                log = new AltosLog(serial);
                name = device.toShortString();
+               previous = null;
 
                telem = new LinkedBlockingQueue<AltosLine>();
                serial.set_radio();