diff options
| author | Keith Packard <keithp@keithp.com> | 2012-03-27 11:58:39 -0700 | 
|---|---|---|
| committer | Keith Packard <keithp@keithp.com> | 2012-03-27 11:58:39 -0700 | 
| commit | d77a4ea206d627635159f35c76c744687d4e633b (patch) | |
| tree | b8dbf66c2cfeb7817c6ff0e443b6f1a63f910975 /altosui/AltosTelemetryReader.java | |
| parent | d8ebb83e64d66fa159e75aa560d39d80bb6d9d04 (diff) | |
altosui: Show only supported telemetry version
Make it clear in the UI which telemetry versions are supported,
providing the combobox only for new firmware which supports all versions.
Signed-off-by: Keith Packard <keithp@keithp.com>
Diffstat (limited to 'altosui/AltosTelemetryReader.java')
| -rw-r--r-- | altosui/AltosTelemetryReader.java | 27 | 
1 files changed, 27 insertions, 0 deletions
| diff --git a/altosui/AltosTelemetryReader.java b/altosui/AltosTelemetryReader.java index 1f327a67..85dc9cbc 100644 --- a/altosui/AltosTelemetryReader.java +++ b/altosui/AltosTelemetryReader.java @@ -56,6 +56,33 @@ class AltosTelemetryReader extends AltosFlightReader {  		serial.set_radio_frequency(frequency);  	} +	public boolean supports_telemetry(int telemetry) { + +		try { +			/* Version 1.0 or later firmware supports all telemetry formats */ +			if (serial.config_data().compare_version("1.0") >= 0) +				return true; + +			/* Version 0.9 firmware only supports 0.9 telemetry */ +			if (serial.config_data().compare_version("0.9") >= 0) { +				if (telemetry == Altos.ao_telemetry_0_9) +					return true; +				else +					return false; +			} + +			/* Version 0.8 firmware only supports 0.8 telemetry */ +			if (telemetry == Altos.ao_telemetry_0_8) +				return true; +			else +				return false; +		} catch (InterruptedException ie) { +			return true; +		} catch (TimeoutException te) { +			return true; +		} +	} +  	void save_frequency() {  		AltosPreferences.set_frequency(device.getSerial(), frequency);  	} | 
