aboutsummaryrefslogtreecommitdiff
path: root/src/modules
diff options
context:
space:
mode:
authorLorenz Meier <lm@inf.ethz.ch>2014-06-24 20:47:22 +0200
committerLorenz Meier <lm@inf.ethz.ch>2014-06-24 20:47:22 +0200
commit32319722a60db2a43a2ac80a579eee09cb0a5dd0 (patch)
tree3b4aaae4e8902b62ce4ba28fb3e066f1fe920c30 /src/modules
parent11fa104a2aa12e266eb7dec150f08075ebfc4960 (diff)
downloadpx4-firmware-32319722a60db2a43a2ac80a579eee09cb0a5dd0.tar.gz
px4-firmware-32319722a60db2a43a2ac80a579eee09cb0a5dd0.tar.bz2
px4-firmware-32319722a60db2a43a2ac80a579eee09cb0a5dd0.zip
Retry fusion sooner on failures
Diffstat (limited to 'src/modules')
-rw-r--r--src/modules/ekf_att_pos_estimator/estimator_23states.cpp7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/modules/ekf_att_pos_estimator/estimator_23states.cpp b/src/modules/ekf_att_pos_estimator/estimator_23states.cpp
index 9be48cfea..1a2151017 100644
--- a/src/modules/ekf_att_pos_estimator/estimator_23states.cpp
+++ b/src/modules/ekf_att_pos_estimator/estimator_23states.cpp
@@ -925,9 +925,9 @@ void AttPosEKF::FuseVelposNED()
{
// declare variables used by fault isolation logic
- uint32_t gpsRetryTime = 30000; // time in msec before GPS fusion will be retried following innovation consistency failure
- uint32_t gpsRetryTimeNoTAS = 5000; // retry time if no TAS measurement available
- uint32_t hgtRetryTime = 5000; // height measurement retry time
+ uint32_t gpsRetryTime = 3000; // time in msec before GPS fusion will be retried following innovation consistency failure
+ uint32_t gpsRetryTimeNoTAS = 500; // retry time if no TAS measurement available
+ uint32_t hgtRetryTime = 500; // height measurement retry time
uint32_t horizRetryTime;
// declare variables used to check measurement errors
@@ -2587,6 +2587,7 @@ void AttPosEKF::GetFilterState(struct ekf_status_report *state)
for (unsigned i = 0; i < n_states; i++) {
current_ekf_state.states[i] = states[i];
}
+ current_ekf_state.n_states = n_states;
memcpy(state, &current_ekf_state, sizeof(*state));
}