projects
/
fw
/
altos
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge branch 'buttonbox' of git://git.gag.com/fw/altos into buttonbox
[fw/altos]
/
ao-tools
/
altosui
/
AltosIgnite.java
diff --git
a/ao-tools/altosui/AltosIgnite.java
b/ao-tools/altosui/AltosIgnite.java
index 8e92ec1b71531df85a3bdb210521a380876338e4..3cbd8a751e1e53af63fa54c4de70ffcc3b0bab80 100644
(file)
--- a/
ao-tools/altosui/AltosIgnite.java
+++ b/
ao-tools/altosui/AltosIgnite.java
@@
-24,6
+24,7
@@
public class AltosIgnite {
AltosDevice device;
AltosSerial serial;
boolean remote;
AltosDevice device;
AltosSerial serial;
boolean remote;
+ boolean serial_started;
final static int None = 0;
final static int Apogee = 1;
final static int Main = 2;
final static int None = 0;
final static int Apogee = 1;
final static int Main = 2;
@@
-34,15
+35,18
@@
public class AltosIgnite {
final static int Open = 3;
private void start_serial() throws InterruptedException {
final static int Open = 3;
private void start_serial() throws InterruptedException {
+ serial_started = true;
if (remote) {
if (remote) {
- serial.set_channel(AltosPreferences.channel(device.getSerial()));
- serial.set_callsign(AltosPreferences.callsign());
- serial.printf("~\np\n");
+ serial.set_radio();
+ serial.printf("p\nE 0\n");
serial.flush_input();
}
}
private void stop_serial() throws InterruptedException {
serial.flush_input();
}
}
private void stop_serial() throws InterruptedException {
+ if (!serial_started)
+ return;
+ serial_started = false;
if (serial == null)
return;
if (remote) {
if (serial == null)
return;
if (remote) {
@@
-100,7
+104,7
@@
public class AltosIgnite {
start_serial();
serial.printf("t\n");
for (;;) {
start_serial();
serial.printf("t\n");
for (;;) {
- String line = serial.get_reply(
1
000);
+ String line = serial.get_reply(
5
000);
if (line == null)
throw new TimeoutException();
if (get_string(line, "Igniter: drogue Status: ", status_name))
if (line == null)
throw new TimeoutException();
if (get_string(line, "Igniter: drogue Status: ", status_name))
@@
-149,6
+153,10
@@
public class AltosIgnite {
}
public void close() {
}
public void close() {
+ try {
+ stop_serial();
+ } catch (InterruptedException ie) {
+ }
serial.close();
serial = null;
}
serial.close();
serial = null;
}