diff options
-rw-r--r-- | src/ao_flight.c | 4 | ||||
-rw-r--r-- | src/ao_kalman.c | 2 |
2 files changed, 3 insertions, 3 deletions
diff --git a/src/ao_flight.c b/src/ao_flight.c index af3d6bfa..85c1825b 100644 --- a/src/ao_flight.c +++ b/src/ao_flight.c @@ -54,7 +54,7 @@ __pdata uint8_t ao_flight_force_idle; /* Landing is detected by getting constant readings from both pressure and accelerometer * for a fairly long time (AO_INTERVAL_TICKS) */ -#define AO_INTERVAL_TICKS AO_SEC_TO_TICKS(5) +#define AO_INTERVAL_TICKS AO_SEC_TO_TICKS(10) #define abs(a) ((a) < 0 ? -(a) : (a)) @@ -286,7 +286,7 @@ ao_flight(void) ao_interval_max_height = ao_avg_height; if ((int16_t) (ao_sample_tick - ao_interval_end) >= 0) { - if (ao_interval_max_height - ao_interval_min_height <= AO_M_TO_HEIGHT(2)) + if (ao_interval_max_height - ao_interval_min_height <= AO_M_TO_HEIGHT(4)) { ao_flight_state = ao_flight_landed; diff --git a/src/ao_kalman.c b/src/ao_kalman.c index 203d727a..ee01949e 100644 --- a/src/ao_kalman.c +++ b/src/ao_kalman.c @@ -277,7 +277,7 @@ ao_kalman(void) ao_accel = from_fix(ao_k_accel); if (ao_height > ao_max_height) ao_max_height = ao_height; - ao_avg_height_scaled = ao_avg_height_scaled - ao_avg_height + ao_height; + ao_avg_height_scaled = ao_avg_height_scaled - ao_avg_height + ao_sample_height; #ifdef AO_FLIGHT_TEST if (ao_sample_tick - ao_sample_prev_tick > 50) ao_avg_height = (ao_avg_height_scaled + 1) >> 1; |