Subzero Robotics

During high school, I was a member of my school's FIRST Robotics Competition (FRC) team, Subzero Robotics (Team 5690). As both the programming lead and a driver, I had the opportunity to work on a range of technical challenges, including developing autonomous systems, implementing vision tracking, and optimizing robot control algorithms.
Technical Contributions
My primary responsibility was writing and maintaining the software that controlled our robot. We developed our control system using C++ and the WPILib library to interface with the hardware. A significant focus was on improving our robot's autonomous capabilities. In the 2024 season, we implemented a fully autonomous cycling system using PathPlanner, enabling our robot to navigate the field, acquire game pieces, and score points with minimal driver input.
Advanced Automation
One of our key achievements was a modular autonomous system that allowed us to dynamically select routines based on real-time match conditions. We introduced a tagging system in our auto selection interface, making it possible to filter and select optimized routines based on the number of game pieces scored, distance traveled, and starting positions.
Vision and Targeting
To enhance scoring accuracy, we integrated AprilTag vision tracking using PhotonVision. This allowed our robot to update its field position dynamically and execute precise scoring maneuvers. Additionally, we developed a machine-learning-based object detection system for recognizing game pieces, which enabled automatic note intake and improved real-time pathfinding.
Custom Hardware Integration
In addition to software development, I worked on integrating custom electronics such as the ConnectorX board, which facilitated LED control and provided status indicators for the driver. We also implemented a custom operator keypad to streamline robot state transitions during gameplay.
State Machine and Teleoperated Enhancements
Our teleoperated system featured an advanced state machine, allowing for predefined actions to be executed with a single button press. This system significantly improved cycle efficiency by reducing manual input requirements and automating complex tasks such as intake, aiming, and scoring.
Development Workflow
We followed a structured software development lifecycle, including issue tracking, sprint-based planning, and peer-reviewed pull requests on GitHub. This approach minimized bugs and ensured stability across multiple competitions. Additionally, we leveraged simulation tools such as WPILib's built-in simulator and AdvantageScope's log replay features to fine-tune our code before deployment.
More details about the software behind our 2024 season can be found in my whitepaper, which is available here.