Luigi & Guido · Push Back Competition Robots
KUdos VEX-U's continuously developed Skills and competition robots for Push Back.
Overview
Luigi and Guido were my fifth set of VEX-U robots and KUdos VEX-U's competition robots for the 2025-2026 Push Back season. Guido was the blue 24" robot, while Luigi was the gold 15" robot. Their names and colors were based on Lightning McQueen's pit crew from the movie Cars.
Push Back challenged teams to collect red and blue Blocks and score them into Long Goals and Center Goals. Teams could earn additional points by filling Control Zones, clearing Match Loaders and Park Zones, and parking their robots. VEX-U teams competed with one 24" robot and one 15" robot, making coordination between both machines important for Skills routes, autonomous routines, and tournament strategy.
As Team Captain and Lead Designer & Fabricator, I led the project from early game analysis through concept development, master sketching, detailed CAD, fabrication, assembly, testing, competition, and season-long improvements.
Luigi and Guido began as hyper-optimized Skills robots. They were designed to collect and carry large quantities of Blocks, clear Match Loaders, fill Control Zones, and park both robots. After qualifying for Worlds, we continuously upgraded the same physical robots from Alpha into Beta to improve their reliability and match-play performance.
We intended to replace them with Sally and Cruz for Worlds. Sally and Cruz were fully built, and we had begun programming autonomous routines, but there was not enough time to finish the Skills and match routines, work through the remaining bugs, and properly tune the robots. We brought all four robots to St. Louis and continued working on Sally and Cruz before deciding two days before Worlds to compete with Luigi and Guido instead.
Because Luigi and Guido had remained built and competition-ready as a backup, we were able to return to a proven platform and create the Beta+ configuration shortly before competition.
The robots were also designed with future VEX AI operation in mind. Their custom electronics, localization, vision, and sensor architecture were implemented from the beginning to support increasingly autonomous operation. We ultimately chose not to compete in VEX AI after Worlds, so no VEX AI-specific testing or upgrades were completed.
I also served as the team's Drive Coach throughout the season, coaching both Robot Skills runs and tournament matches. I coordinated both robot drivers, planned Skills routes and match strategies, and adjusted our approach based on alliance partners, opponents, field conditions, and the robots' evolving capabilities.
My Role
Team Captain · Lead Designer & Fabricator · Drive Coach. I led the overall strategy, mechanical design, manufacturing, assembly, testing, and development of Luigi and Guido.
My contributions included:
- Led early-season game analysis and Skills strategy development
- Defined the robots' needs, wants, nice-to-haves, and overall architecture
- Created and maintained the robot master sketches in Onshape
- Modeled the complete robots and their subsystem packaging
- Designed the drivetrain, intake, indexer, outtake, goal aligners, Multi-Tool, wings, odometry mounts, and electronics packaging
- Designed custom parts around the team's CNC router and 3D-printing capabilities
- Created manufacturing drawings, cut lists, parts lists, and assembly plans
- Manufactured CNC-routed, machined, and 3D-printed components
- Led the assembly and season-long repair of both robots
- Used competition post-mortems to prioritize Alpha, Beta, and Beta+ improvements
- Developed and tuned match and Skills autonomous routines using the team's software and localization backend
- Contributed system-level ideas and requirements for the custom electronics architecture
- Soldered the custom magnetic encoder PCBs and installed them into the odometry pods
- Mounted and wired the odometry pods, goBILDA Pinpoint, and Raspberry Pi hardware
- Packaged the Limelight, Raspberry Pi, Pinpoint, sensors, and supporting hardware into the robots
- Served as Drive Coach for Robot Skills runs and tournament matches
- Developed Skills routes and coordinated the actions of both robot drivers
- Led pre-match strategy discussions with drivers and alliance partners
- Coordinated Luigi and Guido's separate responsibilities during qualification and elimination matches
- Used observations from Skills and tournament play to guide mechanical, autonomous, and strategy improvements
- Kept Luigi and Guido built and competition-ready while Sally and Cruz were developed
- Led the decision in St. Louis to return to Luigi and Guido two days before Worlds
- Designed, tested, and manufactured the Beta+ wing aligner on the morning of Worlds Day 1
Outcome
Luigi and Guido qualified KUdos VEX-U for the 2026 VEX Robotics World Championship and remained available as competition-ready robots throughout the entire season.
The pair earned one Design Award, two Excellence Awards, one Innovate Award, two Tournament Finalist finishes, and one Tournament Semi-Finalist finish. They placed 2nd in Robot Skills at all three qualifying events and reached a season-high combined Skills score of 162 points.
At the 2026 VEX Robotics World Championship, the Beta+ robots ranked 7th of 41 teams in the Opportunity Division with a 9-1-0 qualification record, finished with a 9-2-0 overall record, placed 19th in Robot Skills, and earned the Innovate Award.
Keeping Luigi and Guido assembled while developing Sally and Cruz gave the team a reliable contingency plan. When the replacement robots did not have enough time for debugging, autonomous development, and tuning, we were able to return to a proven platform two days before Worlds.
The last-minute decision required rapid engineering at the event. The four-bar wing aligner was designed, tested, manufactured, and installed on the morning of Worlds Day 1 before helping the Beta+ robots achieve the team's strongest tournament performance of the season.
Luigi and Guido also served as the first full implementation of KUdos VEX-U's custom Pinpoint, Limelight, Raspberry Pi, and magnetic-encoder localization architecture. The lessons from their drivetrain, Block compression, wing integration, autonomous routines, custom electronics, and Beta+ Worlds preparation established requirements for future KUdos VEX-U robots.
Competition Results
Problem & Goal
The early Push Back season had very few nearby VEX-U competitions before the end of 2025. Our primary goal was to qualify for Worlds through the rule that invited the top five unqualified teams in the World Skills standings as of December 31.
This led us to design Luigi and Guido around the Skills Challenge instead of conventional early-season match play. The maximum score for either Driver or Autonomous Skills was 134 points, producing a theoretical combined maximum of 268 points.
Our highest scoring priorities were:
- 1Park both robots
- 2Clear both Match Loaders
- 3Clear both Park Zones
- 4Fill the Long Goal Control Zones
- 5Fill both Center Goal Control Zones
- 6Score the remaining Blocks
The robots later needed to transition from specialized Skills machines into competitive match-play robots without abandoning the architecture we had already designed and built.
Design Requirements
- Fit within the VEX-U 24" and 15" robot size limits
- Use a shared core architecture across both robots
- Carry approximately 14 Blocks through a continuous internal scoring path
- Intake Blocks across a wide area of the field
- Score accurately into the Long Goals
- Score into the top Center Goal
- Clear both Match Loaders
- Clear Blocks from both Park Zones
- Park both robots during Skills runs
- Reject unwanted Blocks before they were scored
- Maintain accurate field position during autonomous routines
- Reset field position using known walls and field geometry
- Align automatically with Match Loaders despite field variation
- Support both Skills and match-play autonomous routines
- Add match-play features without completely rebuilding the robots
- Package custom electronics with expansion capacity for future VEX AI use
- Remain serviceable and repairable during long-distance competitions
- Remain available as a competition-ready backup while Sally and Cruz were developed
Process
- 1Analyzed Push Back scoring and the December 31 World Skills qualification path
- 2Created a needs, wants, and nice-to-haves list focused on maximizing Skills points
- 3Developed multiple Skills strategies around scoring, Control Zones, cleared Loaders, and parking
- 4Evaluated tank, X-drive, and other drivetrain architectures
- 5Created shared master sketches and surface geometry for the 24" and 15" robots
- 6Designed the super-wide intake, indexer, pivoting outtake, goal aligners, and Multi-Tool
- 7Developed an 8-motor motor-stack tank drivetrain with integrated odometry pods
- 8Packaged the Raspberry Pi, Pinpoint, Limelight, sensors, pneumatics, and V5 electronics
- 9Created the manufacturing sheets, parts inventory, buy list, and modified COTS cut list
- 10Manufactured and assembled the Alpha robots
- 11Soldered and installed the custom encoder PCBs and odometry hardware
- 12Used the team's software backend to program and tune Skills and match autonomous routines
- 13Practiced Skills routes and tournament strategies with the two-robot drive team
- 14Served as Drive Coach during Robot Skills runs and tournament matches
- 15Competed at Illini VURC Cornfield Clash 1 and qualified for the VEX Robotics World Championship
- 16Documented mechanical, software, electronics, strategy, and logistics issues in a tournament post-mortem
- 17Continuously upgraded the same robots into the Beta configuration
- 18Redesigned the wings, strengthened drivetrain and scoring components, and improved localization reliability
- 19Replaced the Raspberry Pi Python backend with C++ to improve speed, memory use, and autonomous consistency
- 20Moved the color-sorting function from an unused indexer chute to the outtake nozzle
- 21Competed at Gear Slingers Open 2026 and California Baptist University VEXU Open 2026
- 22Used the CBU post-mortem to define the requirements for Sally and Cruz
- 23Kept Luigi and Guido built and competition-ready while Sally and Cruz were designed, manufactured, assembled, and programmed
- 24Brought Luigi, Guido, Sally, and Cruz to St. Louis for Worlds
- 25Continued debugging and programming Sally and Cruz after arriving in St. Louis
- 26Determined two days before Worlds that Sally and Cruz did not have enough time for complete autonomous development, debugging, and tuning
- 27Returned to Luigi and Guido as the team's Worlds competition robots
- 28Designed, tested, and manufactured the Beta+ wing aligner on the morning of Worlds Day 1
- 29Retuned the existing autonomous routines for the Beta+ configuration
- 30Served as Drive Coach at Worlds and adjusted match strategy around the proven Luigi and Guido platform
- 31Chose not to continue into VEX AI competition after Worlds
Challenges
- Designed two complete robots within a compressed early-season qualification schedule
- Optimized the robots for Skills before knowing how well the architecture would perform in match play
- Packaged approximately 14 Blocks, an intake, indexer, outtake, Multi-Tool, wings, electronics, and pneumatics into each robot
- Abandoned the planned dual-color storage system when it proved unnecessary and overly complex
- Replaced the unused indexer sorting chute with color sorting at the outtake nozzle
- Reduced recurring indexer and outtake jams caused by Block compression
- Replaced Luigi's long aluminum intake shaft with steel after it bent
- Replaced broken gold-filament parts with stronger white replacements
- Maintained white replacement parts for gold components that remained on Beta
- Replaced the slow and unstable Raspberry Pi Python script with C++
- Prevented Raspberry Pi crashes from interrupting autons, reducing points, and causing violations
- Combined Pinpoint IMU heading with Distance Sensor wall resets for more reliable localization
- Completely redesigned wings that had originally been added one day before the Alpha competition
- Strengthened wing components against impacts acting through a long lever arm
- Replaced repeatedly damaged wing mounts with PAHT-CF components for Beta+
- Designed, tested, and manufactured a four-bar wing aligner on the morning of Worlds Day 1
- Adapted Skills-focused robots for defensive and interactive tournament matches
- Worked around limited acceleration and the inability to drive beneath the Long Goal
- Developed and maintained autonomous routines for two robots and several event strategies
- Led the Sally and Cruz rebuild while maintaining Luigi and Guido as a functional backup
- Brought all four robots to St. Louis and changed the competition plan two days before Worlds
- Returned to Luigi and Guido with limited time to prepare the Beta+ configuration
Strategy-Driven Architecture
Luigi and Guido were initially designed around Skills rather than conventional tournament play.
The robots used a high-capacity internal Block path so they could collect, carry, and score approximately 14 Blocks. A wide intake reduced alignment time, while the indexer and outtake controlled how Blocks moved through the robot.
The intended Skills workflow was:
- 1Clear Blocks from the Park Zones
- 2Collect loose Blocks from the field
- 3Score into the Center Goals
- 4Empty the Match Loaders
- 5Score into the Long Goals
- 6Fill the available Control Zones
- 7Return both robots to the Park Zone
Placing the intake and outtake on opposite sides of each robot reduced cycle time. After collecting Blocks from a Match Loader, the robot could drive directly toward the Long Goal and score without turning around.
The architecture prioritized maximum scoring capacity and autonomous consistency. This created a strong Skills platform but introduced challenges when the robots later encountered defense, traffic, and direct robot interaction during tournament matches.
Alpha to Beta+ Development
Alpha, Beta, and Beta+ were not separate robots. Luigi and Guido remained the same physical machines and were continuously upgraded based on testing, tournament feedback, and the team's changing strategy.
Alpha
Alpha established the core architecture:
- Shared 24" and 15" mechanical design
- 8-motor motor-stack tank drivetrain
- Super-wide intake
- High-capacity indexer
- Pivoting outtake
- Long Goal aligner
- Multi-Tool for Loader and field interaction
- Last-minute deployable wings
- Odometry pods with custom magnetic encoders
- Raspberry Pi, Pinpoint, and Limelight integration
- Skills and match autonomous routines
- Provision for an indexer color-sorting chute that was not completed or used
The indexer was originally designed with a color-sorting chute, but the required sensor was never installed and the chute was not used in competition. Color sorting was later implemented at the outtake nozzle instead.
Alpha competed at Illini VURC Cornfield Clash 1. The robots ranked 3rd of 12 teams, earned the Design Award, finished as Tournament Finalists, placed 2nd in Robot Skills, and qualified for the VEX Robotics World Championship with a 9-4-0 overall record.
The event exposed several weaknesses:
- Indexer and outtake compression caused jamming
- Luigi's long aluminum intake shaft bent under load
- Several gold-filament parts were too brittle for repeated impacts
- The Raspberry Pi Python script was slow, laggy, and consumed too much memory
- Raspberry Pi crashes interrupted autonomous routines
- Interrupted routines reduced scoring, created inconsistencies, and could cause rule violations
- V5 Distance Sensors provided useful wall-distance measurements but unreliable heading estimates
- The Match Loader alignment process needed greater consistency
- The wings were added one day before the event and were poorly integrated
- The wing structure and mounting could not reliably resist impacts acting through the long lever arm
Beta
Beta retained the core Alpha architecture while improving reliability, autonomous consistency, and match-play capability.
Major improvements included:
- Completely redesigned the deployable wings
- Reworked the wing geometry, mounting, deployment, and hard stops
- Used sandwiched PETG and polycarbonate wing structures
- Replaced the bent aluminum intake shaft with a steel shaft
- Replaced broken gold-filament components with stronger white-filament parts
- Continued using some gold parts while preparing white replacement parts in case they failed
- Reinforced the outtake backing and drivetrain components
- Refined the intake and indexer transitions to reduce jamming
- Moved color sorting from the unused indexer chute to the outtake nozzle
- Switched the Raspberry Pi backend from Python to C++
- Reduced memory usage, lag, and autonomous interruptions
- Used the Pinpoint IMU for heading
- Continued using V5 Distance Sensors to measure distance from field walls
- Used wall-distance measurements to reset positional estimates during autonomous routines
- Added reliable Limelight Match Loader alignment
- Improved Raspberry Pi mounting, power reliability, and troubleshooting access
- Refined driver-control macros and autonomous routines
- Continued improving the Multi-Tool for Loader clearing and field interaction
The change from Python to C++ was especially important because the purpose of the custom electronics stack was to provide precise and repeatable autonomous performance. Crashes and lag directly undermined that goal by interrupting routines, reducing scores, creating field-position errors, and occasionally causing violations.
Beta competed at Gear Slingers Open 2026 and California Baptist University VEXU Open 2026. The robots ranked 3rd at both events, earned two Excellence Awards, finished as Tournament Semi-Finalists and Tournament Finalists, and placed 2nd in Robot Skills at both competitions.
Beta+
Beta+ was the final Worlds configuration of Luigi and Guido.
After California Baptist University VEXU Open 2026, the team's primary development effort shifted to Sally and Cruz. Luigi and Guido remained fully assembled and ready as a backup, but we did not expect to use them at Worlds.
Sally and Cruz were built, and autonomous programming had begun. However, we did not have enough time to complete the Skills and match routines, resolve the remaining mechanical and software bugs, or properly tune the new robots. We brought all four robots to St. Louis and continued working before deciding two days before Worlds to compete with Luigi and Guido.
Because the decision was made so late, the most significant Beta+ mechanical change was completed at the event. On the morning of Worlds Day 1, I designed, tested, manufactured, and installed a new wing aligner.
The Beta+ wing system included:
- A redesigned four-bar wing aligner that deployed with the wing
- Rollers at the end of the aligner that glided against the Long Goal
- Geometry that guided the robot into a repeatable scoring position
- A structure designed to withstand robot impacts acting across a long lever arm
- PAHT-CF wing mounts and aligner components
- Sandwiched PETG and polycarbonate wing structures
- Stronger mounting than the PETG and polycarbonate hybrid versions that repeatedly broke during Beta
There was no wing aligner on Beta. The complete four-bar aligner was added for Beta+ after the decision to use Luigi and Guido at Worlds.
Additional Beta+ work included:
- Retuned Skills autonomous routines
- Retuned match autonomous routines
- Inspected and repaired the existing Beta mechanisms
- Prepared replacement parts and maintenance procedures
- Adjusted match strategy around the proven capabilities of Luigi and Guido
Beta+ competed at the 2026 VEX Robotics World Championship, where the robots ranked 7th of 41 teams in the Opportunity Division with a 9-1-0 qualification record, finished with a 9-2-0 overall record, placed 19th in Robot Skills, and earned the Innovate Award.
Robot Subsystems
Luigi and Guido shared the same core subsystem architecture across their 24" and 15" configurations. Each subsystem was packaged around a continuous Block path and continuously revised through Alpha, Beta, and Beta+.
Drivetrain
- Used a tank drivetrain for predictable Skills pathing and pushing ability
- Powered each robot with 8 drivetrain motors
- Ran the drivetrain at approximately 512 rpm
- Used a motor-stack arrangement to package the motors compactly
- Integrated front and side ramps to help enter the Park Zone
- Used odometry pods for parallel and perpendicular position tracking
- Added custom motor gears with external shaft collars for easier inspection and service
- Designed removable motor caps so damaged or overheated motors could be replaced
- Used the drivetrain as a stable base for the intake, indexer, outtake, Multi-Tool, electronics, and pneumatics
The drivetrain worked well during Skills but had limited acceleration and maneuverability during aggressive match play. Defensive contact could stall or pin the robots, and their height prevented them from driving beneath the Long Goal.
Super-Wide Intake
- Spanned most of the robot's width to reduce alignment time
- Collected Blocks from the floor and directed them into the indexer
- Used funnels to center Blocks before they entered the internal scoring path
- Allowed the robot to collect scattered Blocks while following Skills routes
- Used replaceable printed components and rollers
- Received stronger shafts and revised plates after Alpha testing
- Replaced Luigi's long aluminum intake shaft with steel after it bent
- Integrated with the Multi-Tool and starting configuration
The intake was positioned opposite the outtake, allowing the robot to collect Blocks from a Match Loader and drive directly to the Long Goal without turning around. This reduced the time between loading and scoring.
Indexer & Color Sorting
- Carried approximately 14 Blocks through a continuous internal path
- Used multiple powered rollers to move Blocks through the robot
- Used gates and software states to control Block movement
- Coordinated with the intake and outtake through the robot's state-machine system
- Used replaceable backings, idlers, spacers, and transition parts
- Included an early color-sorting chute concept that was not completed or used
- Later sorted unwanted Blocks at the outtake nozzle instead
The original architecture considered storing at least 7 Blocks of each color and independently controlling both groups. That concept was not implemented. Although the indexer included a mechanism for a color-sorting chute, the sensor was never installed and the chute was not used.
Later in the season, color sorting was moved to the outtake nozzle. This provided a more direct way to reject an unwanted Block before it was scored without requiring separate internal storage paths.
Compression between the rollers and backings caused recurring jams. Multiple backing, spacer, roller, and transition revisions were developed throughout Alpha and Beta to improve Block flow.
Pivoting Outtake
- Scored Blocks into the Long Goals
- Changed position to reach the top Center Goal
- Used a pivoting architecture to remain compact
- Used a movable flap to control the scoring angle
- Used the flap to prevent Blocks from falling out while the robot was intaking
- Used goal aligners to position the robot against the Long Goal
- Used flexible tubing and replaceable backing components
- Coordinated with the indexer through software states
- Later incorporated color sorting at the outtake nozzle
Moving approximately 14 Blocks through the robot generated significant force against the outtake. Without the movable flap, Blocks could be pushed out of the robot while the intake and indexer were running. Closing the flap retained the Blocks during collection, while repositioning it allowed the robot to score into different Goals.
The simple pivoting architecture provided multiple scoring positions without requiring a more complex linkage. It later influenced parts of the Sally and Cruz architecture.
Multi-Tool
The Multi-Tool was a deployable subsystem used for several game actions:
- Cleared Blocks from the Match Loaders
- Scraped Blocks from the Park Zones
- Assisted with scoring into the lower Center Goal
- Helped position and control Blocks around the robot
- Acted as part of the intake's starting restraint
- Used ramps shaped like an F1 drag-reduction-system spoiler as part of the Cars theme
The mechanism was continuously revised through new ramps, side plates, spacers, pivots, hard stops, and zeroing methods.
Deployable Wings
The Alpha wings were added one day before Illini VURC Cornfield Clash 1. They proved that the robots could benefit from wings during match play, but the rushed design was poorly integrated and lacked the strength and consistency needed for competition.
Beta introduced a complete wing redesign rather than a minor revision. The new wings improved deployment geometry, hard stops, field coverage, and mounting. They used sandwiched PETG and polycarbonate structures, but repeated impacts still damaged the wings and their mounts.
The wings were used to:
- Move groups of Blocks
- Descore Blocks from Long Goal areas
- Defend scoring positions
- Control space around the Goals
- Assist with match-specific strategies
Both the wings and their mounts experienced high loads because impacts occurred far from the pivot, creating a large lever arm. This made strength at the pivot, mounts, and deployment structure critical.
For Beta+, the wing mounting components were rebuilt using PAHT-CF, while the wing structure retained the sandwiched PETG and polycarbonate construction. The new PAHT-CF four-bar wing aligner deployed with the wing, used rollers to glide against the Long Goal, and was designed to resist robot impacts.
Custom Electronics & Localization
Luigi and Guido were designed around a custom sensor and localization stack that could support VEX-U autonomous routines and future VEX AI development.
The system included:
- goBILDA Pinpoint odometry computer
- Custom magnetic quadrature encoders
- Spring-loaded odometry tracking wheels
- Limelight 3A smart vision camera
- Raspberry Pi communication coprocessor
- V5 Distance Sensors for wall-distance measurements
- Optical sensors for Block detection and outtake color sorting
- Wireless hotspot for troubleshooting and updates
- Communication between custom hardware and the V5 Brain
- Expansion capacity for additional cameras and sensors
The Pinpoint independently calculated the robot's position using its integrated IMU and the custom tracking-wheel encoders. The Pinpoint IMU became the primary source for robot heading because it was more consistent than estimating orientation from the V5 Distance Sensors.
The Distance Sensors were still useful for measuring positional distance from known field walls. Autonomous routines could use these readings to reset or correct the robot's estimated field position.
The Limelight ran vision processing on its own hardware. A neural network detected the yellow cap on the Match Loader, allowing the robots to automatically align despite field-position and lighting variation.
The Raspberry Pi served as the communication bridge between the custom sensors and the V5 Brain. Alpha initially used a Python script, but it consumed too much memory and produced slow, laggy performance. Crashes interrupted autonomous routines, reduced scoring, created inconsistent movement, and could cause violations.
For Beta, the Raspberry Pi backend was rewritten in C++. This improved memory use, speed, and stability, allowing the electronics stack to better fulfill its purpose of providing precise and consistent autonomous performance.
I contributed concepts and system requirements for the electronics stack, designed its mechanical packaging, soldered and assembled the encoder hardware, installed the sensors, and integrated the hardware into the robots. I then used the completed localization and control backend to develop and tune the autonomous routines.
Autonomous Development
Serving as Drive Coach also influenced autonomous development. I planned Skills routes, selected match autonomous routines, coordinated starting positions with alliance partners, and used competition results to identify paths and actions that needed additional tuning.
The autonomous routines used Pinpoint odometry, Limelight alignment, Distance Sensor wall resets, optical sensors, and the robots' subsystem state machines.
I worked on:
- Skills route planning
- Match autonomous pathing
- Autonomous scoring order
- Pinpoint-based field paths
- Pinpoint IMU heading control
- Distance Sensor field-wall resets
- Match Loader alignment
- Long Goal alignment
- Parking routines
- Driver-assist macros
- Event-specific counter-autonomous routines
- On-field autonomous tuning
The software backend handled localization, communication, and subsystem states. I used that foundation to create and tune the actual routes and scoring sequences needed for competition.
At Gear Slingers Open 2026, the Pinpoint and Limelight systems became extremely consistent. The robots reached a 105-point Driver Skills score and performed reliable Match Loader alignment.
At California Baptist University VEXU Open 2026, the combined Skills score reached 162 points with 112 Driver Skills points and 50 Autonomous Skills points.
Sally and Cruz were built and had begun autonomous development before Worlds, but there was not enough time to complete and tune their Skills and match routines. Returning to Luigi and Guido allowed us to use established autonomous routines that only needed to be adjusted for the Beta+ configuration and Worlds fields.
Sarge & Fillmore · Autonomous Skills Backup Robots
Sarge and Fillmore were two simplified Autonomous Skills robots built a few days before California Baptist University VEXU Open 2026. Their names continued the season's Cars theme.
We developed them after missing the Skills Champion award by 2 points at each of our first two tournaments. Our autonomous score at both events came from double parking for 30 points. Adding a cleared Park Zone would have increased that routine to 35 points, which would have been enough to win Skills Champion at both events by 3 points.
Sarge and Fillmore did not have drivetrains. They were designed only to complete the minimum actions required for a reliable 35-point Autonomous Skills score:
- Sarge used a pneumatic mechanism to push the Blocks out of the starting Park Zone for 5 points
- Fillmore spun a motor so it registered as a moving robot
- Sarge remained parked for 15 points
- Fillmore remained parked for 15 points
- Total score: 35 points
The concept intentionally avoided autonomous pathing, localization, and complex scoring mechanisms. Their purpose was to establish a dependable 35-point Skills baseline in case Luigi and Guido's longer autonomous routine experienced mechanical, electronics, or localization problems.
We used Sarge and Fillmore for our first Autonomous Skills run at California Baptist University VEXU Open 2026, where they successfully established the 35-point baseline. Luigi and Guido then exceeded that score with 42-point and 50-point Autonomous Skills runs, so Sarge and Fillmore were not used for our final combined score.
Although the backup robots were ultimately unnecessary, they gave the team a low-risk contingency and ensured that an autonomous failure from Luigi and Guido would not leave us below the score that had cost us Skills Champion at the previous two events.
VEX AI Intent
The robots were mechanically and electronically designed with VEX AI in mind from the beginning of the season.
This influenced the decision to include:
- An external localization computer
- Camera-based field alignment
- A Raspberry Pi coprocessor
- Custom encoders and sensor interfaces
- A modular communication architecture
- Wireless troubleshooting and configuration
- Expandability for additional vision cameras and sensors
Luigi and Guido did not compete in VEX AI. After completing the VEX-U World Championship, the team chose to take a break instead of preparing for another major event. No VEX AI-specific mechanical, electrical, or software testing was completed.
Sally & Cruz Worlds Rebuild
After California Baptist University VEXU Open 2026, I led the development of Sally and Cruz, a replacement robot pair intended to address the limitations discovered through Luigi and Guido.
The new architecture focused on:
- Driving beneath the Long Goal
- Holonomic movement
- Faster acceleration
- More reliable double parking
- Lower Block compression
- Stronger and pre-planned wings
- Better defensive maneuverability
- Improved match play
- Continued use of the custom electronics stack
Sally and Cruz were fully built, and the team had begun programming their autonomous routines. However, the project fell behind during integration and testing. We did not have enough time to resolve the remaining bugs, finish the Skills and match autonomous routines, and properly tune both robots.
We kept Luigi and Guido built, functional, and competition-ready while developing Sally and Cruz. All four robots were brought to St. Louis so we could continue working while preserving a reliable backup option.
Two days before Worlds, while already in St. Louis, we decided that Sally and Cruz were not ready for competition. We returned to Luigi and Guido because their mechanisms, autonomous routines, replacement parts, and maintenance requirements were already understood.
Sally and Cruz are covered in greater detail as a separate portfolio project.
What I Learned
- How to lead a two-robot project through strategy, CAD, manufacturing, assembly, competition, and season-long development
- How designing specifically for Skills can create different priorities than designing for tournament match play
- How early architecture decisions can limit acceleration, maneuverability, and future subsystem additions
- How master sketches and top-down CAD make it easier to manage two related robot designs
- How to continuously upgrade the same physical robots through Alpha, Beta, and Beta+ phases
- How to design high-capacity Block paths around intake, indexing, and outtake requirements
- How to abandon an unused color-sorting architecture and implement the function elsewhere
- How placing the intake and outtake on opposite sides can reduce scoring cycle time
- How to use a movable outtake flap for both scoring control and Block retention
- How material selection affects long shafts, impact-loaded components, and replacement-part planning
- How to design wing and aligner structures around impacts acting through a long lever arm
- How to use PAHT-CF for highly loaded mounts and linkage components
- How to package custom electronics and sensors into a competition robot
- How to solder, assemble, install, and test custom magnetic encoder hardware
- How to use a custom localization backend to program and tune autonomous routines
- How to combine Pinpoint heading with Distance Sensor wall resets
- How switching from Python to C++ improved coprocessor speed, memory use, and reliability
- How tournament post-mortems create focused and measurable improvement plans
- How to balance rapid prototyping with competition reliability
- How to maintain proven robots as a backup while developing replacement machines
- How to recognize when a completed rebuild still needs more debugging and tuning before competition
- How to make a major competition decision two days before Worlds
- How to design and manufacture a competition mechanism on the morning it was needed
- How to prepare an existing robot pair for Worlds under a compressed schedule
- How to design an electronics architecture for future VEX AI expansion without requiring immediate VEX AI development
- How to plan and communicate two-robot Skills routes as a Drive Coach
- How to develop and communicate alliance strategy for tournament matches
- How to coordinate two drivers operating robots with different Skills and match responsibilities
- How drive-coaching observations can guide mechanical, autonomous, and strategic improvements
