mirror of
https://github.com/betaflight/betaflight.git
synced 2025-07-23 16:25:31 +03:00
Merge pull request #7918 from etracer65/unify_lowpass_settings
Unify lowpass settings regardless of whether USE_DYN_LPF is defined
This commit is contained in:
commit
2eb8762d6f
3 changed files with 14 additions and 27 deletions
|
@ -201,10 +201,6 @@ static void validateAndFixConfig(void)
|
|||
if (pidProfilesMutable(i)->dyn_lpf_dterm_min_hz > pidProfilesMutable(i)->dyn_lpf_dterm_max_hz) {
|
||||
pidProfilesMutable(i)->dyn_lpf_dterm_min_hz = 0;
|
||||
}
|
||||
|
||||
if (pidProfilesMutable(i)->dyn_lpf_dterm_min_hz > 0) {
|
||||
pidProfilesMutable(i)->dterm_lowpass_hz = 0;
|
||||
}
|
||||
#endif
|
||||
|
||||
if (pidProfilesMutable(i)->motor_output_limit > 100 || pidProfilesMutable(i)->motor_output_limit == 0) {
|
||||
|
@ -491,10 +487,6 @@ void validateAndFixGyroConfig(void)
|
|||
if (gyroConfig()->dyn_lpf_gyro_min_hz > gyroConfig()->dyn_lpf_gyro_max_hz) {
|
||||
gyroConfigMutable()->dyn_lpf_gyro_min_hz = 0;
|
||||
}
|
||||
|
||||
if (gyroConfig()->dyn_lpf_gyro_min_hz > 0) {
|
||||
gyroConfigMutable()->gyro_lowpass_hz = 0;
|
||||
}
|
||||
#endif
|
||||
|
||||
if (gyroConfig()->gyro_hardware_lpf == GYRO_HARDWARE_LPF_1KHZ_SAMPLE) {
|
||||
|
|
|
@ -181,10 +181,13 @@ void resetPidProfile(pidProfile_t *pidProfile)
|
|||
.abs_control_error_limit = 20,
|
||||
.abs_control_cutoff = 11,
|
||||
.antiGravityMode = ANTI_GRAVITY_SMOOTH,
|
||||
.dterm_lowpass_hz = 100, // dual PT1 filtering ON by default
|
||||
.dterm_lowpass2_hz = 200, // second Dterm LPF ON by default
|
||||
.dterm_filter_type = FILTER_PT1,
|
||||
.dterm_filter2_type = FILTER_PT1,
|
||||
.dterm_lowpass_hz = 150, // NOTE: dynamic lpf is enabled by default so this setting is actually
|
||||
// overridden and the static lowpass 1 is disabled. We can't set this
|
||||
// value to 0 otherwise Configurator versions 10.4 and earlier will also
|
||||
// reset the lowpass filter type to PT1 overriding the desired BIQUAD setting.
|
||||
.dterm_lowpass2_hz = 150, // second Dterm LPF ON by default
|
||||
.dterm_filter_type = FILTER_BIQUAD,
|
||||
.dterm_filter2_type = FILTER_BIQUAD,
|
||||
.dyn_lpf_dterm_min_hz = 150,
|
||||
.dyn_lpf_dterm_max_hz = 250,
|
||||
.launchControlMode = LAUNCH_CONTROL_MODE_NORMAL,
|
||||
|
@ -202,12 +205,6 @@ void resetPidProfile(pidProfile_t *pidProfile)
|
|||
.auto_profile_cell_count = AUTO_PROFILE_CELL_COUNT_STAY,
|
||||
.transient_throttle_limit = 15,
|
||||
);
|
||||
#ifdef USE_DYN_LPF
|
||||
pidProfile->dterm_lowpass_hz = 0;
|
||||
pidProfile->dterm_lowpass2_hz = 150;
|
||||
pidProfile->dterm_filter_type = FILTER_BIQUAD;
|
||||
pidProfile->dterm_filter2_type = FILTER_BIQUAD;
|
||||
#endif
|
||||
#ifndef USE_D_MIN
|
||||
pidProfile->pid[PID_ROLL].D = 30;
|
||||
pidProfile->pid[PID_PITCH].D = 32;
|
||||
|
|
|
@ -203,10 +203,13 @@ void pgResetFn_gyroConfig(gyroConfig_t *gyroConfig)
|
|||
gyroConfig->gyroMovementCalibrationThreshold = 48;
|
||||
gyroConfig->gyro_sync_denom = GYRO_SYNC_DENOM_DEFAULT;
|
||||
gyroConfig->gyro_hardware_lpf = GYRO_HARDWARE_LPF_NORMAL;
|
||||
gyroConfig->gyro_lowpass_type = FILTER_PT1;
|
||||
gyroConfig->gyro_lowpass_hz = 100;
|
||||
gyroConfig->gyro_lowpass2_type = FILTER_PT1;
|
||||
gyroConfig->gyro_lowpass2_hz = 300;
|
||||
gyroConfig->gyro_lowpass_type = FILTER_BIQUAD;
|
||||
gyroConfig->gyro_lowpass_hz = 150; // NOTE: dynamic lpf is enabled by default so this setting is actually
|
||||
// overridden and the static lowpass 1 is disabled. We can't set this
|
||||
// value to 0 otherwise Configurator versions 10.4 and earlier will also
|
||||
// reset the lowpass filter type to PT1 overriding the desired BIQUAD setting.
|
||||
gyroConfig->gyro_lowpass2_type = FILTER_BIQUAD;
|
||||
gyroConfig->gyro_lowpass2_hz = 0;
|
||||
gyroConfig->gyro_high_fsr = false;
|
||||
gyroConfig->gyro_to_use = GYRO_CONFIG_USE_GYRO_DEFAULT;
|
||||
gyroConfig->gyro_soft_notch_hz_1 = 0;
|
||||
|
@ -223,11 +226,6 @@ void pgResetFn_gyroConfig(gyroConfig_t *gyroConfig)
|
|||
gyroConfig->dyn_notch_width_percent = 8;
|
||||
gyroConfig->dyn_notch_q = 120;
|
||||
gyroConfig->dyn_notch_min_hz = 150;
|
||||
#ifdef USE_DYN_LPF
|
||||
gyroConfig->gyro_lowpass_hz = 0;
|
||||
gyroConfig->gyro_lowpass_type = FILTER_BIQUAD;
|
||||
gyroConfig->gyro_lowpass2_hz = 0;
|
||||
#endif
|
||||
gyroConfig->gyro_filter_debug_axis = FD_ROLL;
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue