# Run basic AMR functionality with the AMR service `qrb_ros_amr_service` is a ROS2 package suite designed to manage the AMR behaviors on Qualcomm robotics platforms. Key features include: - P2P navigation requests. - Path following. - Mapping services. - Automatic return to charging station when battery is low. ## Software structure The figure shows the structure of the AMR service. ![image27](data:image/png;base64,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) **Software structure of the AMR service** ## ROS nodes and modules used in the AMR service | Node name | Function | | --- | --- | | `qrb_ros_amr` | ROS2 package implementing action/service clients & servers, publishers and subscribers for navigation, mapping and AMR status feedback. | | `qrb_amr_manager` | C++ library providing APIs for AMR state management and charging logic.
| | Follow Path Service & Follow Path Manager | ROS2 package for path following navigation | | Robot Base & Robot Base Controller | ROS2 package for AMR base control. | | 2D lidar SLAM ROS and 2D lidar SLAM | Provides mapping and localization. | | Nav2 | Provides P2P navigation. | ## `qrb_ros_amr_service` APIs | Interface | Name | Type | Description | | --- | --- | --- | --- | | Publisher | amr\_status | `qrb_ros_amr_msgs::msg::AMRStatus` | Publishes AMR status. | | Subscriber | test | `std_msgs::msg::Int16` | Receives the debugging information. | | Subscriber | debug\_exception | `std_msgs::msg::Int16` | Receives the simulated exception information. | | Service Server | sub\_cmd | `qrb_ros_amr_msgs::srv::SubCmd` | Handles sub-command requests. | | Service Server | amr\_mapping | `qrb_ros_amr_msgs::srv::Mapping` | Handles mapping requests. | | Service Server | api | `qrb_ros_amr_msgs::srv::API` | Handles API requests. | | Action Server | cmd | `qrb_ros_amr_msgs::action::Cmd` | Handles navigation commands. | ## Prerequisites You have set up the device, installed ROS2 Jazzy and QIR SDK on the device according to [Install the QIR SDK](https://docs.qualcomm.com/doc/80-90441-2/topic/2-install-the-qir-sdk.html#install-qir-sdk). ## Run the out-of-the-box AMR service Note Run the following commands on the device unless otherwise specified. **Steps** 1. Install the amr service packages. sudo apt install ros-jazzy-nav2-msgs sudo apt install ros-jazzy-nav-2d-msgs sudo apt install ros-jazzy-qrb-ros-amr-msgs sudo apt install ros-jazzy-qrb-ros-navigation-msgs sudo apt install ros-jazzy-qrb-amr-manager sudo apt install ros-jazzy-qrb-ros-amr Copy to clipboard 2. Set up 2D Lidar SLAM. Run step 1 to step 5 of [Run out-of-the-box 2D lidar SLAM](https://docs.qualcomm.com/doc/80-90441-2/topic/enable-2d-lidar-slam-with-cartographer_node-and-cartographer_occupancy_grid_node.html#run-out-box-2d-lidar-slam) to launch 2D Lidar SLAM, skipping step 6. 3. Set up the follow-path service according to step 1 to step 3 of [Run out-of-the-box qrb\_ros\_follow\_path service](https://docs.qualcomm.com/doc/80-90441-2/topic/test-follow-path-with-the-qrb_ros_follow_path-service.html#run-qrb-ros-follow-path-service). 4. Install the nav2 package and set up nav2. sudo apt install ros-jazzy-navigation2 ros-jazzy-nav2-bringup ros-jazzy-nav2-route ros2 launch nav2_bringup navigation_launch.py Copy to clipboard 5. Set up the sample environment on the device. source /opt/ros/jazzy/setup.bash source install/setup.bash ros2 launch qrb_ros_amr qrb_ros_amr_bringup.launch.py Copy to clipboard 6. Test the AMR service. - You can implement a ROS node according to table 33 to complete the mapping, follow-path and P2P navigation. - You can also use these ROS commands to complete the mapping, follow-path and P2P navigation. 1. Install `rqt-robot-steering` on the host computer (Ubuntu 24.04) sudo apt install ros-jazzy-rqt-robot-steering Copy to clipboard 2. Run `rqt-robot-steering` on the host computer. ros2 run rqt_robot_steering rqt_robot_steering Copy to clipboard 3. Initiate the AMR. ros2 service call /api qrb_ros_amr_msgs/srv/API "{api_id: 1}" Copy to clipboard 4. Start mapping. ros2 service call /amr_mapping qrb_ros_amr_msgs/srv/Mapping "{cmd: 2}" Copy to clipboard 5. Install and set up rviz2 on the host computer. sudo apt install ros-jazzy-rviz2 ros2 run rviz2 rviz2 Copy to clipboard 6. Use `rqt-robot-steering` to control the movement of the robot base. 7. Stop mapping. ros2 service call /amr_mapping qrb_ros_amr_msgs/srv/Mapping "{cmd: 3}" The base starts to rotate, and after a period of time, it stops rotating. The map is displayed properly on rviz. Copy to clipboard 8. Start a P2P navigation. ros2 action send_goal /cmd qrb_ros_amr_msgs/action/Cmd "{command: 3, goal: {header: {frame_id: 'map'}, pose: {position: {x: 0.0, y: 0.0, z: 0.0}, orientation: {x: 0.0, y: 0.0, z: 0.0, w: 2.0}}}}" The pose can be replaced by a real value of map. Copy to clipboard 9. Pause the current P2P navigation. ros2 service call /sub_cmd qrb_ros_amr_msgs/srv/SubCmd "{ subcommand: 2}" Copy to clipboard 10. Resume the current P2P navigation. ros2 service call /sub_cmd qrb_ros_amr_msgs/srv/SubCmd "{ subcommand: 3}" Copy to clipboard 11. After the P2P navigation is completed, set the waypoint and virtual path according to step 4 (a to j) of follow-path Run out-of-the-box steps. 12. Use `rqt-robot-steering` to move the robot base to waypoint (id = 2). 13. Start a follow-path operation from waypoint (id = 2) to waypoint (id = 1). ros2 action send_goal /cmd qrb_ros_amr_msgs/action/Cmd "{command: 6, goal_id: 1}" Copy to clipboard ## Build from source and run AMR service **Device steps** 1. Install the dependencies. sudo apt install ros-jazzy-nav2-msgs sudo apt install ros-jazzy-nav-2d-msgs Copy to clipboard 2. Download and build. source /opt/ros/jazzy/setup.bash git clone https://github.com/qualcomm-qrb-ros/qrb_ros_amr_service.git git clone https://github.com/qualcomm-qrb-ros/qrb_ros_interfaces.git colcon build Copy to clipboard 3. Run and test according to steps 2 to 6 of [Run the out-of-the-box AMR service](https://docs.qualcomm.com/doc/80-90441-2/topic/run-basic-amr-functionality-with-the-amr-service.html#run-out-box-amr-service). Last Published: Sep 07, 2026 [Previous Topic Test follow-path with the qrb\_ros\_follow\_path service](https://docs.qualcomm.com/bundle/publicresource/80-90441-2/topics/test-follow-path-with-the-qrb_ros_follow_path-service.md) [Next Topic Enable AprilTag Pipeline with sample\_apriltag](https://docs.qualcomm.com/bundle/publicresource/80-90441-2/topics/enable-AprilTag-Pipeline-with-sample-apriltag.md)