From 5d112bb1cb1ca9beddfcdd15331cd5b39b33b60f Mon Sep 17 00:00:00 2001 From: monkescripts Date: Wed, 24 Jun 2026 01:39:01 +0800 Subject: [PATCH 1/2] Add RobotX 2026 documentation and update navigation --- docs/robotx26.md | 87 ++++++++++++++++++++++++++++++++++++++++++++++++ docs/stack.md | 12 ++++--- mkdocs.yml | 1 + 3 files changed, 96 insertions(+), 4 deletions(-) create mode 100644 docs/robotx26.md diff --git a/docs/robotx26.md b/docs/robotx26.md new file mode 100644 index 0000000..503d84d --- /dev/null +++ b/docs/robotx26.md @@ -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 bridged into 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 submerged portions 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, approximating the shore-side situational awareness we rely on at the + competition. +- **Foxglove** provides deep, 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. diff --git a/docs/stack.md b/docs/stack.md index e3063ec..7d9719a 100644 --- a/docs/stack.md +++ b/docs/stack.md @@ -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. | diff --git a/mkdocs.yml b/mkdocs.yml index aded259..1db65b9 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -111,3 +111,4 @@ nav: - Overview: index.md - Software Stack: stack.md - RoboSub 2025: robosub25.md + - RobotX 2026: robotx26.md From 8179bee1f23278a3a7d31f29fd791091a8ec5946 Mon Sep 17 00:00:00 2001 From: monkescripts Date: Wed, 24 Jun 2026 14:03:59 +0800 Subject: [PATCH 2/2] Refine RobotX 2026 documentation for clarity and accuracy --- docs/robotx26.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/robotx26.md b/docs/robotx26.md index 503d84d..2c828e7 100644 --- a/docs/robotx26.md +++ b/docs/robotx26.md @@ -26,7 +26,7 @@ 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 bridged into ROS 2, so they share a common clock, coordinate +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: @@ -65,7 +65,7 @@ information back to the surface vehicle. 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 submerged portions of +and waypoint navigation underwater, the foundation for the underwater elements of the challenge. ## Tooling and Integration @@ -78,9 +78,9 @@ 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, approximating the shore-side situational awareness we rely on at the + view, simulating the shore-side situation we rely on at the competition. -- **Foxglove** provides deep, real-time introspection of topics and transforms +- **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