Accolades
Team Resistance’s programming history, technical evolution, and award-winning software.
Robot Code Analysis: 2021–2026
A year-by-year breakdown of the competition code, the technologies employed, and the key programming capabilities demonstrated in each season.
2026: Rebuilt
Repository: teamresistance/2026_Rebuilt · 50+ Java files · 5000+ lines · Command-Based · Swerve Drive
Key Technologies & Capabilities
- Swerve Drive w/ Phoenix 6: TalonFX modules with CTRE Phoenix 6 library, Pigeon2 & NavX gyro support, high-frequency odometry thread to maximize our accuracy
- 4-Camera PhotonVision: Front-left, front-right, back-left, and back-right cameras for full-field AprilTag coverage to optimize shooting
- Full Simulation Layer: Sim implementations for drive, shooter, climber, intake, and hopper: every subsystem can run without hardware
- AdvantageKit Logging: IO-layer abstraction pattern with Real/Sim implementations; full match replay capability
- Interpolation-Based Shooting: Distance-to-RPS, distance-to-hood, and time-of-flight
InterpolatingDoubleTreeMaplookup tables - Bump Zone Awareness: Automated drive-angle and speed-limiting when in field bump zones using
BumpUtil - SysId Characterization: Built-in
SysIdRoutinefor drive motor feedforward characterization to optimize testing and calibration - CI/CD Pipeline: GitHub Actions with build, lint (MegaLinter + Spotless), SonarQube scan, automated testing, and Dependabot
- LED Subsystem: Programmable LED feedback for robot state communication, priority-based LED subsystem
2025: ReefScape
Repository: teamresistance/2025_ReefScape · 49 Java files · 6,903 lines · Command-Based · Swerve Drive
Key Technologies & Capabilities
- Award-Winning Autonomous: Won the Autonomous Award at both regionals; system used 5 PhotonVision cameras for full AprilTag field localization, employed automation in teleop as well
- Auto-Scoring System: Vision-guided autonomous scoring at all 12 reef poles (A–L), auto-aligning to the closest reef face with velocity-compensated targeting
- Custom Co-Driver Interface: Dedicated
InterfaceSubsystemwith button box (split across two HID devices) for selecting reef position and level during the main season - Pneumatic Elevator & Flipper: Intertwined
FlipEleSubsystemwith coral detection sensors, timed solenoid sequences, and centerer/gripper/flipper coordination - AdvantageKit + Elastic Dashboard: Logging framework with Elastic Dashboard integration for optimal driver dashboardery
- Custom Pathplanning and PathPlanner: Dual path planning libraries for pre-generated and dynamic autonomous trajectories
- Cage Climbing: Autonomous cage alignment and chooser maximizing our climb efficiency
2024: Crescendo
Repository: teamresistance/2024-Crescendo · 66 Java files · 10,084 lines · Hybrid (Timed + AdvantageKit) · Mecanum Drive
Key Technologies & Capabilities
- Swerve Drive & Trajectory System: Full swerve with custom trajectory functions:
AimAtSpeaker,GoToNote,GoToTarget, heading-based movement, and timed maneuvers - Dual Vision (LimeLight + PhotonVision): LimeLight for automatic note targeting plus Orange Pi vision coprocessor support for PhotonVision pose estimation
- PID-Controlled Shooter: Dual NEO motors with individual speed control, Speaker vs Amp shooting modes, multi-step loading/unloading system
- Custom Hardware Abstraction: Proprietary
IOlayer with wrappers:MotorPID_NEO,MotorPID_Flex,Encoder_Flex,Encoder_Neo,InvertibleSolenoid - Built-In Testing Framework: Dedicated test classes:
TestHdw,TestMtrPct,TestMtrFPSfor motor and hardware verification - Snorfler + Shooter Coordination: Cross-subsystem requests between intake (“snorfler”) and Shooter with autonomous injection timing
- Custom Math Utilities:
PropMathinterpolation,PIDXController,Array2d, and industrial timer classes (OnDly,OffDly,Pulse)
2022: Rapid React
Repository: teamresistance/2022-Rapid-React · 60+ Java files · 14,352 lines · Timed Robot · Tank Drive
Key Technologies & Capabilities
- Award-Winning Controls: Innovation in Control Award for custom trajectory system with 15+ trajectory primitives including curve turns, waypoints, and heading-based movement
- Advanced Trajectory Engine: Custom
ATrajFunctionabstract class with implementations:CirToHdgCurve,CirToHdgTank,CurveTurnTm,MoveOnHdg,TurnNMove,Waypt3 - Differential Drive with PID:
DifferentialDrivewith tank, arcade, and curvature modes plus heading-hold PID and distance PID controllers - 6 Autonomous Routines:
AutoDrv00throughAutoDrv05providing position-specific auto routines with integrated shooting and intake - Coordinate System Tracking: Custom
CoorSysclass for real-time field-position tracking via wheel encoders (NEO, Talon, Powerfuse variants) - Comprehensive Test Suite: Individual test classes for every subsystem:
ClimbTest,ShootTest,SnorfTest,DriveTest,CompressorTest - PathWeaver Integration: PathWeaver trajectory testing alongside the custom trajectory system
2021: Infinite Recharge (At Home)
Repository: teamresistance/2021-Recharging-Again · 45 Java files · 6,184 lines · Timed Robot · Differential (Tank) Drive
Key Technologies & Capabilities
- Turret with Vision Tracking: Motorized turret with analog potentiometer feedback, limit switches, and LimeLight-guided auto-aim using custom interpolation
- Ball Handler Pipeline: Four coordinated subsystems:
Snorfler→Revolver→Injector→Shooterfor complete ball path management - Trajectory Foundation: Early version of the custom trajectory function system with waypoint navigation, heading turns, and curve-based paths
- PropMath Interpolation: Custom proportional math library for non-linear input-to-output mapping using 2D span arrays
- PIDXController: Custom extended PID controller implementation used across drive and mechanism subsystems
- LimeLight Integration: Target detection, on-target checking with configurable deadbands, LED mode control
Technical Evolution
The team’s software architecture across 5 competition seasons.
Supporting Tools & Resources
Training, development, and infrastructure tools built alongside competition code.
- Drive Template: Reusable swerve base template with Phoenix 6, AdvantageKit, PhotonVision, PathPlanner, and maple-sim. Serves as the starting point for each new season.
- Training Site: Comprehensive training website covering 18+ topics: motors, sensors, PID, swerve, vision, pathfinding, command-based architecture, and more.
- PID Lab: Python-based motor control simulator for experimenting with PID in speed/position modes. Gear ratios, loads, and real-time plotting of voltage, current, and output.
- Newbie Gym: Experimentation sandbox for new programmers to learn, break things, and build confidence before working on competition code. 28+ pull requests of student work.
- CI/CD Pipeline: GitHub Actions with build verification, MegaLinter + Spotless auto-formatting, SonarQube static analysis, Dependabot dependency updates, and automated test runs.
Highlights
- Award History: Autonomous Award ×2 (2025), Innovation in Control (2022), Regional Champions (2022), World Championship (2025)
- Vision Mastery: Evolved from a single LimeLight (2021) to a 5-camera PhotonVision array with polynomial regression confidence models
- Simulation-First: Every subsystem has a simulation implementation, enabling even autonomous routine testing without a physical robot
- Tank → Swerve Transition: Successfully migrated from differential drive to swerve in 2024
- Data-Driven: AdvantageKit logging for full match replay, Elastic Dashboard for live telemetry, SysId for motor characterization
- Training Pipeline: Dedicated training site, PID simulator, Newbie Gym sandbox, and GitHub intro course
- Professional Practices: CI/CD pipeline, code linting, static analysis, automated testing, and Dependabot dependency management
- 43 Public Repositories: Over a decade of open-source code, from 2014 to present, available to the FRC community