All experience

Competition / Aug to Dec 2025

IEEE RAS Robotathon 2025

Lead Programmer for a first-place autonomous robot, building its sensing and navigation pipeline across a cross-disciplinary team.

The Robotathon 2025 robot: a 3D-printed teal and white chassis holding a servo, gear train, sensor mounts, and a dense wiring harness.
The competition robot, sensors and wiring exposed

Overview

I was Lead Programmer for our IEEE RAS Robotathon entry in the fall 2025 semester. The robot took first place and also won Most Creative Code.

My work covered the autonomous navigation pipeline, the path from raw sensor readings to motor output, and sensor integration and calibration across the whole platform.

The problem

A competition robot has to complete a course on its own, with sensors that report the world imperfectly and a deadline that does not move. The difficulty is rarely any single component. It is that the components have to agree.

An IR sensor’s threshold depends on ambient light. A color sensor’s reading depends on how far it sits from the surface. A line-array reading is only useful once you know which of its elements correspond to being centered. All of that has to be established before navigation logic can be written against it.

Approach

I built the navigation pipeline around bang-bang control: the robot measures its error relative to where it should be, and responds with a discrete correction rather than a proportional one. Bang-bang is less smooth than a tuned PID loop, but it is far easier to reason about and tune under a deadline, and it degrades predictably when a sensor reading is noisy.

Sensing came from IR sensors, a line array, and color sensors, with motor drivers converting decisions into movement and Bluetooth available for control and debugging. Calibration was treated as part of the system rather than a setup step. The thresholds a sensor uses are as much a part of the robot’s behavior as the code reading them.

Working across disciplines

The team spanned software, mechanical, and electrical work, and the boundaries between them were where most surprises lived. Sensor placement is a mechanical decision that determines what the software can detect. Wiring and power are electrical decisions that determine whether a reading is trustworthy.

A large part of the role was staying in contact across those boundaries: asking what a mechanical change would do to sensor geometry before it was made, rather than discovering it afterward in the readings.

Result

The robot took first place in the competition and won Most Creative Code. The source is public.

What I learned

Calibration is not preparation for the real work; it is the real work. The navigation logic was comparatively short. What made it function was knowing precisely what each sensor reported in the environment the robot actually ran in, and that knowledge had to be re-established every time the hardware changed.

Contact information

Based in Austin, Texas

Let’s talk.

Email works best, but feel free to reach out anywhere.

Phone
(469) 465-1537
Primary email
[email protected]
University email
[email protected]
Profiles