projects
/
fw
/
altos
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
altos: Add pyro code testing to ao_flight_test for TeleMega
[fw/altos]
/
altoslib
/
AltosState.java
diff --git
a/altoslib/AltosState.java
b/altoslib/AltosState.java
index a3b9a8c07efafdb54f889094c09e1b7ba6a505f9..825306be998559373141bba449553019605fa18c 100644
(file)
--- a/
altoslib/AltosState.java
+++ b/
altoslib/AltosState.java
@@
-54,6
+54,7
@@
public class AltosState {
public double max_baro_speed;
public AltosGPS gps;
public double max_baro_speed;
public AltosGPS gps;
+ public int gps_sequence;
public AltosIMU imu;
public AltosMag mag;
public AltosIMU imu;
public AltosMag mag;
@@
-133,6
+134,7
@@
public class AltosState {
npad = prev_state.npad;
ngps = prev_state.ngps;
gps = prev_state.gps;
npad = prev_state.npad;
ngps = prev_state.ngps;
gps = prev_state.gps;
+ gps_sequence = prev_state.gps_sequence;
pad_lat = prev_state.pad_lat;
pad_lon = prev_state.pad_lon;
pad_alt = prev_state.pad_alt;
pad_lat = prev_state.pad_lat;
pad_lon = prev_state.pad_lon;
pad_alt = prev_state.pad_alt;
@@
-187,6
+189,7
@@
public class AltosState {
npad = 0;
ngps = 0;
gps = null;
npad = 0;
ngps = 0;
gps = null;
+ gps_sequence = 0;
baro_speed = AltosRecord.MISSING;
accel_speed = AltosRecord.MISSING;
pad_alt = AltosRecord.MISSING;
baro_speed = AltosRecord.MISSING;
accel_speed = AltosRecord.MISSING;
pad_alt = AltosRecord.MISSING;
@@
-199,7
+202,7
@@
public class AltosState {
time = tick / 100.0;
time = tick / 100.0;
- if (
cur.new_gps
&& (state < AltosLib.ao_flight_boost)) {
+ if (
data.gps != null && data.gps_sequence != gps_sequence
&& (state < AltosLib.ao_flight_boost)) {
/* Track consecutive 'good' gps reports, waiting for 10 of them */
if (data.gps != null && data.gps.locked && data.gps.nsat >= 4)
/* Track consecutive 'good' gps reports, waiting for 10 of them */
if (data.gps != null && data.gps.locked && data.gps.nsat >= 4)
@@
-226,7
+229,7
@@
public class AltosState {
pad_alt = ground_altitude;
}
pad_alt = ground_altitude;
}
-
data.new_gps = fals
e;
+
gps_sequence = data.gps_sequenc
e;
gps_waiting = MIN_PAD_SAMPLES - npad;
if (gps_waiting < 0)
gps_waiting = MIN_PAD_SAMPLES - npad;
if (gps_waiting < 0)
@@
-252,8
+255,7
@@
public class AltosState {
range = -1;
gps_height = 0;
if (data.gps != null) {
range = -1;
gps_height = 0;
if (data.gps != null) {
- if (gps == null || !gps.locked || data.gps.locked)
- gps = data.gps;
+ gps = data.gps;
if (ngps > 0 && gps.locked) {
double h = height;
if (ngps > 0 && gps.locked) {
double h = height;