summaryrefslogtreecommitdiff
path: root/altosui/AltosTelemetryReader.java
diff options
context:
space:
mode:
authorKeith Packard <keithp@keithp.com>2011-08-08 01:47:29 -0700
committerKeith Packard <keithp@keithp.com>2011-08-08 12:13:29 -0700
commit0e3e4f9c1e6a6bf972514f12c9d622258aa2aec2 (patch)
treec84c97e27556d0686bf26ea9e4f1af976cd9b1c7 /altosui/AltosTelemetryReader.java
parentf03ca0ab8799bfa5100eaa2577cfd7b9c37d05bf (diff)
altosui: Convert from channels to frequencies
Major areas: * Preferences are stored as frequencies instead of channels * Serial configuration is done using frequencies * UI is presented with frequency lists Signed-off-by: Keith Packard <keithp@keithp.com>
Diffstat (limited to 'altosui/AltosTelemetryReader.java')
-rw-r--r--altosui/AltosTelemetryReader.java27
1 files changed, 21 insertions, 6 deletions
diff --git a/altosui/AltosTelemetryReader.java b/altosui/AltosTelemetryReader.java
index 23524b2c..4512e761 100644
--- a/altosui/AltosTelemetryReader.java
+++ b/altosui/AltosTelemetryReader.java
@@ -27,6 +27,9 @@ class AltosTelemetryReader extends AltosFlightReader {
AltosSerial serial;
AltosLog log;
AltosRecord previous;
+ AltosConfigData config_data;
+ double frequency;
+ int telemetry;
LinkedBlockingQueue<AltosLine> telem;
@@ -49,18 +52,26 @@ class AltosTelemetryReader extends AltosFlightReader {
serial.close();
}
- void set_channel(int channel) {
- serial.set_channel(channel);
- AltosPreferences.set_channel(device.getSerial(), channel);
+ public void set_frequency(double in_frequency) throws InterruptedException, TimeoutException {
+ frequency = in_frequency;
+ serial.set_radio_frequency(frequency);
}
- void set_telemetry(int telemetry) {
+ void save_frequency() {
+ AltosPreferences.set_frequency(device.getSerial(), frequency);
+ }
+
+ void set_telemetry(int in_telemetry) {
+ telemetry = in_telemetry;
serial.set_telemetry(telemetry);
+ }
+
+ void save_telemetry() {
AltosPreferences.set_telemetry(device.getSerial(), telemetry);
}
public AltosTelemetryReader (AltosDevice in_device)
- throws FileNotFoundException, AltosSerialInUseException, IOException {
+ throws FileNotFoundException, AltosSerialInUseException, IOException, InterruptedException, TimeoutException {
device = in_device;
serial = new AltosSerial(device);
log = new AltosLog(serial);
@@ -68,7 +79,11 @@ class AltosTelemetryReader extends AltosFlightReader {
previous = null;
telem = new LinkedBlockingQueue<AltosLine>();
- serial.set_radio();
+ frequency = AltosPreferences.frequency(device.getSerial());
+ set_frequency(frequency);
+ telemetry = AltosPreferences.telemetry(device.getSerial());
+ set_telemetry(telemetry);
+ serial.set_callsign(AltosPreferences.callsign());
serial.add_monitor(telem);
}
}