Updated 2024.4.8.1

This commit is contained in:
thenetworkgrinch
2024-02-17 08:13:53 -06:00
parent 74ac1351ef
commit a5eb6d05e9

View File

@@ -248,6 +248,14 @@ public class SwerveModule
public void setDesiredState(SwerveModuleState desiredState, boolean isOpenLoop, boolean force)
{
desiredState = SwerveModuleState.optimize(desiredState, Rotation2d.fromDegrees(getAbsolutePosition()));
// If we are forcing the angle
if (!force)
{
// Prevents module rotation if speed is less than 1%
SwerveMath.antiJitter(desiredState, lastState, Math.min(maxSpeed, 4));
}
// Cosine compensation.
double velocity = configuration.useCosineCompensator
? getCosineCompensatedVelocity(desiredState)
@@ -263,13 +271,6 @@ public class SwerveModule
desiredState.speedMetersPerSecond = velocity;
}
// If we are forcing the angle
if (!force)
{
// Prevents module rotation if speed is less than 1%
SwerveMath.antiJitter(desiredState, lastState, Math.min(maxSpeed, 4));
}
// Prevent module rotation if angle is the same as the previous angle.
// Synchronize encoders if queued and send in the current position as the value from the absolute encoder.
if (absoluteEncoder != null && synchronizeEncoderQueued)