# Changelog

## ROS2 Topic Namespacing (upcoming release)

### Breaking change: default topics no longer namespaced

ROS2 topics now default to standard paths without a robot UUID prefix:

- `/cmd_vel` (was `/robot{uuid}/cmd_vel`)
- `/camera2d` (was `/robot{uuid}/camera2d`)
- `/odom` (was `/robot{uuid}/odom`)

RealSense topics (`/camera/camera/...`) are unchanged.

### Multi-robot fleets

To control multiple robots simultaneously, enable **ROS2 topic namespacing** per robot in the [robotics.dev](https://robotics.dev) portal (Robots page). This prefixes all bridged topics with `/robot{uuid}/`.

ROS topic namespacing is a paid add-on (billing coming soon). Users with multiple robots who work with one robot at a time can leave namespacing disabled.

### Migration

| Scenario | Action |
|----------|--------|
| Single robot, no portal override | No action — new defaults apply on reconnect |
| Multi-robot fleet | Enable `rosNamespace` on each robot in the portal; restart motors and camera (`robotics start motors`, `robotics start camera`) |
| Legacy `cmdVel` override in portal | Still honored — no change needed |
| Offline / no portal connection | Uses `/cmd_vel`, `/camera2d`, `/odom` |

After changing namespacing in the portal, run `robotics disconnect` then `robotics connect` to pick up comms changes. Restart motor and camera processes separately.
