X-Git-Url: https://git.gag.com/?p=fw%2Faltos;a=blobdiff_plain;f=altosdroid%2Fsrc%2Forg%2Faltusmetrum%2FAltosDroid%2FTelemetryReader.java;h=7b29fe44a2f91a9742652f89dcc6c9b96f3d431a;hp=0c437f87a7fd3f20513b2dfb9bb197e75622c04c;hb=2509b664df6a13e6ae9e6753dc9fa0d696a4f6c7;hpb=bc3fbcb35090be3856284ccf4d908ebf39d02bec diff --git a/altosdroid/src/org/altusmetrum/AltosDroid/TelemetryReader.java b/altosdroid/src/org/altusmetrum/AltosDroid/TelemetryReader.java index 0c437f87..7b29fe44 100644 --- a/altosdroid/src/org/altusmetrum/AltosDroid/TelemetryReader.java +++ b/altosdroid/src/org/altusmetrum/AltosDroid/TelemetryReader.java @@ -22,16 +22,13 @@ package org.altusmetrum.AltosDroid; import java.text.*; import java.io.*; import java.util.concurrent.*; -import android.util.Log; import android.os.Handler; -import org.altusmetrum.altoslib_5.*; +import org.altusmetrum.altoslib_7.*; public class TelemetryReader extends Thread { - private static final String TAG = "TelemetryReader"; - int crc_errors; Handler handler; @@ -66,12 +63,13 @@ public class TelemetryReader extends Thread { AltosState state = null; try { + AltosDebug.debug("starting loop"); while (telemQueue != null) { try { state = read(); handler.obtainMessage(TelemetryService.MSG_TELEMETRY, state).sendToTarget(); } catch (ParseException pp) { - Log.e(TAG, String.format("Parse error: %d \"%s\"", pp.getErrorOffset(), pp.getMessage())); + AltosDebug.error("Parse error: %d \"%s\"", pp.getErrorOffset(), pp.getMessage()); } catch (AltosCRCException ce) { ++crc_errors; handler.obtainMessage(TelemetryService.MSG_CRC_ERROR, new Integer(crc_errors)).sendToTarget(); @@ -79,26 +77,23 @@ public class TelemetryReader extends Thread { } } catch (InterruptedException ee) { } catch (IOException ie) { + AltosDebug.error("IO exception in telemetry reader"); + handler.obtainMessage(TelemetryService.MSG_DISCONNECTED, link).sendToTarget(); } finally { close(); } } - public TelemetryReader (AltosLink in_link, Handler in_handler) { + public TelemetryReader (AltosLink in_link, Handler in_handler, AltosState in_state) { + AltosDebug.debug("connected TelemetryReader create started"); link = in_link; handler = in_handler; - state = null; + state = in_state; telemQueue = new LinkedBlockingQueue(); link.add_monitor(telemQueue); - try { - link.set_radio_frequency(AltosPreferences.frequency(link.serial)); - link.set_telemetry(AltosLib.ao_telemetry_standard); - link.set_telemetry_rate(AltosPreferences.telemetry_rate(link.serial)); - } catch (InterruptedException ee) { - close(); - } catch (TimeoutException te) { - close(); - } + link.set_telemetry(AltosLib.ao_telemetry_standard); + + AltosDebug.debug("connected TelemetryReader created"); } }