diff --git a/src/modules/systemlib/mixer/mixer_helicopter.cpp b/src/modules/systemlib/mixer/mixer_helicopter.cpp index 3baf911df1..aacada87ab 100644 --- a/src/modules/systemlib/mixer/mixer_helicopter.cpp +++ b/src/modules/systemlib/mixer/mixer_helicopter.cpp @@ -252,7 +252,7 @@ HelicopterMixer::mix(float *outputs, unsigned space) /* Local throttle curve gradient and offset */ float tg = (_mixer_info.throttle_curve[idx + 1] - _mixer_info.throttle_curve[idx]) / 0.25f; float to = (_mixer_info.throttle_curve[idx]) - (tg * idx * 0.25f); - float throttle = constrain((tg * thrust_cmd + to), 0.0f, 1.0f); + float throttle = constrain(2.0f * (tg * thrust_cmd + to) - 1.0f, -1.0f, 1.0f); /* Local pitch curve gradient and offset */ float pg = (_mixer_info.pitch_curve[idx + 1] - _mixer_info.pitch_curve[idx]) / 0.25f;