Experiences
Build Season 2025

Week 2

1/18/25

Clocking in from 9:00 to 4:00 today, we worked on prototyping, CADing, and programming for our 2025 robot.

Programming:

Here is a rundown of what we did today:

Organizing:

We worked on better organizing our new laptop cabinet, to make sure our laptops, cables, etc. have correct places.

Limelight Progress:

We flashed and calibrated the rest of the limelight 3’s that are for use this season, and we also began experimenting with solutions of getting 3 limelights powered and working on this years’ robot.

Auton:

First, we re-generated SpyderJR's (SPYDER's dev bot) with CTRE's swerve generator tool after several fixes to its' swerve modules last night. Early on in the day, we realized many of the measurements of our practice field were off. Most if not all of the measurements before half field should be right now 🙏 Worked with SpyderJR to begin testing auton. We tested a 3.5-piece auto (opens in a new tab), and it worked quite well considering no tuning of swerve yet. Also, pathfinding to positions definitely works and is promising, as we tested it today. After limelight integration, pid tuning, and nailing down our odometry, it will work great for aligning to the reef posts this year 👍

Near the end of the day, we realized that one of our CANcoders on a swerve module was cutting in and out of power, causing unexpected rotations of the module occasionally while driving. we have found that the issue is because our battery can dig into wires connecting the module to power (oops 😅) while it shifts around in its "seat" in the robot. This will be the first issue we fix come Monday, so that we can continue with progress on auton.

1/20/25

Programming:

Limelight Progress:

First, we proved that we can use 3 limelights at once through the radio. This didn't work Saturday but worked today, which is great news. Additionally, we were able to use a limelight that was previously giving us trouble today, and all of them are working fine. Today, we attempted an upgrade on the limelight from 3 -> 3G (Swapping the camera module) (opens in a new tab), but were not able to as we unfortunately had purchased the wrong camera upgrade. We will try again once we get the correct one, it looks promising, too! 😄

Auton Progress:

Today, the wiring for the CANcoder on our back right swerve module was fixed, and now functions as normal. This is great news for our autons and testing. Along with that, we made a large discovery that Completely changed the auton game. Our 4 inch diameter swerve wheels are not actually that large. After re-measuring them, we found that they are actually 3.75 inches in diameter. This would explain the previous error we were seeing in our autons, and after changing wheel radius in code, the incorrect distances vanished (Yay 🎉). Additionally, we began our work to perfect our auto paths. We have nailed down a 3 coral auto from center line, and are hoping to be able to further optimize to a 4-piece by our competitions. (See here) (opens in a new tab)

Logging Progress:

This year, one of our goals is to use logging and match reviewing through AdvantageScope to its' highest potential, and today, we made some great progress in using it. See this video (opens in a new tab) of a logging visualization of our auton test bot, performing an auto, through Advantagescope XR.

1/25/25

Programming:

Limelight Progress:

During this week of work, we were able to implement limelight's metatag localization into a test swerve bot. After having a little trouble with getting it situated, it is now complete and fully up-and-running! Additionally, we began implementation of auto-alignment to reef poles, using the tid networktable property. We have found the most amount of trouble with this, but are hoping to fully implement it over the course of the next week. Additionally, the correct camera modules came to upgrade our ll3's to ll3G. We are currently in the process of performing this upgrade, and we are excited to test it out.

Robot Starter Code

This week, we were able to get enough information from CAD to create starter code for the subsystems on this years' robot. This code will allow us to stay on track once we get a physical robot, and get ahead of any setbacks that may block our way. See the GitHub repository here (opens in a new tab).

Looking Forward

With roughly two weeks until the programming team gets a full robot, we are making sure we get all of the things we can get done without a robot finished, and we're right on schedule so far!

2/01/25

Programming:

Limelight issues:

After upgrading limelight 3s with the Limelight 3G camera module, we began to encounter several issues with them. Out of the four we upgraded, one consistently works, which tends to overheat easily. Because of our vision goals this year, our goal is to solve this issue so that we may see an upgraded limelight 3 on our competition robot for even better vision data with the global shutter camera. On the other three upgraded limelights, we have seen partial or no functionality after performing the upgrade. We have isolated the issue to what we believe is the upgraded camera module itself, as replacing the original camera from the limelight 3 restores its' functionality. While this is definitely a roadblock in getting more than one upgraded limelight 3 onto a test bot, we are staying positive and continuing to work towards a solution.

Starter Code and Teaching:

This week, we continued to work on getting our robot starter code ready to go for when we recieve the robot from the mechanical and electrical subteams in just about a week. We have been making steady progress on it, and we are finding ourselves in a good spot with our schedule. Additionally, we took time this week to continue refining the skills of newer programmers on the team with several training sessions on topics like subsystem and command writing. We are making great pace this year compared to last year, and are confident with how things are going in preparation for the time programming will have with the competition robot.

Auto-alignment Up And Running:

After many reiterations, our dynamic auto-alignment functionality to the reef poles has been successfully implemented. While we had tested this auto-alignment using pathplanner's pathfindThenFollowPath() command, this most recent progress included implementing limelight april-tag detection to determine the correct pole to align to. While this still needs to be tuned to work at its fullest capacity with our robot, we made excellent progress with this this week.