From 4ff280209511e242205da2c38ee10b8b2a649735 Mon Sep 17 00:00:00 2001 From: borisbstyle Date: Tue, 9 Aug 2016 16:18:06 +0200 Subject: [PATCH] Fix CPU bug due toe reinitialising of filters --- src/main/config/config.c | 2 +- src/main/flight/pid.c | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/src/main/config/config.c b/src/main/config/config.c index b8b5cf11e..6ffaf93d2 100755 --- a/src/main/config/config.c +++ b/src/main/config/config.c @@ -247,7 +247,7 @@ static void resetPidProfile(pidProfile_t *pidProfile) pidProfile->dtermSetpointWeight = 120; pidProfile->yawRateAccelLimit = 220; pidProfile->rateAccelLimit = 0; - pidProfile->toleranceBand = 15; + pidProfile->toleranceBand = 0; pidProfile->toleranceBandReduction = 40; pidProfile->zeroCrossAllowanceCount = 2; pidProfile->itermThrottleGain = 0; diff --git a/src/main/flight/pid.c b/src/main/flight/pid.c index 0f91875e2..09364a8b3 100644 --- a/src/main/flight/pid.c +++ b/src/main/flight/pid.c @@ -116,11 +116,13 @@ void initFilters(const pidProfile_t *pidProfile) { if (pidProfile->dterm_notch_hz && !dtermNotchInitialised) { float notchQ = filterGetNotchQ(pidProfile->dterm_notch_hz, pidProfile->dterm_notch_cutoff); for (axis = 0; axis < 3; axis++) biquadFilterInit(&dtermFilterNotch[axis], pidProfile->dterm_notch_hz, gyro.targetLooptime, notchQ, FILTER_NOTCH); + dtermNotchInitialised = true; } if (pidProfile->dterm_filter_type == FILTER_BIQUAD) { if (pidProfile->dterm_lpf_hz && !dtermBiquadLpfInitialised) { for (axis = 0; axis < 3; axis++) biquadFilterInitLPF(&dtermFilterLpf[axis], pidProfile->dterm_lpf_hz, gyro.targetLooptime); + dtermBiquadLpfInitialised = true; } } }