diff --git a/src/main/config/config.c b/src/main/config/config.c index d476a6ed7d..efc8865ebb 100755 --- a/src/main/config/config.c +++ b/src/main/config/config.c @@ -133,7 +133,7 @@ static uint32_t activeFeaturesLatch = 0; static uint8_t currentControlRateProfileIndex = 0; controlRateConfig_t *currentControlRateProfile; -static const uint8_t EEPROM_CONF_VERSION = 114; +static const uint8_t EEPROM_CONF_VERSION = 115; static void resetAccelerometerTrims(flightDynamicsTrims_t *accelerometerTrims) { @@ -148,13 +148,13 @@ static void resetPidProfile(pidProfile_t *pidProfile) pidProfile->P8[ROLL] = 40; pidProfile->I8[ROLL] = 30; - pidProfile->D8[ROLL] = 18; + pidProfile->D8[ROLL] = 23; pidProfile->P8[PITCH] = 40; pidProfile->I8[PITCH] = 30; - pidProfile->D8[PITCH] = 18; + pidProfile->D8[PITCH] = 23; pidProfile->P8[YAW] = 100; pidProfile->I8[YAW] = 50; - pidProfile->D8[YAW] = 10; + pidProfile->D8[YAW] = 12; pidProfile->P8[PIDALT] = 50; pidProfile->I8[PIDALT] = 0; pidProfile->D8[PIDALT] = 0; diff --git a/src/main/flight/pid.c b/src/main/flight/pid.c index 48986f5fdf..a85a95bcbe 100644 --- a/src/main/flight/pid.c +++ b/src/main/flight/pid.c @@ -318,7 +318,7 @@ static void pidRewrite(pidProfile_t *pidProfile, controlRateConfig_t *controlRat delta = filterApplyPt1(delta, &DTermState[axis], pidProfile->dterm_cut_hz, dT); } - DTerm = (delta * 3 * pidProfile->D8[axis] * PIDweight[axis] / 100) >> 8; // Multiplied by 3 to match old scaling + DTerm = (delta * 2 * pidProfile->D8[axis] * PIDweight[axis] / 100) >> 8; // Multiplied by 2 to approximately match old scaling // -----calculate total PID output axisPID[axis] = PTerm + ITerm + DTerm;