mirror of
https://github.com/betaflight/betaflight.git
synced 2025-07-20 06:45:16 +03:00
set lower filter cutoff instead of Q
fix error in gyro pt1 filter
This commit is contained in:
parent
258e05e9c5
commit
0e905e01d3
10 changed files with 21 additions and 20 deletions
|
@ -114,10 +114,8 @@ void initFilters(const pidProfile_t *pidProfile) {
|
|||
int axis;
|
||||
|
||||
if (pidProfile->dterm_notch_hz && !dtermNotchInitialised) {
|
||||
float octaves = log2f(((float) pidProfile->dterm_notch_hz + pidProfile->dterm_notch_bw / 2) / ((float) pidProfile->dterm_notch_hz - pidProfile->dterm_notch_bw / 2));
|
||||
float dtermNotchQ = sqrtf(powf(2, octaves)) / (powf(2, octaves) - 1);
|
||||
|
||||
for (axis = 0; axis < 3; axis++) biquadFilterInit(&dtermFilterNotch[axis], pidProfile->dterm_notch_hz, gyro.targetLooptime, dtermNotchQ, FILTER_NOTCH);
|
||||
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);
|
||||
}
|
||||
|
||||
if (pidProfile->dterm_filter_type == FILTER_BIQUAD) {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue