X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=altosdroid%2Fsrc%2Forg%2Faltusmetrum%2FAltosDroid%2FAltosDroid.java;h=563ccd5a69749398e4b7f3bd3764f1475269eb39;hb=b1f1844aa514893228080704da3b3ccf855bda1e;hp=e10982f7cc8873832c99fa21e2937c260deab64f;hpb=cc674d8f991a3a055236ad8b51fecd99080540e1;p=fw%2Faltos diff --git a/altosdroid/src/org/altusmetrum/AltosDroid/AltosDroid.java b/altosdroid/src/org/altusmetrum/AltosDroid/AltosDroid.java index e10982f7..563ccd5a 100644 --- a/altosdroid/src/org/altusmetrum/AltosDroid/AltosDroid.java +++ b/altosdroid/src/org/altusmetrum/AltosDroid/AltosDroid.java @@ -49,7 +49,7 @@ import android.widget.Toast; import android.app.AlertDialog; import android.location.Location; -import org.altusmetrum.altoslib_1.*; +import org.altusmetrum.altoslib_5.*; public class AltosDroid extends FragmentActivity { // Debugging @@ -147,7 +147,7 @@ public class AltosDroid extends FragmentActivity { case MSG_CRC_ERROR: case MSG_UPDATE_AGE: if (ad.saved_state != null) { - ad.mAgeView.setText(String.format("%d", (System.currentTimeMillis() - ad.saved_state.report_time + 500) / 1000)); + ad.mAgeView.setText(String.format("%d", (System.currentTimeMillis() - ad.saved_state.received_time + 500) / 1000)); } break; } @@ -243,11 +243,11 @@ public class AltosDroid extends FragmentActivity { } if (state != null) { - mCallsignView.setText(state.data.callsign); - mSerialView.setText(String.format("%d", state.data.serial)); - mFlightView.setText(String.format("%d", state.data.flight)); - mStateView.setText(state.data.state()); - mRSSIView.setText(String.format("%d", state.data.rssi)); + mCallsignView.setText(state.callsign); + mSerialView.setText(String.format("%d", state.serial)); + mFlightView.setText(String.format("%d", state.flight)); + mStateView.setText(state.state_name()); + mRSSIView.setText(String.format("%d", state.rssi)); } for (AltosDroidTab mTab : mTabs) @@ -266,7 +266,7 @@ public class AltosDroid extends FragmentActivity { static String pos(double p, String pos, String neg) { String h = pos; - if (p == AltosRecord.MISSING) + if (p == AltosLib.MISSING) return ""; if (p < 0) { h = neg; @@ -278,13 +278,13 @@ public class AltosDroid extends FragmentActivity { } static String number(String format, double value) { - if (value == AltosRecord.MISSING) + if (value == AltosLib.MISSING) return ""; return String.format(format, value); } static String integer(String format, int value) { - if (value == AltosRecord.MISSING) + if (value == AltosLib.MISSING) return ""; return String.format(format, value); } @@ -476,6 +476,33 @@ public class AltosDroid extends FragmentActivity { } } + void setBaud(int baud) { + try { + mService.send(Message.obtain(null, TelemetryService.MSG_SETBAUD, baud)); + } catch (RemoteException e) { + } + } + + void setBaud(String baud) { + try { + int value = Integer.parseInt(baud); + int rate = AltosLib.ao_telemetry_rate_38400; + switch (value) { + case 2400: + rate = AltosLib.ao_telemetry_rate_2400; + break; + case 9600: + rate = AltosLib.ao_telemetry_rate_9600; + break; + case 38400: + rate = AltosLib.ao_telemetry_rate_38400; + break; + } + setBaud(rate); + } catch (NumberFormatException e) { + } + } + @Override public boolean onOptionsItemSelected(MenuItem item) { Intent serverIntent = null; @@ -501,16 +528,36 @@ public class AltosDroid extends FragmentActivity { "Channel 9 (435.450MHz)" }; - AlertDialog.Builder builder = new AlertDialog.Builder(this); - builder.setTitle("Pick a frequency"); - builder.setItems(frequencies, + AlertDialog.Builder builder_freq = new AlertDialog.Builder(this); + builder_freq.setTitle("Pick a frequency"); + builder_freq.setItems(frequencies, new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int item) { setFrequency(frequencies[item]); } }); - AlertDialog alert = builder.create(); - alert.show(); + AlertDialog alert_freq = builder_freq.create(); + alert_freq.show(); + return true; + case R.id.select_rate: + // Set the TBT baud rate + + final String[] rates = { + "38400", + "9600", + "2400", + }; + + AlertDialog.Builder builder_rate = new AlertDialog.Builder(this); + builder_rate.setTitle("Pick a baud rate"); + builder_rate.setItems(rates, + new DialogInterface.OnClickListener() { + public void onClick(DialogInterface dialog, int item) { + setBaud(rates[item]); + } + }); + AlertDialog alert_rate = builder_rate.create(); + alert_rate.show(); return true; } return false;