File tree Expand file tree Collapse file tree 1 file changed +11
-0
lines changed
Expand file tree Collapse file tree 1 file changed +11
-0
lines changed Original file line number Diff line number Diff line change @@ -540,6 +540,17 @@ void FAST_CODE mixTable()
540540
541541 motorValueWhenStopped = getReversibleMotorsThrottleDeadband ();
542542 mixerThrottleCommand = constrain (rcCommand [THROTTLE ], throttleRangeMin , throttleRangeMax );
543+
544+ #ifdef USE_DSHOT
545+ if (isMotorProtocolDigital () && feature (FEATURE_REVERSIBLE_MOTORS ) && reversibleMotorsThrottleState == MOTOR_DIRECTION_BACKWARD ) {
546+ /*
547+ * We need to start the throttle output from stick input to start in the middle of the stick at the low and.
548+ * Without this, it's starting at the high side.
549+ */
550+ int throttleDistanceToMax = throttleRangeMax - rcCommand [THROTTLE ];
551+ mixerThrottleCommand = throttleRangeMin + throttleDistanceToMax ;
552+ }
553+ #endif
543554 } else {
544555 mixerThrottleCommand = rcCommand [THROTTLE ];
545556 throttleRangeMin = throttleIdleValue ;
You can’t perform that action at this time.
0 commit comments