FRC Team 2489 Competition Robot

Mechanical & CAD team lead. I designed the robot's A-frame reinforcements, intake funnel, belly pan, and sensor mount, and co-redesigned a failing elevator drive.

2024–2025

Fusion 360 render of the full Team 2489 robot from the front left
What it is
A competition robot for the FIRST Robotics Competition (FRC), a high school league where teams design, build, and program robots for a new game each year.
My role
Mechanical & CAD Team Lead. My own designs: the A-frame reinforcements, the intake funnel, the wooden belly pan, the IR sensor that detects when a game piece is in position in the shooter, and the polycarbonate plates that protect the electronics. Shared 50/50 with a teammate: the elevator drive redesign, the elevator modifications, and electronics layout. I also led fabrication.
Tools
Fusion 360, Aluminum cutting, CNC routing: wood first, then polycarbonate, Drill press, Band saw, Table saw, Drill, Ratchet, Multimeter, Scoring tools, Center punch, Set square, Crimper (electronics)
Timeframe
2024–2025 season

01 The problem

The 2025 FRC game, REEFSCAPE, asked robots to pick up coral (4-inch PVC pipes) and place it on a reef with four scoring levels, where higher levels score more. Robots also had to knock algae (16-inch rubber balls) off the reef and score it in the processor or the net. Each match starts with 15 seconds of autonomous driving, then 2 minutes 15 seconds of driver control, and ends with robots climbing cages on the barge. Our robot was built to be an efficient back-and-forth scoring machine: it scored coral on levels 2, 3, and 4, including an autonomous level 4 score during the autonomous period. It wasn't built to handle algae or to climb. We designed around a minimal budget, since after registration fees we had little funding and few sponsors, and we were a very small team.

02 Design

I designed five parts of the robot on my own in Fusion 360: the A-frame reinforcements, the intake funnel, the wooden belly pan, the IR sensor that tells the robot when a game piece is in position in the shooter, and the polycarbonate plates that protect the electronics. I split the elevator drive redesign, the elevator modifications, and the electronics layout 50/50 with a teammate. Those are marked Shared design, parts I didn’t design are marked Team design, and vendor parts like motors are marked Off-the-shelf.

The A-frame came from a problem: the elevator was only bolted at its base, so its top swayed whenever it started or stopped quickly. The intake funnel bolts onto the A-frame so it comes off for servicing, and it feeds coral straight into the shooter. An infrared beam-break sensor on top of the shooter makes intake automatic: the coral slides in, the shooter pulls it forward, and it stops in the right spot the moment it breaks the beam.

Full robot

Fusion 360 render of the full robot from the front left, elevator lowered

Front left

The full robot in Fusion 360, elevator lowered.
Fusion 360 render of the robot from the side with the elevator raised and the shooter at the top

Elevator raised

Side view with the elevator raised and the shooter at the top.
Fusion 360 render of the robot from the front, looking into the intake funnel

Front

Front view, looking into the intake funnel.
Close-up render of the robot base showing the wooden belly pan, elevator gearbox, and electronics

Base close-up

Close-up of the base: the wooden belly pan, elevator gearbox, and electronics.
  1. A-frame reinforcements The elevator was only bolted to an aluminum piece at its very bottom. When it started and stopped quickly, the top swayed, stressing that joint and throwing its mass around. The A-frame supports the elevator and adds rigidity to the chassis, so we could move the elevator freely while the robot was driving.
  2. Intake funnel Takes coral from the human player and slides it forward into the shooter's spinning silicone wheels, which grab it and pull it in. It bolts onto the A-frame, so it comes off easily for servicing.
  3. Belly pan The floor panel holding the battery, robot control electronics, CAN bus, the elevator's limit switch, and the Limelight camera electronics. Wood because it was available and easy to mount things to and rearrange.
  4. IR game-piece sensor An infrared beam-break sensor on top of the shooter. It reads 0 until coral breaks the beam, then the shooter stops pulling the coral in. The robot manages intake on its own, so the drivers don't have to judge how far forward the coral goes.
  5. Electronics guards A polycarbonate sheet over the electronics. The game had flying and falling PVC game pieces, and this keeps them from dropping into the belly pan and damaging the electronics.
  6. Electronics layout (Shared design)Laid out by the wire length each part needed: robot control next to the elevator drive, the battery on the other side, the radio on the frame, and a plastic energy chain carrying wiring up the elevator to the shooter motors and IR sensor.
  7. Elevator drive (Shared design)The original drive ran motor → chain → chain → elevator, and the chain kept skipping sprocket teeth under carriage load. A teammate and I replaced it with motor → gearbox → elevator, which stopped the failures and let us run the motor at 4.5× the output.
  8. Elevator (Shared design)Lifts the carriage that holds the shooter: a chain turns an axle that pulls the pulleys and raises the whole assembly. We changed how it's driven (see Elevator drive).
  9. Shooter (Team design)Pulls in the coral, holds it while the elevator rises, then shoots it onto the reef.
Fusion 360 render of the A-frame and intake funnel from the front, with the white funnel between the A-frame legs
The A-frame and intake funnel, from the front. The funnel bolts onto the A-frame, so it comes off easily for servicing.
Fusion 360 render of the A-frame and intake funnel from the side
The same assembly from the side. The A-frame supports the elevator and adds rigidity to the chassis.
Fusion 360 render of a yellow photoelectric sensor in a clear polycarbonate mounting plate
The IR sensor and its mount.
Fusion 360 render of the shooter with a white game piece loaded and the yellow IR sensor mounted on its side plate
The IR sensor (yellow) on top of the shooter, with a game piece loaded. When the coral breaks the infrared beam, the shooter stops pulling it in, so it always stops in the right spot.
Fusion 360 render of the elevator gearbox, with two motors driving gear trains at each end of a shared shaft
The elevator gearbox: the fixed gear drive that replaced the chain drive in 2025. (Shared design)

03 The numbers

QuantityValueHow I got it
Elevator motor output, chain drive vs. gear drive4.5×The motor output setting (0 = off, 1 = full power) went from 0.2 with the chain drive to 0.9 with the gear drive: 0.9 ÷ 0.2 = 4.5. These are the commanded output settings, not measured speeds. 0.2 was our testing speed, and the chain skipped even there, so we never ran it faster.
Coral scored per match, chain drive vs. gear drive1 → 13–20At 0.2 with the chain drive, we were lucky to score a single L2 coral in a whole match. At 0.9 with the gear drive, we reliably scored 3–5 on L4 and 5–7 on L3, and often 5–8 on L2: 13–20 coral per match.

04 Build

The A-frame and intake funnel in Fusion 360

CAD

The built aluminum A-frame with the white intake funnel mounted on the chassis

Built

The A-frame and intake funnel in CAD and as built.
Holding the white intake funnel, with its angled side walls and mounting brackets, in the shop
The intake funnel before mounting.
The aluminum A-frame bolted to the chassis, with the wooden belly pan visible inside the frame
The A-frame on the chassis, with the wooden belly pan inside.
The robot mid-build with the elevator, gearbox plate, and wiring installed
Mid-build, with the elevator and electronics going in.

05 What failed and what I changed

The first elevator drive ran motor → chain → chain → elevator. Under carriage load, the chain skipped teeth on the sprockets, even at our 0.2 testing speed. The skipping wore teeth off the sprockets, and the sudden catches twisted steel drive axles. The elevator would jump up an inch, then fall back down an inch.

The chain also went slack, because we couldn't fit the exact number of chain links for the distance. We tried to build a spring chain tensioner like the ones in car engines, but there wasn't room for a spring strong enough.

A teammate and I split the redesign 50/50 and replaced the chain with a gearbox: motor → gearbox → elevator. That eliminated the skipping and let us raise the motor output from 0.2 to 0.9 of full power, 4.5× higher. In matches, that took us from being lucky to score one L2 coral per game to reliably scoring 3–5 on L4 and 5–7 on L3, and often 5–8 on L2.

  1. Close-up of the original chain drive, with roller chains running over sprockets on the elevator shafts

    Revision 1

    The original chain drive. Skipping wore teeth off the sprockets, and the sudden catches twisted steel axles.
  2. Fusion 360 render of the elevator gearbox

    Revision 2 (final)

    The gear drive that replaced it. (Shared design)

06 Result

We placed 5th of 48 teams at the 2025 Contra Costa Regional.

The Team 2489 robot with blue bumpers at a competition venue
At the 2025 Contra Costa Regional.