RViz

A 3D view of your robot, like RViz: TF, maps, lasers, point clouds, markers, paths, poses and the robot model, with Nav2 goal and initial pose tools.

Creating it

  • Fixed frame: leave it empty to pick one automatically (map, odom… or the root of the TF tree).

  • Add map, laser, robot model and path displays (on by default): adds Map, RobotModel, LaserScan and a Path called Plan on /plan, ready for a typical Nav2 robot.

Displays

Displays appear as chips at the bottom. Tap Add to add one by display type or by topic (the search lists every topic on the network that can be displayed). Long-press a chip to edit or remove it. Each display has its own QoS: Best effort, Reliable or Transient local.

Display

Main options

Grid

Reference frame, plane (XY, XZ, YZ), cell size and count, color, alpha, line style and width, offset.

TF

Show names, axes and arrows; marker scale, name size, frame timeout.

Axes

Frame, length, radius, alpha.

RobotModel

From /robot_description (transient local). Visual and collision geometry, alpha and an optional mesh server (see below).

Map

nav_msgs/OccupancyGrid with map, costmap or raw colors, alpha and draw behind. Large maps are downsampled to fit the phone’s GPU.

LaserScan, PointCloud2, PointCloud

Squares or circles, size, color by intensity, range, x/y/z, RGB or flat color, value bounds, decay time (up to 30 s). PointCloud2 shows up to 500,000 points.

Odometry

Arrows or axes, how many to keep, position and angle tolerance.

Path

Color, line style and width, poses as axes or arrows.

Pose, PoseWithCovariance, PoseArray

Arrows or axes; covariance ellipse for PoseWithCovariance (e.g. /amcl_pose).

PointStamped, Polygon, Range

Clicked points, footprints and range sensor cones.

Marker, MarkerArray

Arrows, cubes, spheres, cylinders, lines, cube/sphere lists, points, triangle lists and text; delete, delete all and lifetime are honored. Mesh markers are not drawn.

Views and gestures

  • Views: Orbit, XYOrbit, TopDownOrtho, FPS and ThirdPersonFollower (follows a frame, base_link by default). Reset view puts the camera back.

  • One finger rotates, two fingers pan, pinch zooms and a two-finger twist rotates.

  • The background can be dark, RViz gray, black, light gray, white or midnight blue.

Goal and Pose

  • Goal publishes a 2D goal pose (geometry_msgs/PoseStamped) to /goal_pose.

  • Pose publishes a 2D pose estimate (PoseWithCovarianceStamped) to /initialpose.

Tap the ground and drag to set the heading. The pose is sent in the fixed frame (or map). You can change both topics from the menu, under Goal / Pose topics…. See Send Nav2 goals.

Import a .rviz file

From the menu, Import .rviz brings in the displays (all 18 types, groups included), the fixed frame, the background, the current view and the goal and pose topics of a config from desktop RViz. Anything it can’t use is listed as Not supported here. Importing replaces the tab’s current configuration. See Visualize your robot in 3D.

Robot meshes

URDF boxes, cylinders and spheres are drawn directly. Meshes (STL or Collada .dae) are downloaded over HTTP from the mesh server set in the RobotModel display, for example http://ROBOT_IP:8000: package://pkg/path becomes <server>/pkg/path. Any web server that serves your packages’ share folders works: see Visualize your robot in 3D. Without a mesh server, parts that use meshes are not drawn and the display says how many.