Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
87 changes: 87 additions & 0 deletions docs/robotx26.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,87 @@
# RobotX 2026

The [Maritime RobotX Challenge](https://robotx.org/) is an international
competition in which teams develop autonomous maritime systems that cooperate
across the surface, air, and underwater domains. Unlike single-vehicle
competitions, RobotX rewards teams that can coordinate heterogeneous robots —
a surface vessel, an aerial scout, and an underwater vehicle — to complete
tasks that no single platform could accomplish alone. Building on our 1st Place
Autonomy finish at RobotX 2024, we are preparing for RobotX 2026 with a strong
emphasis on multi-vehicle simulation before on-water testing.

## Why Simulation First

On-water testing time is scarce, expensive, and weather-dependent, and a fault
in one vehicle can stall an entire multi-robot rehearsal. By reproducing the
full three-vehicle system in simulation, we can iterate on mission logic and
inter-vehicle coordination every day, reproduce failures deterministically, and
arrive at the water with software that already works as an integrated system.
The same perception, controls, and mission code we run in the simulator is what
we intend to deploy on the real platforms, so progress made in simulation
carries directly over to hardware.

## Multi-Vehicle Simulation

Our RobotX 2026 effort is built around a shared Gazebo simulation that runs an
Autonomous Surface Vehicle (ASV), an Unmanned Aerial Vehicle (UAV), and an
Autonomous Underwater Vehicle (AUV) together in one world — a model of the
Singapore river competition course. All three vehicles are spawned into the
same scene and connected to ROS 2, so they share a common clock, coordinate
frames, and message bus exactly as they would on the water.

The simulator and a set of end-to-end demos are public:

- [`BumblebeeAS/multivehicle_sim`](https://github.com/BumblebeeAS/multivehicle_sim)
— the shared world, vehicle models, and the Gazebo ↔ ROS 2 bridges.
- [`BumblebeeAS/examples`](https://github.com/BumblebeeAS/examples) — example
missions and controllers that run on top of the simulator (the
`multivehicle` project), launchable as a full stack with a single tmuxp
session.

| Vehicle | Platform | Stack |
|---------|----------|-------|
| ASV | BlueBoat | thrust mixer + line-of-sight waypoint controller |
| UAV | PX4 x500 | PX4 SITL + uXRCE-DDS offboard flight |
| AUV | BlueROV2 | ArduSub / MAVROS missions |

### Autonomous Surface Vehicle — BlueBoat

The BlueBoat is the centerpiece of the RobotX course. Its control stack pairs a
thrust mixer — which converts desired surge and yaw commands into individual
thruster outputs — with a line-of-sight (LOS) waypoint controller that steers
the vessel smoothly along a sequence of waypoints. A demo mission drives the
boat through a course using this controller, exercising the same path-following
logic we will use for the navigation and station-keeping tasks.

### Unmanned Aerial Vehicle — PX4 x500

The x500 quadrotor runs full PX4 software-in-the-loop, communicating over the
uXRCE-DDS bridge just as the flight controller does on real hardware. An
offboard flight demo commands autonomous trajectories from ROS 2, giving us a
realistic testbed for an aerial scout that can survey the course and feed
information back to the surface vehicle.

### Autonomous Underwater Vehicle — BlueROV2

The BlueROV2 runs ArduSub with MAVROS, mirroring the underwater platform's real
autopilot interface. A scripted square-dive mission demonstrates depth-holding
and waypoint navigation underwater, the foundation for the underwater elements of
the challenge.

## Tooling and Integration

Running all three vehicles in one world lets us develop and debug the hand-offs
between them — for example, the UAV scouting ahead of the ASV — rather than
testing each platform in isolation. The same setup also validates the supporting
infrastructure as an integrated system:

- **Odometry bridges** publish each vehicle's pose into ROS 2, so missions and
visualization tools see a consistent picture of the whole fleet.
- **An operations dashboard** tracks all three vehicles' odometry on a live web
view, simulating the shore-side situation we rely on at the
competition.
- **Foxglove** provides real-time introspection of topics and transforms
during development and debugging.

More details, results, and on-water footage will be added here as our RobotX
2026 campaign progresses.
12 changes: 8 additions & 4 deletions docs/stack.md
Original file line number Diff line number Diff line change
Expand Up @@ -210,15 +210,19 @@ flowchart LR

## Simulation

| Repository | What it does |
| ----------------------------------------------------------- | ------------------------------------------------------------ |
| [`ardusub_sim`](https://github.com/BumblebeeAS/ardusub_sim) | ArduSub and Gazebo simulation, built on Project DAVE. |
| [`bb_worlds`](https://github.com/BumblebeeAS/bb_worlds) | Gazebo worlds and assets for vehicles and competition tasks. |
| Repository | What it does |
| --------------------------------------------------------------------- | -------------------------------------------------------------------- |
| [`ardusub_sim`](https://github.com/BumblebeeAS/ardusub_sim) | ArduSub and Gazebo simulation, built on Project DAVE. |
| [`bb_led_plugin`](https://github.com/BumblebeeAS/bb_led_plugin) | Gazebo plugin simulating LEDs with runtime-switchable modes (patterns, colors). |
| [`bb_worlds`](https://github.com/BumblebeeAS/bb_worlds) | Gazebo worlds and assets for vehicles and competition tasks. |
| [`examples`](https://github.com/BumblebeeAS/examples) | End-to-end demos and quick-start workspaces built on our simulators. |
| [`multivehicle_sim`](https://github.com/BumblebeeAS/multivehicle_sim) | Multi-vehicle Gazebo simulation running an ASV, UAV, and AUV together. |

## Developer Platforms and Tooling

| Repository | What it does |
| ------------------------------------------------------------------------------------------------- | -------------------------------------------------------------- |
| [`bb_robotx_dashboard`](https://github.com/BumblebeeAS/bb_robotx_dashboard) | Web operations dashboard for tracking RobotX vehicles live. |
| [`controlkitv3`](https://github.com/BumblebeeAS/controlkitv3) | Foxglove-based interface for vehicle control and telemetry. |
| [`isaac-ros-docker`](https://github.com/BumblebeeAS/isaac-ros-docker) | Docker tooling for Isaac ROS on legacy JetPack 6 Orin systems. |
| [`release`](https://github.com/BumblebeeAS/release) | Source for this documentation site and public release notes. |
Expand Down
1 change: 1 addition & 0 deletions mkdocs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -111,3 +111,4 @@ nav:
- Overview: index.md
- Software Stack: stack.md
- RoboSub 2025: robosub25.md
- RobotX 2026: robotx26.md