Humanoid team at WATonomous

Max Yuan

Mechatronics Engineering at the University of Waterloo

Waterloo, Canada · open to robotics and ML co-op roles

Max Yuan in headphones and a black hoodie, giving two thumbs up

What I'm working on

I build robots that learn to move and handle things: learned manipulation, quadruped locomotion, and ROS2 autonomy.

Experience

All experience
  1. Sept 2026 – present

    WATonomous

    Humanoid team, robot learning · Waterloo, ON

    • Fine-tuned π₀.5, a vision-language-action model, so the Pioneer arm picks up a cube and places it in a tray. The vision-language backbone stays frozen and only the action expert trains.
    • Built the data pipeline behind it: a 7-servo leader arm drives a digital twin in Isaac Sim and records demonstrations as a LeRobot dataset.
    • π₀.5 VLA
    • LeRobot
    • Isaac Sim
    • PyTorch
  2. Sept 2023 – Apr 2025

    FIRST Tech Challenge

    Co-captain, lead programmer and driver · Team 18844 (Pr0teens)

    • Led the software: PID pathing on fused odometry and IMU data, and a vision pickup system built on OpenCV and a custom CNN.
    • Won the 1st place Connect Award in the Ochoa Division at the 2025 FIRST World Championships, representing Team Canada.
    • Java
    • PID control
    • odometry
    • OpenCV
  3. Sept 2026 – Apr 2031

    University of Waterloo

    BASc, Mechatronics Engineering · Honours Co-op

All projects

Skills

Hover or tap a skill to see which projects I used it in.

Languages

3 skills

Tap a skill with a number to see where I used it.

Environments

3 skills
Linux CLI Git

Tap a skill with a number to see where I used it.

Simulation & vision

4 skills

Tap a skill with a number to see where I used it.

Robotics & control

10 skills

Tap a skill with a number to see where I used it.

Machine learning

8 skills

Tap a skill with a number to see where I used it.

Learning next

In progress

What I'm picking up next, and where.

Photos

  • Max presenting the Brackey Way at the BOTS hackathon
    Pitching at BOTS
  • Max next to Bracket Bot
    With Bracket Bot
  • FTC team 18844 with a Canadian flag at the FIRST World Championships
    Team Canada at Worlds
  • A 3D-printed leader arm clamped to a desk, with the Pioneer arm simulation on the monitor behind it
    The leader arm
  • Max and a teammate beside the RICO arm at Eureka Hacks
    RICO at Eureka Hacks
  • The RythmHacks turret: a 3D-printed ping-pong ball launcher with a flywheel and servos, wired to an Arduino
    StudyBuddy 9520

Looking for a robotics or ML co-op

Happy to talk about robot learning, locomotion policies, sim-to-real transfer, or anything else in robotics.

About

Max Yuan in a black polo at a restaurant table

I like robots that have to deal with the real world.

I'm a Mechatronics Engineering student at the University of Waterloo (Honours Co-op, class of 2031). I'm most interested in robots that work in the physical world: legged locomotion, mobile autonomy, and manipulation that mixes learned policies with classical control.

Most of my recent work is robot learning and autonomy. I'm training a Unitree Go2 to walk with PPO in Isaac Lab, I built a ROS2 Nav2 stack that maps and navigates a maze in Isaac Sim, and my team fine-tuned a π₀ vision-language-action model to pull toast out of a toaster, which won 1st place at the BOTS hackathon. On WATonomous's humanoid team I fine-tuned π₀.5 for pick and place and built the leader-arm data pipeline behind it.

Before university I was co-captain and lead programmer of FTC team 18844 (Pr0teens). We represented Team Canada at the 2025 FIRST World Championships, and I ran robot showcases and SPIKE robotics workshops for 60+ kids across the GTA. Now I'm on WATonomous's humanoid team, working on robot learning for manipulation.

2031BASc Mechatronics, UWaterloo
100+teleop demos collected for π₀
60+kids taught at robotics workshops
2025FIRST Worlds as Team Canada

Education

University of Waterloo

BASc, Mechatronics Engineering, Honours Co-op

Sept 2026 – Apr 2031 · Waterloo, ON

Right now

WATonomous · Humanoid

Fine-tuning π₀.5 for manipulation with a digital twin in Isaac Sim. Next up: more demonstrations and reinforcement learning in Isaac Lab.

Looking for

A robotics or ML co-op

Happy to talk about robot learning, locomotion policies, sim-to-real transfer, or anything else in robotics.

Projects

Robot learning, autonomy, and manipulation, from hackathon weekends to solo simulation projects and competitive robotics.

Aug – Sept 2026 Robot learning In progress

Quadruped locomotion with PPO

Unitree Go2 · NVIDIA Isaac Lab · solo project

A walking policy for a Unitree Go2, trained from scratch with PPO in a custom manager-based RL environment I built in Isaac Lab.

  • Isaac Lab
  • PPO
  • rsl_rl
  • PyTorch
  • curriculum learning
Case study
  • Built a custom ManagerBasedRLEnv for flat-terrain Go2 locomotion: 48-dim observations, 12-DOF joint-position actions, and a custom reward stack.
  • Designed a sigmoid curriculum that ramps up the foot-lift reward over training, so the policy learns to balance before the reward starts shaping its gait.
  • Early policies learned to crawl; a custom height reward fixed it, and squared action-rate penalties keep joint motion smooth.
  • Next: get-up recovery policies and domain randomization for sim-to-real transfer.
May – July 2026 Autonomy

Autonomous maze navigation

NVIDIA Nova Carter · Isaac Sim 5.1 · ROS2 · solo project

A ROS2 navigation stack on a Nova Carter in Isaac Sim. The robot drives into a maze it hasn't seen, builds a map with SLAM, localizes with AMCL, and uses Nav2 to plan and follow a path to the goal.

  • ROS2
  • Nav2
  • slam_toolbox
  • AMCL
  • Isaac Sim
  • RViz
Case study
  • Integrated slam_toolbox mapping, AMCL localization, and Nav2 with a Regulated Pure Pursuit controller, debugging in RViz.
  • Built the full TF tree (map → odom → chassis_link → sensors) with Isaac Sim action graphs; debugged QoS mismatches, sensor-rate bottlenecks, and frame-authority conflicts.
  • Traced a warped SLAM map to LiDAR scans lagging odometry during turns, and fixed it by raising the RTX LiDAR scan rate to 20 Hz.
Eureka Hacks Vision & manipulation

RICO, a tool-fetching arm

4-DOF arm · overhead camera · hackathon team

Ask for a tool in plain language and the arm finds it on the bench and hands it to you. A Groq LLM plans the steps, YOLOv8 finds the tool, and inverse kinematics moves the arm.

  • YOLOv8
  • OpenCV homography
  • inverse kinematics
  • Groq LLM
  • Python
Case study
  • A Groq LLM turns a plain-language request into a list of robot actions.
  • A homography maps YOLOv8 detections from pixels to positions on the bench, so tools can go anywhere instead of at fixed spots.
  • An inverse kinematics solver turns that position into the joint angles needed to reach and grab the tool.
Sept 2023 – Apr 2025 Competition Connect Award, Worlds

FIRST Tech Challenge 18844

Co-captain, lead programmer & driver

Competitive robotics with team 18844, ending at the 2025 FIRST World Championships as Team Canada representatives. I led the software: localization, autonomous pathing, and vision-based pickup.

  • Java
  • PID control
  • odometry
  • OpenCV
  • CNN
Case study
  • Tuned three PID controllers (x, y, heading) for point-to-point autonomous pathing, turning the integral term on only within 10–20 cm of the target so moves finish without overshoot.
  • Fused two-wheel odometry with IMU heading, rotating robot-frame motion into field coordinates.
  • Automated sample pickup with OpenCV and a custom-trained CNN that estimates each sample's distance and orientation.
Mini project Oct 2025 Vision & control 2nd place, RythmHacks 2025

StudyBuddy 9520

An anti-procrastination turret · RythmHacks 2025 · team of four

A desk turret that watches you study and fires a ping-pong ball when you get distracted. YOLOv8 spots the distraction, PID loops aim the pan and tilt servos at you, and a flywheel launches the ball.

  • YOLOv8
  • OpenCV
  • PID control
  • Arduino
  • C++
  • Python
  • Onshape
Devpost
  • Designed the turret in Onshape and 3D-printed it: two high-torque servos for yaw and pitch, and a 1550 RPM DC motor spinning the flywheel.
  • A laptop runs YOLOv8 on a 4K webcam feed to find the distracted person, then sends aim targets to an Arduino UNO over serial. Switching to asynchronous serial removed the lag between detection and motion.
  • A ServoEncoder class wraps PID control and encoder tracking. The servos only covered 60–120° instead of the documented 0–180°, so the PID output had to be normalized and retuned for their non-linear response.
  • When YOLOv8 dropped a detection, the turret kept aiming at the last valid target instead of snapping back.

Experience

  1. Sept 2026 – present

    WATonomous

    Humanoid team, robot learning · University of Waterloo design team

    • Fine-tuned π₀.5, a vision-language-action model, so the Pioneer humanoid's left arm picks up a cube and places it in a tray in Isaac Sim.
    • Froze the vision-language backbone and trained only the action expert, which let the run fit on one 48 GB GPU.
    • Wrote the recorder for a 7-servo leader arm that drives the simulated arm joint for joint and saves camera views, joint angles and the prompt as a LeRobot dataset.
    • Set up the pick-and-place scene and its three cameras in Isaac Sim, and collected 71 demonstrations.
    • Wrote an offline evaluation that showed the first run was underfit, then retrained for 6,000 updates.
    • π₀.5 VLA
    • LeRobot
    • Isaac Sim
    • PyTorch
    • digital twins
    • teleoperation
  2. Sept 2023 – Apr 2025

    FIRST Tech Challenge

    Co-captain, lead programmer and driver · Team 18844 (Pr0teens)

    1st place Connect Award, Ochoa Division, at the 2025 FIRST World Championships, as Team Canada representatives.

    • Distributed work across the programming subdivision, scoping tasks by skill level and integrating everyone's contributions.
    • Ran robot showcases and hands-on SPIKE robotics workshops for 60+ kids across the GTA.
    • Built a PID pathing system fusing two-wheel odometry with IMU data to localize the robot in field coordinates.
    • Automated a pickup system with OpenCV and a custom-trained CNN that estimates distance and orientation.
  3. Sept 2026 – Apr 2031

    University of Waterloo

    BASc, Mechatronics Engineering · Honours Co-op · Waterloo, ON

Awards

1st place

BOTS hackathon (Battle of the Schools), WAT.ai vs. UTMIST · Sept 2026

The Brackey Way, an autonomous sandwich robot

A dual-arm Bracket Bot that takes toast out of a toaster, adds lettuce, and closes the sandwich with no human control. A fine-tuned π₀ VLA handles the toaster grasp, OpenCV + IK handles the lettuce, and a state machine runs the steps. The prize was four Bambu Lab P1S 3D printers.

  • π₀ VLA
  • 100+ teleop demos
  • OpenCV + IK
  • team of four
Read the case study
Max next to Bracket Bot, holding the finished sandwich
The winning sandwich
Max presenting at the BOTS hackathon
Pitching it

All awards

Sept 2026

1st place

BOTS Hackathon

Battle of the Schools, WAT.ai vs. UTMIST

Oct 2025

2nd place

RythmHacks 2025

StudyBuddy 9520, an anti-procrastination turret · See the project

2025

1st place · Connect Award

FIRST World Championships

Ochoa Division, as Team Canada representatives

Team 18844

2nd place · Inspire Award

FTC Ontario Provincials

Ontario Provincial Championships

Team Canada

FTC team 18844 holding a Canadian flag at the FIRST World Championships

Representing Canada at FIRST Worlds 2025

FTC team 18844 (Pr0teens) at the 2025 FIRST World Championships, where we won the 1st place Connect Award in the Ochoa Division. I was co-captain, lead programmer, and driver.

The robot and its code

Contact

Looking for a robotics or ML co-op. Happy to talk about locomotion policies, sim-to-real transfer, robot manipulation, or anything else in robotics.