From 005731cfe50e28ce170fe148ccedf3bbc688684a Mon Sep 17 00:00:00 2001 From: mikeller Date: Sat, 14 Jan 2017 01:23:55 +1300 Subject: [PATCH] Adjusted PID scaling for the servo mixer. --- src/main/flight/pid.h | 1 + src/main/flight/servos.c | 6 +++--- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/src/main/flight/pid.h b/src/main/flight/pid.h index fde344147..5ebe5cad3 100644 --- a/src/main/flight/pid.h +++ b/src/main/flight/pid.h @@ -21,6 +21,7 @@ #define PID_CONTROLLER_BETAFLIGHT 1 #define PID_MIXER_SCALING 100.0f +#define PID_SERVO_MIXER_SCALING 7.0f #define YAW_P_LIMIT_MIN 100 // Maximum value for yaw P limiter #define YAW_P_LIMIT_MAX 500 // Maximum value for yaw P limiter #define PIDSUM_LIMIT 0.5f diff --git a/src/main/flight/servos.c b/src/main/flight/servos.c index 314857d42..2ba83eb02 100755 --- a/src/main/flight/servos.c +++ b/src/main/flight/servos.c @@ -341,9 +341,9 @@ STATIC_UNIT_TESTED void servoMixer(void) input[INPUT_STABILIZED_YAW] = rcCommand[YAW]; } else { // Assisted modes (gyro only or gyro+acc according to AUX configuration in Gui - input[INPUT_STABILIZED_ROLL] = axisPIDf[ROLL]; - input[INPUT_STABILIZED_PITCH] = axisPIDf[PITCH]; - input[INPUT_STABILIZED_YAW] = axisPIDf[YAW]; + input[INPUT_STABILIZED_ROLL] = axisPIDf[ROLL] * PID_SERVO_MIXER_SCALING; + input[INPUT_STABILIZED_PITCH] = axisPIDf[PITCH] * PID_SERVO_MIXER_SCALING; + input[INPUT_STABILIZED_YAW] = axisPIDf[YAW] * PID_SERVO_MIXER_SCALING; // Reverse yaw servo when inverted in 3D mode if (feature(FEATURE_3D) && (rcData[THROTTLE] < rxConfig->midrc)) {