Retries
So, you’ve coded your autonomous routine to near perfection—and it works 90% of the time. That's great! But what about the other 10%? Are you comfortable with leaving that up to chance and risking underperforming in a critical match?
Imagine this scenario: in a deciding match, your auto sequence fails to grab a game element properly. Without any smart error-detection system, that single failure could cost your team the win.
This is where a retry system comes into play.
Real-World Example
A perfect example for this comes from Hypernova 28596’s 2024–2025 INTO THE DEEP autonomous:
At 0:05 – Their first transfer fails. Instead of giving up, the robot automatically retries closing the claw a few more times—eventually securing the sample and completing the transfer. Without retries, the robot would have continued as if the transfer succeeded, scoring nothing.
At 0:18 – Their first attempt to intake a sample from the submersible doesn’t work. The robot re-detects, realigns, and tries again until it succeeds in picking up and scoring the sample.
As you can see, these “smart retries” mean the difference between a poor auto run and a consistently reliable one. Even recovering just a couple more points can be the tiebreaker in close matches.
Using Marrow
To make this easier, Marrow provides a RetryCommand
that handles the retry logic for you.
For a full breakdown of how to use it in your own code, see the RetryCommand
reference page.
Last updated