Back to all projects

Full Stack / RoboticsOngoing

Tethys AUV Simulation

ROS 2 and Gazebo work for an autonomous underwater vehicle

ROS 2 and Gazebo simulation work for AUV Calgary’s autonomous underwater vehicle, built to make software easier to develop and test before putting it on the real robot.

My role
Software Team Member
When
2026–Present
Context
AUV Calgary software team · targeting RoboSub 2027
01 / THE OVERVIEW

What I set out to build

Autonomous-vehicle software is difficult to develop if every test requires the physical vehicle. The team needs a simulation environment where software can interact with a useful model of Tethys before it is trusted on hardware.

My contribution

  • Worked with the ROS 2 development environment.
  • Contributed to Gazebo simulation work for Tethys.
  • Worked inside a multi-person robotics software team.
  • Helped with tooling and software needed for simulation-driven development.

Problem & approach

My work has mainly been around the software and simulation environment. I have been getting comfortable with ROS 2, Gazebo, Linux, team workflows, and the tooling needed to connect simulated components in a way that supports development and testing.

How it works

  1. 01

    Model Tethys

    Represent the vehicle and environment inside Gazebo.

  2. 02

    Connect ROS 2

    Expose simulated components through ROS 2 interfaces.

  3. 03

    Run software

    Run software against those interfaces instead of requiring the physical AUV.

  4. 04

    Test in simulation

    Use the simulation to develop and debug autonomy/perception-related software as the project evolves.

Data & evaluation

How it was evaluated

The current work supports development and testing in simulation. Physical-vehicle and competition performance are not reported here.

Progress so far

Ongoing
Team development
Simulation
Validation environment
  • Ongoing RoboSub 2027 engineering work; progress is best shown through simulation artifacts and implemented components rather than a single metric.

Limits & lessons

Limitations

  • This is ongoing software and simulation work within a multi-person robotics team. It does not establish physical-vehicle or autonomous competition performance.

What I learned

  • This project has forced me outside normal application development. Timing, sensors, physical assumptions, and message interfaces matter much more when software represents a real vehicle.

Next steps

  • Keep expanding the simulation environment as the real vehicle develops.
  • Improve repeatable testing around ROS 2 nodes.
  • Contribute to more perception/autonomy work as the software stack matures.
Another projectDystopia - 2D Platformer