For the complete documentation index, see llms.txt. This page is also available as Markdown.

Patrol

Run an autonomous patrol between waypoints along a route graph.

Patrol turns navigation into a routine: the robot loops between the waypoints of a route graph, over and over, without anyone driving it. It's the backbone of monitoring and inspection deployments. If you've set up auto-charging, a patrol becomes genuinely hands-off — when the battery runs low the robot docks, tops up, and picks the route back up where it left off.

Patrol is a Go2-only feature today, and it runs on top of Nav2 — so Nav2 needs to be up on the map first, with a route graph saved for it.

In the portal

You can lay out a patrol route and start it from the OpenMind portal: draw the waypoints on the map, save the route, and start the patrol — then pause, resume, or stop it from the same view.

Running a patrol

Start it with the map and route:

Pause and resume as needed:

And stop when you're done:

GET /status tells you what's running at any time — look at patrol_status and current_patrol (which map and route are loaded). Note the endpoint pattern is <verb>/patrol (start, stop, pause, resume), not patrol/<verb>.

Parameters

POST /start/patrol

Parameter
Type
Required
Description

map_name

string

yes

Map to patrol

route_name

string

yes

Route graph (GeoJSON) to follow

launch_file

string

no

Custom launch file (default go2_patrol_launch.py)

If something goes wrong

  • 400 starting — not a Go2, Nav2 isn't running, a patrol is already going, or you left out map_name/route_name.

  • 400 route missing — save the route first with POST /maps/route/save.

  • 400 on pause/resume — nothing is patrolling.

For system endpoints like GET /status and base control, see the Autonomy API Overview.

Last updated

Was this helpful?