diff options
| author | Keith Packard <keithp@keithp.com> | 2014-07-04 23:41:16 -0700 | 
|---|---|---|
| committer | Keith Packard <keithp@keithp.com> | 2014-07-05 00:38:10 -0700 | 
| commit | efb86669b5a74f244e2218f3385db633c36208af (patch) | |
| tree | 5dbec18cd814c927b8ceb390f9bedc94d3520396 /altosui/AltosConfigTD.java | |
| parent | 9557a24b02911a93d74ee29ce359e40266cb4fed (diff) | |
altosui: Support telemetry data rates
Add combo box to flight UI and flight hardware configuration UIs
Add telemetry rate to the TD/TBT config dialog
Signed-off-by: Keith Packard <keithp@keithp.com>
Diffstat (limited to 'altosui/AltosConfigTD.java')
| -rw-r--r-- | altosui/AltosConfigTD.java | 25 | 
1 files changed, 24 insertions, 1 deletions
| diff --git a/altosui/AltosConfigTD.java b/altosui/AltosConfigTD.java index 2976657c..397ed3db 100644 --- a/altosui/AltosConfigTD.java +++ b/altosui/AltosConfigTD.java @@ -62,6 +62,7 @@ public class AltosConfigTD implements ActionListener {  	int_ref		radio_calibration;  	int_ref		radio_setting;  	int_ref		radio_frequency; +	int_ref		telemetry_rate;  	string_ref	config_version;  	string_ref	version;  	string_ref	product; @@ -105,6 +106,7 @@ public class AltosConfigTD implements ActionListener {  		config_ui.set_version(version.get());  		config_ui.set_radio_frequency(frequency());  		config_ui.set_radio_calibration(radio_calibration.get()); +		config_ui.set_telemetry_rate(telemetry_rate.get());  		config_ui.set_clean();  		if (!made_visible) {  			made_visible = true; @@ -140,6 +142,7 @@ public class AltosConfigTD implements ActionListener {  			get_int(line, "Radio cal:", radio_calibration);  			get_int(line, "Frequency:", radio_frequency);  			get_int(line, "Radio setting:", radio_setting); +			get_int(line, "Telemetry rate:", telemetry_rate);  			get_string(line,"software-version", version);  			get_string(line,"product", product);  		} @@ -151,6 +154,7 @@ public class AltosConfigTD implements ActionListener {  		radio_setting.set(0);  		radio_frequency.set(0);  		radio_calibration.set(1186611); +		telemetry_rate.set(Altos.ao_telemetry_rate_38400);  		config_version.set("0.0");  		version.set("unknown");  		product.set("unknown"); @@ -178,6 +182,19 @@ public class AltosConfigTD implements ActionListener {  		}  	} +	synchronized int telemetry_rate() { +		System.out.printf("telemetry_rate: %d\n", telemetry_rate.get()); +		return telemetry_rate.get(); +	} + +	synchronized void set_telemetry_rate(int new_telemetry_rate){ +		int	rate = telemetry_rate.get(); + +		System.out.printf("set_telemetry_rate %d\n", new_telemetry_rate); +		if (rate >= 0) +			telemetry_rate.set(new_telemetry_rate); +	} +  	final static int	serial_mode_read = 0;  	final static int	serial_mode_save = 1;  	final static int	serial_mode_reboot = 2; @@ -218,6 +235,7 @@ public class AltosConfigTD implements ActionListener {  			 * available firmware version might place on the actual frequency  			 */  			config.set_frequency(AltosPreferences.frequency(serial.get())); +			config.set_telemetry_rate(AltosPreferences.telemetry_rate(serial.get()));  			config.process_line("all finished");  		} @@ -226,6 +244,8 @@ public class AltosConfigTD implements ActionListener {  			if (frequency != 0)  				AltosPreferences.set_frequency(serial.get(),  							       frequency); +			AltosPreferences.set_telemetry_rate(serial.get(), +							    telemetry_rate());  		}  		public void run () { @@ -279,6 +299,8 @@ public class AltosConfigTD implements ActionListener {  	void save_data() {  		double	freq = config_ui.radio_frequency();  		set_frequency(freq); +		int telemetry_rate = config_ui.telemetry_rate(); +		set_telemetry_rate(telemetry_rate);  		run_serial_thread(serial_mode_save);  	} @@ -311,6 +333,7 @@ public class AltosConfigTD implements ActionListener {  		radio_setting = new int_ref(0);  		radio_frequency = new int_ref(0);  		radio_calibration = new int_ref(1186611); +		telemetry_rate = new int_ref(AltosLib.ao_telemetry_rate_38400);  		config_version = new string_ref("0.0");  		version = new string_ref("unknown");  		product = new string_ref("unknown"); @@ -340,4 +363,4 @@ public class AltosConfigTD implements ActionListener {  			}  		}  	} -}
\ No newline at end of file +} | 
