diff --git a/libraries/AP_NavEKF3/AP_NavEKF3.cpp b/libraries/AP_NavEKF3/AP_NavEKF3.cpp index d3a05338d9..bbece351a2 100644 --- a/libraries/AP_NavEKF3/AP_NavEKF3.cpp +++ b/libraries/AP_NavEKF3/AP_NavEKF3.cpp @@ -39,7 +39,7 @@ #define FLOW_I_GATE_DEFAULT 300 #define CHECK_SCALER_DEFAULT 100 #define FLOW_USE_DEFAULT 1 -#define WIND_P_NSE_DEFAULT 1.0 +#define WIND_P_NSE_DEFAULT 0.5 #elif APM_BUILD_TYPE(APM_BUILD_Rover) // rover defaults diff --git a/libraries/AP_NavEKF3/AP_NavEKF3_Control.cpp b/libraries/AP_NavEKF3/AP_NavEKF3_Control.cpp index 91375edc54..5f8228b1af 100644 --- a/libraries/AP_NavEKF3/AP_NavEKF3_Control.cpp +++ b/libraries/AP_NavEKF3/AP_NavEKF3_Control.cpp @@ -66,7 +66,7 @@ void NavEKF3_core::setWindMagStateLearningMode() inhibitWindStates = true; updateStateIndexLim(); } else if (inhibitWindStates && canEstimateWind && - sq(stateStruct.velocity.x) + sq(stateStruct.velocity.y) > sq(5.0f)) { + (sq(stateStruct.velocity.x) + sq(stateStruct.velocity.y) > sq(5.0f) || dragFusionEnabled)) { inhibitWindStates = false; updateStateIndexLim(); // set states and variances