import javax.swing.*;
import javax.swing.filechooser.FileNameExtensionFilter;
import javax.swing.table.*;
+import org.altusmetrum.AltosLib.*;
import libaltosJNI.*;
* threads.
*/
-public class AltosSerial implements Runnable {
+public class AltosSerial implements Runnable, AltosLink {
static java.util.List<String> devices_opened = Collections.synchronizedList(new LinkedList<String>());
boolean monitor_mode;
int telemetry;
double frequency;
- static boolean debug;
+ public static boolean debug;
boolean remote;
LinkedList<String> pending_output = new LinkedList<String>();
Frame frame;
int cal) {
if (debug)
System.out.printf("set_radio_frequency %7.3f (freq %b) (set %b) %d\n", frequency, has_frequency, has_setting, cal);
+ if (frequency == 0)
+ return;
if (has_frequency)
set_radio_freq((int) Math.floor (frequency * 1000));
else if (has_setting)
public void set_radio_frequency(double in_frequency) throws InterruptedException, TimeoutException {
frequency = in_frequency;
+ if (frequency == 0.0)
+ frequency = AltosPreferences.frequency(device.getSerial());
config_data();
set_radio_frequency(frequency,
config_data.radio_frequency != 0,
if (debug)
System.out.printf("start remote %7.3f\n", frequency);
if (frequency == 0.0)
- frequency = AltosPreferences.frequency(device.getSerial());
+ frequency = AltosUIPreferences.frequency(device.getSerial());
set_radio_frequency(frequency);
- set_callsign(AltosPreferences.callsign());
+ set_callsign(AltosUIPreferences.callsign());
printf("p\nE 0\n");
flush_input();
remote = true;