CommandScheduler Loop Overrun (YAGSL sample 2024, Falcons, Roborio 1)

Off-season, we set up an MK4i swerve drive with Falcons, and got it running with YAGSL’s sample project. Last week, we updated everything to 2024 versions (roborio firmware and image, falcons to Phoenix 6, download YAGSL sample and updated the json files as needed). Now, we’re getting CommandScheduler Loop Overruns constantly.

We’ve seen it in two different places so far: in disabledPeriodic and AbsoluteDrive.execute. In disabledPeriodic, we narrowed it down to the call to enable brake mode on the falcons. Commenting out this line stopped the Overrun warnings. In AbsoluteDrive, we didn’t quite narrow it down, but it also appeared to be an issue related to calls to the falcons.

We’re looking for help on what might be causing this. I set the SwerveTelemetry to NONE, but we still saw the warnings. I noticed that a block of code in TalonFXSwerve.configureCANStatusFrames() is commented out - is it possibly related? I update the roborio firmware from version 6 to version 22. Is that a bad idea for Roborio 1s?

Thanks in advance!

YAGSL was updated so that a notifier updates your odometey instead of a periodic function so thsi can be resolved easily, but first you should disable verbose telemetry and test it.

There is a function in SwerveDrive to increase the odometry period that will help.

We did try disabling SwerveTelemetry (SwerveDriveTelemetry.verbosity = TelemetryVerbosity.NONE in SwerveSubsystem constructor). Is that what you’re referring to, or something else?

We’ll try adjusting the odometry period next time as well. Thanks!

That is what I was referring to.