X-Git-Url: https://git.gag.com/?p=fw%2Faltos;a=blobdiff_plain;f=altoslib%2FAltosConfigData.java;fp=altoslib%2FAltosConfigData.java;h=83f3ca07a55dfd35b3541dc70e6c239ae0203ec3;hp=5d58566ecb3dc0b9836e1bd676a5857f04a1cde1;hb=10a10667a28f82c24d895e44617e68c7c1848c45;hpb=b3297909e58a2709d340f65181c22ef82341afb9 diff --git a/altoslib/AltosConfigData.java b/altoslib/AltosConfigData.java index 5d58566e..83f3ca07 100644 --- a/altoslib/AltosConfigData.java +++ b/altoslib/AltosConfigData.java @@ -796,33 +796,28 @@ public class AltosConfigData { has_setting, radio_calibration); /* When remote, reset the dongle frequency at the same time */ - if (remote) { - link.flush_output(); + if (remote && frequency != link.frequency) { link.stop_remote(); link.set_radio_frequency(frequency); - link.flush_output(); link.start_remote(); } } if (telemetry_rate != AltosLib.MISSING) { link.printf("c T %d\n", telemetry_rate); - if (remote) { - link.flush_output(); + if (remote && telemetry_rate != link.telemetry_rate) { link.stop_remote(); link.set_telemetry_rate(telemetry_rate); - link.flush_output(); link.start_remote(); } } if (callsign != null) { link.printf("c c %s\n", callsign); - if (remote) { - link.flush_output(); + if (remote && !callsign.equals(link.callsign)) { + System.out.printf("changing link callsign from %s to %s\n", link.callsign, callsign); link.stop_remote(); link.set_callsign(callsign); - link.flush_output(); link.start_remote(); } } @@ -882,7 +877,7 @@ public class AltosConfigData { /* UI doesn't support accel cal */ link.printf("c w\n"); - link.flush_output(); + read_link(link, "Saved"); } public AltosConfigData(AltosLink link) throws InterruptedException, TimeoutException {