API Reference:
ROS 2 Prerequisites
This article serves as the official API reference index for document version 1.0 and does NOT constitute a commitment for arbitrary hardware or software combinations. Prior to execution, run ros2 topic list, ros2 topic type <topic>, ros2 topic info -v <topic>, and ros2 topic hz <topic> directly on the robot host; values marked as "On-site Query" in the table MUST NOT be hardcoded in customer software applications. Except for /tf_static, this manual does not infer QoS settings unannounced by the drivers.
Delivery Package
The examples/ scripts referenced on this page are obtained through the delivery package provided via official delivery channels; use the delivery package version matching your software version. The paths shown in this document are for illustrating script structure only.
Topic Index
| Interface | Direction (Client Perspective) | Type | Frequency / QoS | Unit / Key Semantics | Risk | Applicable Version | Status |
|---|---|---|---|---|---|---|---|
/odom | Subscribe | nav_msgs/msg/Odometry | ~50 Hz; QoS subject to on‑site query | m, m/s, rad/s, orientation quaternion | Read‑only | V1.1.1‑dl / V1.2.9 / HW 1.2 | Official Release |
/chassis/encoder_message | Subscribe | rm_robot_interfaces/msg/Encoderstate | Subject to on‑site query | Left/right wheel raw counts 0–5600, pay attention to direction | Read‑only | Baseline | Official Release |
/teleop_cmd_vel | Publish | geometry_msgs/msg/Twist | Requires continuous publication; current publisher/subscriber use RELIABLE, VOLATILE; queue depth subject to on‑site query | linear.x in m/s, angular.z in rad/s | Controllable risk | V1.1.1‑dl / V1.2.9 / HW 1.2 current configuration | Reference Information |
/cmd_vel | Publish | geometry_msgs/msg/Twist | Continuous type; historically recommended ≥10 Hz; QoS subject to on‑site query | linear.x in m/s, angular.z in rad/s | Controllable risk | Baseline | Reference Information |
/EnableMotor / /StopMotor / /DisEnableMotor | Publish | std_msgs/msg/Empty | Event‑driven; QoS subject to on‑site query | None | High risk | Baseline | Reference Information |
/scan | Subscribe | sensor_msgs/msg/LaserScan | ~15 Hz; publisher uses RELIABLE/VOLATILE | m, rad | Read‑only | V1.1.1‑dl / V1.2.9 / HW 1.2 current configuration | Official Release |
/bluesea_node/heartbeat | Subscribe | std_msgs/msg/Header | ~6 frames per 5 seconds; subject to on‑site observation | ROS timestamp | Read‑only | V1.1.1‑dl / V1.2.9 / current site | Current Limitation |
/body_imu/imu/data_raw / /chassis_imu/imu/data_raw | Subscribe | sensor_msgs/msg/Imu | Subject to on‑site query | m/s², rad/s, quaternion | Read‑only | Baseline | Official Release |
/robot_slave/states | Subscribe | std_msgs/msg/String | Low‑frequency status; QoS subject to on‑site query | JSON; joint position in 0.001° | Read‑only | Baseline | Official Release |
/mcap/body | Subscribe | rm_robot_interfaces/msg/BodyData | ~200 Hz; QoS subject to on‑site query | JointState in rad / rad/s | Read‑only | Baseline | Official Release |
/mcap/slave_arm_left / /mcap/slave_arm_right | Subscribe | rm_robot_interfaces/msg/ArmSlaveData | ~200 Hz; QoS subject to on‑site query | rad, rad/s, m, N/N·m (fields according to message definition) | Read‑only | Baseline | Official Release |
/robot_driver/battery_state | Subscribe | rm_robot_interfaces/msg/RobotPower | Subject to on‑site query | 0.01 V, 0.01 A; see Voltage, Current and Percentage for details | Read‑only | Baseline | Official Release |
/robot_driver/camera_hz_state | Subscribe | rm_robot_interfaces/msg/Camerastate | Subject to on‑site query | frames per second; array order must align with on‑site configuration | Read‑only | Baseline | Reference Information |
/chassis_wide_cam/image_raw/compressed | Subscribe | sensor_msgs/msg/CompressedImage | Subject to on‑site measurement | Byte stream; encoding see format | Read‑only | Current camera configuration | Official Release |
Four head/arm .../image_raw/h264 | Subscribe | sensor_msgs/msg/Image | ~30 Hz; BEST_EFFORT | H.264 Annex‑B; 1280×992; do not interpret as ordinary RGB Image | Read‑only | V1.1.1‑dl / V1.2.9 / HW 1.2 current configuration | Official Release |
/chest_depth_cam/* / /chassis_depth_cam/* | Subscribe | sensor_msgs/msg/Image / CameraInfo | Image stream not provided in current version | Image encoding, step, camera intrinsics | Read‑only | Current camera configuration | Current Limitation |
| Full topic set of head/left‑arm/right‑arm depth cameras | Subscribe | Driver‑defined | Not guaranteed | Per driver definition | Read‑only | Uncovered combination | Current Limitation – use only topics that are enumerated in real‑time and have data |
/tf / /tf_static | Subscribe | tf2_msgs/msg/TFMessage | Dynamic / static; /tf_static uses TRANSIENT_LOCAL | m, quaternion | Read‑only | Baseline | Current Limitation |
/fault/aggregated / /diagnostics | Subscribe | rm_interface/msg/AggregatedFault / diagnostic_msgs/msg/DiagnosticArray (current baseline) | Aggregated fault currently ~1 Hz; QoS subject to on‑site query | Health score, fault records, diagnostic level and temperature | Read‑only | Current baseline | Reference Information – do not inject faults; must be combined with logs, network endpoints and joint_err/sys_err |
/trace/heartbeat/status | Subscribe | rm_interface/msg/TraceHeartbeat | Interface comment says 1 Hz; actual observed ~30 s once, inconsistency exists | System resources, network, collection tasks, faults and event aggregation | Read‑only | Current platform configuration | Current Limitation – source rm_data_collect first; this topic is for reference only and shall not be used as availability criterion |
/rm_func_mcap_recoder/rm_func_record_status | Subscribe | rm_interface/msg/RmFuncRecordStatus | Status includes start / stop / idle; frequency subject to on‑site observation | Platform collection tasks, path, size, duration and errors | Read‑only | Current platform configuration | Candidate Capability |
/wheeltec_mic/heartbeat | Subscribe | std_msgs/msg/Header | Presence of new timestamp within 10 seconds is used as online criterion | Node online heartbeat | Read‑only | Current microphone configuration | Reference Information |
/wheeltec_mic/voice_play | Publish | std_msgs/msg/Int8 | Event‑driven; QoS subject to on‑site query | Predefined voice index | Controllable risk | Baseline | Reference Information |
Service Index
StringCmd is defined as request string data / response string data. It provides only string transport and does not guarantee inner JSON fields, execution completion, or device safety.
| Interface | Direction (Client Perspective) | Type | Frequency / QoS | Unit / Key Semantics | Risk | Applicable Version | Status |
|---|---|---|---|---|---|---|---|
/robot/command | Call | rm_robot_interfaces/srv/StringCmd | Request/response; QoS determined by ROS2 service layer | data carries serialised wrapper JSON; arm/head/waist movej joints in 0.001° | Controllable risk | V1.2.9‑dr / HW 1.2 | Limited closed‑loop: head, right arm, small non‑zero waist and right‑side single‑DOF end‑effector |
/mcap_recorder_service | Call | rm_robot_interfaces/srv/StringCmd | Request/response | operate integer; metadata four fields | Controllable risk | Baseline | Official Release |
/rm_func_mcap_trigger/web_collection_control | Call | rm_interface/srv/WebCollectionControl | Request/response | Web manual collection wrapper interface; converts start/stop/reset to recorder requests; current implementation uses COLLECT_TYPE_MANUAL = 0 | Controllable risk | Current platform configuration | Candidate Capability |
/rm_func_mcap_recoder/recorder_control | Call | rm_interface/srv/TriggerCollectionControl | Request/response | Recording start/stop and reset interface; remote teleoperation data collection path uses COLLECT_TYPE_REMOTE = 2 | Controllable risk | Current platform configuration | Candidate Capability |
/rm_func_mcap_uploader/uploader_control | Call | rm_interface/srv/RequestUpload | Request/response | Submit upload task after recording is complete; inherits collect_type from recorder request, remote teleoperation data collection path is 2 | High risk | Current platform configuration | Candidate Capability |
/camera_state_service | Call | rm_robot_interfaces/srv/StringCmd | Request/response | No stable business schema published | Controllable risk | Vendor‑defined | Reference Information – first query ros2 service type and official protocol |
/scan_motor | Call | base/srv/Control | Request/response | Motor parameters not published in documentation version 1.0 | High risk | Vendor‑defined | Reference Information |
/s3_uploader_service | Call | rm_robot_interfaces/srv/StringCmd | Request/response | Object storage operations | High risk | Vendor‑defined | Reference Information |

