What is the biggest programatic challenge you have faced this season?

I’ve been a little stuck in terms of what project I should work on during the upcoming off-season, so what is the biggest challenge or technical limitation you have faced during competition season (programmatically speaking), and how did it affect your robot? I plan to use some of your issues this to brainstorm a few ideas, thanks!

1 Like

rio 1.0 simply didnt have enough ram to handle photonvision, so we swapped to a rio 2.0 way to late. not really a programming issue, but it defiantly affected our progress.

We tried hard to combine apriltags with odometry and path planning to do auto-lineUp with amp, but it wasn’t good enough to be used in real match

1 Like

I recommend looking into path planner as an off season project! Once you get it working it’s good for the whole season (and seasons to come). Super useful as well.

1 Like

If you get it working programming training can start with setting paths and speeds before they have to jump into the nitty gritty of WpiLib. That is the fun exciting stuff. Just reading docs and controlling LEDs or a single subsystem gets boring for rookies and they leave

1 Like

Vision. There’s quite a bit to research and set up, both programmatically and electrically. We have been using PhotonVision for quite some time, but had issues last year due to poor scheduling preventing us from implementing it. Meaning that this year, I had to learn everything about how to set up pose estimation, selecting the right hardware, and wiring correctly. I’ve made mistakes in all three of these, which wasted a lot of time this season. Fortunately, I think we got all of these mostly figured out, so we’ll have a much more accurate shooter for our comp this week.


Getting commands to work. It sounds crazy but idk what we did but we made a new project and copied the code over and it started working.

PWM with Spark MAXes and NEOs being jittery

Not being able to set up AprilTags permanently enough to want to try full field pose estimation

Pathplanner changing for this season (though it was good change, all change to fundamentals is scary)

Adapting from direct Odometry updates to using PoseEstimator, moving the pose into a pose supplier class, and keeping it updated using vision data. This allowed us to use pose data to calculate target angles, bearings, and distances to great success. This is leading us to the long term goal of calculating shoot-on-the-fly trajectories.

1 Like

Overriding the rotation of the robot in Pathplanner to directly face notes using colored-object vision detection. Our team has a tiny shop space that made center-line note paths impossible to dial in before comp, but when this feature was finally figured out, it made imperfections in the paths at competitions much less of a problem.