RobotX - Boat Software
RobotX 2026 > Boat Software
Overview
Software execution stack of our USV
We migrated from a pure Python threading–based system to ROS 2 (Robot Operating System 2) on Crusader, leveraging lessons learned from RoboBoat 2026 and RoboSub 2026. ROS 2 allows the team to take advantage of vendor-provided packages for sensor communication and to extract standardized data formats out of the box, significantly reducing the time required to develop low-level software. This migration also enables the team to utilize a wide range of mature, open-source tools within the ROS 2 ecosystem, such as ROS 2 LiDAR clustering packages and visualization tools like Foxglove.
Our software architecture is divided into four main stacks: Localization, Mapping, Cognition, and Behavior. Each stack can be developed and tested independently thanks to ROS 2’s distributed architecture, strong support for simulation and testing tools, and Software-in-the-Loop (SITL).
Localization
Boat on QGroundControl
Pivoting from our custom controller to a Pixhawk with the ArduRover platform, we are able to utilize its off-the-shelf sensor fusion capabilities, which use GPS position, differential heading, accelerometer, and other internal Pixhawk sensors to produce a precise estimation of the vehicle’s position.
Perception & Mapping
The Perception Stack enables the robot to see the world and understand its surroundings. With RoboBoat 2026’s intense requirement on mapping, we used Livox MID-360 LiDAR combined with Depthai OAKD_LR stereo camera to help Crusader detect and report the location of mission elements. The team deployed YOLO 26 (You Only Look Once), a machine learning (ML) model on our camera to detect objects, and have an initial estimation of target position. The estimation is further fused with LiDAR to give a more accurate position estimate.
Cognition Stack
In order to address the demanding requirements of dynamic mission planning, including interrupting the current mission and completing emergency tasks, we implemented a behavior tree to manage mission logic. The use of a behavior tree allows us to break down missions into smaller, reusable action pieces, such as navigating to a certain point or actuating the water shooter.
Computer vision + GPS Sensor Fusion
We leverage ground testing to extend the competition layout beyond the footprint of the pool. We leverage computer vision and gps sensor fusion to estimate the latitude longitude position of the buoys
Simulations
Omni-directional robot simulation
Navigation Channel simulation
Our testing happens in both simulated worlds and on real water. This year, the team created an omni directional land robot in Gazebo, allowing members to test mission logics quickly without the dependency of physical water test.