File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -901,14 +901,19 @@ static void refloat_thd(void *arg) {
901901 break ;
902902
903903 case (STATE_RUNNING ):
904- reverse_stop_update (
905- & d -> reverse_stop ,
906- d -> motor .distance ,
907- d -> motor .erpm ,
908- d -> setpoint_target_interpolated ,
909- & d -> time ,
910- d -> float_conf .fault_reversestop_enabled
911- );
904+ // Only update reverse stop after centering, as the centering angle
905+ // change registers as negative distance, which progresses Reverse
906+ // Stop and causes a jolt right after centering is finished.
907+ if (d -> state .sat != SAT_CENTERING ) {
908+ reverse_stop_update (
909+ & d -> reverse_stop ,
910+ d -> motor .distance ,
911+ d -> motor .erpm ,
912+ d -> setpoint_target_interpolated ,
913+ & d -> time ,
914+ d -> float_conf .fault_reversestop_enabled
915+ );
916+ }
912917
913918 // Check for faults
914919 if (check_faults (d )) {
You can’t perform that action at this time.
0 commit comments