Skip to content

docs: update nav2_tree_nodes.xml to align with current documentation and hpp files#6122

Open
AJedancov wants to merge 1 commit intoros-navigation:mainfrom
AJedancov:docs/update-bt-node-descriptions
Open

docs: update nav2_tree_nodes.xml to align with current documentation and hpp files#6122
AJedancov wants to merge 1 commit intoros-navigation:mainfrom
AJedancov:docs/update-bt-node-descriptions

Conversation

@AJedancov
Copy link
Copy Markdown
Contributor


Basic Info

Info Please fill out this column
Ticket(s) this addresses -
Primary OS tested on -
Robotic platform tested on -
Does this PR contain AI generated software? No
Was this PR description generated by AI software? No

Description of contribution in a few bullet points

(I'll add a description below in the comments)

Description of documentation updates required from your changes

Description of how this change was tested

Checked pre-commit locally.


Future work that may be required in bullet points

For Maintainers:

  • Check that any new parameters added are updated in docs.nav2.org
  • Check that any significant change is added to the migration guide
  • Check that any new features OR changes to existing behaviors are reflected in the tuning guide
  • Check that any new functions have Doxygen added
  • Check that any new features have test coverage
  • Check that any new plugins is added to the plugins page
  • If BT Node, Additionally: add to BT's XML index of nodes for groot, BT package's readme table, and BT library lists
  • Should this be backported to current distributions? If so, tag with backport-*.

…and hpp files

Signed-off-by: AJedancov <andrei.jedancov@gmail.com>
@AJedancov
Copy link
Copy Markdown
Contributor Author

This update includes:

  • Types and default values from corresponding hpp files.

  • Descriptions from current nav2 documentation.

  • The ports order corresponds the documentation, except:

    • ports from base classes for input ports (e.g. server_name).
    • error info for output ports (e.g. error_code_id).
      They are placed at the end of each input/output group.
  • Added ComputeCoveragePath and CancelCoverage nodes from opennav_coverage_bt.

  • For types, the prefix std:: is omitted.

  • Added missing ports:

    • error_msg in AssistedTeleop
    • server_name and server_timeout in:
      • SmoothPath,
      • ComputeRoute,
      • ComputeAndTrackRoute
      • DockRobot,
      • UndockRobot
    • server_timeout in RemoveInCollisionGoals
    • error_codes_to_check (from the base class AreErrorCodesPresent) in:
      • WouldAControllerRecoveryHelp
      • WouldAPlannerRecoveryHelp
      • WouldASmootherRecoveryHelp
      • WouldARouteRecoveryHelp
  • Fixed port name in ComputeAndTrackRoute: execution_time -> execution_duration

Added common descriptions for all nodes derived from base classes:

  • BtActionNode or BtCancelActionNode:
    • server_name: "Action server name."
    • server_timeout: "Action server timeout (ms). If not provided, uses the BT Navigator's default_server_timeout parameter value (20 ms by default)."
  • BtServiceNode:
    • server_timeout: "Service server timeout (ms). If not provided, uses the BT Navigator's default_server_timeout parameter value (20 ms by default)."

Some nodes derived from BtServiceNode have also predefined service_name in constructors, for them using additional note now:

  • RemoveInCollisionGoals and CheckPoseOccupancy: "... If not specified, /global_costmap/get_cost_global_costmap is used"
  • ValidatePath: "... If not specified, is_path_valid is used."

The same for nodes derived from BtActionNode, some of which have a predefined service_name in constructor too, so their descriptions were also supplemented with corresponding notes: "... If not specified, ... is used."

"Cancel" nodes have more extensive descriptions in XML, so I keep them as is, an example of some of them:

  • CancelControl: "Action server name to cancel the controller server."
  • CancelBackUp: "Action server name to cancel the backup behavior."

Added descriptions for new error_codes_to_check ports:

  • WouldAControllerRecoveryHelp: "The set of controller server error codes you wish to compare against the active error code."
  • WouldAPlannerRecoveryHelp: "The set of planner server error codes you wish to compare against the active error code."
  • WouldASmootherRecoveryHelp: "The set of smoother server error codes you wish to compare against the active error code."
  • WouldARouteRecoveryHelp: "The set of route server error codes you wish to compare against the active error code."

Added note for all nodes that include information about global and robot frames, (except TruncatePathLocal that specifies name by default):

  • global_frame: "...If not provided, uses the BT Navigator's global_frame parameter value (map by default)."
  • robot_base_frame: "...If not provided, uses the BT Navigator's robot_base_frame parameter value (base_link by default)."

@AJedancov AJedancov marked this pull request as ready for review April 30, 2026 20:40
@SteveMacenski
Copy link
Copy Markdown
Member

SteveMacenski commented Apr 30, 2026

Is there a way for this to be autogenerated or auto-verified if any missing/wrong? I forget if we're still using this file for the docs or only the headers now.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants