X-Git-Url: https://git.gag.com/?p=fw%2Faltos;a=blobdiff_plain;f=altosui%2FAltosSerial.java;h=0a531aa96faa8b2b0b27fc0f412b78c920648231;hp=b089c9c40c580beb7764135fb0c3ead7be9a374a;hb=c3314dae2d3df82e188daf6ba8520cce833592c6;hpb=a680ce61bdcffeacb7f0e4dcef71a03cb7cfe07d diff --git a/altosui/AltosSerial.java b/altosui/AltosSerial.java index b089c9c4..0a531aa9 100644 --- a/altosui/AltosSerial.java +++ b/altosui/AltosSerial.java @@ -187,7 +187,7 @@ public class AltosSerial implements Runnable { return abort; } - public void flush_input() { + public void flush_input() throws InterruptedException { flush_output(); boolean got_some; @@ -195,10 +195,7 @@ public class AltosSerial implements Runnable { if (remote) timeout = 500; do { - try { - Thread.sleep(timeout); - } catch (InterruptedException ie) { - } + Thread.sleep(timeout); got_some = !reply_queue.isEmpty(); synchronized(this) { if (!"VERSION".startsWith(line) && @@ -271,8 +268,12 @@ public class AltosSerial implements Runnable { } public void close() { - if (remote) - stop_remote(); + if (remote) { + try { + stop_remote(); + } catch (InterruptedException ie) { + } + } if (in_reply != 0) System.out.printf("Uh-oh. Closing active serial device\n"); @@ -352,10 +353,10 @@ public class AltosSerial implements Runnable { private void set_radio_setting(int setting) { if (altos != null) { if (monitor_mode) - printf("m 0\nc R %d\nc r 0\nm %x\n", + printf("m 0\nc R %d\nm %x\n", setting, telemetry_len()); else - printf("c R %d\nc r 0\n", setting); + printf("c R %d\n", setting); flush_output(); } } @@ -363,6 +364,8 @@ public class AltosSerial implements Runnable { public void set_radio_frequency(double frequency, boolean has_setting, int cal) { + if (debug) + System.out.printf("set_radio_frequency %7.3f %b %d\n", frequency, has_setting, cal); if (has_setting) set_radio_setting(AltosConvert.radio_frequency_to_setting(frequency, cal)); else @@ -412,7 +415,7 @@ public class AltosSerial implements Runnable { public void start_remote() throws TimeoutException, InterruptedException { if (debug) - System.out.printf("start remote\n"); + System.out.printf("start remote %7.3f\n", frequency); if (frequency == 0.0) frequency = AltosPreferences.frequency(device.getSerial()); set_radio_frequency(frequency); @@ -422,7 +425,7 @@ public class AltosSerial implements Runnable { remote = true; } - public void stop_remote() { + public void stop_remote() throws InterruptedException { if (debug) System.out.printf("stop remote\n"); try {