summaryrefslogtreecommitdiff
path: root/altoslib/AltosLink.java
diff options
context:
space:
mode:
authorKeith Packard <keithp@keithp.com>2012-06-04 19:28:58 -0700
committerKeith Packard <keithp@keithp.com>2012-06-04 19:28:58 -0700
commit7a19d6790a9800f925c8de24aac71796351e2c04 (patch)
tree52df1b02c66bc9db57c88f025b999b2ec0a02cb8 /altoslib/AltosLink.java
parentf86dac643081987c8994ab57a96640d5e91b342a (diff)
altos: More cleanups for moving files to altoslib
Signed-off-by: Keith Packard <keithp@keithp.com>
Diffstat (limited to 'altoslib/AltosLink.java')
-rw-r--r--altoslib/AltosLink.java25
1 files changed, 25 insertions, 0 deletions
diff --git a/altoslib/AltosLink.java b/altoslib/AltosLink.java
index 9b80e916..77b400fc 100644
--- a/altoslib/AltosLink.java
+++ b/altoslib/AltosLink.java
@@ -141,6 +141,31 @@ public abstract class AltosLink {
return AltosLib.telemetry_len(telemetry);
}
+ private void set_radio_freq(int frequency) {
+ if (monitor_mode)
+ printf("m 0\nc F %d\nm %x\n",
+ frequency, telemetry_len());
+ else
+ printf("c F %d\n", frequency);
+ flush_output();
+ }
+
+ public void set_radio_frequency(double frequency,
+ boolean has_frequency,
+ boolean has_setting,
+ 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)
+ set_radio_setting(AltosConvert.radio_frequency_to_setting(frequency, cal));
+ else
+ set_channel(AltosConvert.radio_frequency_to_channel(frequency));
+ }
+
public void set_telemetry(int in_telemetry) {
telemetry = in_telemetry;
if (monitor_mode)