# Tool Index
This page is an index of common OrbbecSDK_ROS2 tools. It only lists each tool's purpose and the page that contains the full usage notes. Before running `ros2 run` commands, source ROS 2 and the workspace:
```bash
source /opt/ros/$ROS_DISTRO/setup.bash
source install/setup.bash
```
## Tool Overview
| Tool | Scenario / Full Guide | Summary |
| --- | --- | --- |
| `list_devices_node` (Recommended) | Device query and basic maintenance | Enumerates Orbbec devices and prints device, firmware, preset, and IP status. |
| `list_depth_work_mode_node` | Device query and basic maintenance | Lists the depth work modes supported by the current device. |
| `list_camera_profile_mode_node` (Recommended) | Device query and basic maintenance | Lists supported stream profiles, depth work modes, and presets. |
| `list_ob_devices.sh` | Device query and basic maintenance | Scans Orbbec USB devices from Linux USB sysfs. |
| `install_udev_rules.sh` | Device query and basic maintenance | Installs USB device udev rules. |
| `firmware_update_tool` (Recommended) | Device maintenance | Updates device firmware or burns preset files. |
| `ip_config_tool` (Recommended) | Network configuration | Configures DHCP, persistent IP, and Force IP for network cameras. |
| `common_benchmark_node.py` (Recommended) | Performance benchmark | Collects FPS, latency, CPU, memory, and frame drop statistics. |
| `service_benchmark_node.py` | Performance benchmark | Measures service call latency and success rate. |
| `ob_benchmark_node` | Performance benchmark | Runs benchmark configurations periodically and records CPU/memory data. |
| `start_benchmark_node` | Performance benchmark | Multi-topic subscriber used by the benchmark workflow. |
| `enable_frame_drop_log` / `frame_timestamp_csv_file` (Recommended) | Performance diagnostics | Built-in camera node frame drop logging and timestamp CSV recording. |
| `topic_statistics_node` | Performance diagnostics | Collects image topic age and period statistics. |
| `frame_latency_node` | Performance diagnostics | Measures latency and FPS for a specified topic. |
| `monitor_fd.sh` | Performance diagnostics | Monitors the file descriptor count of `component_container`. |
| `plot_stat.py` | Performance diagnostics | Plots topic statistics curves from `statistics.csv`. |
| `receive_pc.py` | Debug helper | Verifies whether a Python node can receive the point cloud topic. |
| `multi_save_rgbir_node` (Recommended) | Multi-camera | Saves RGB/IR images from multiple cameras. |
| `image_sync_example_node` (Recommended) | Multi-camera | Displays synchronized images and reports multi-topic timestamp statistics. |
| `SyncFramesMain.py` | Multi-camera | Offline analysis script for multi-camera synchronization verification. |
| `group_image.py` | Multi-camera | Groups saved multi-camera images by timestamp. |
| `static_transforms_publisher.py` | Multi-camera debugging | Publishes hard-coded static TFs for multi-camera debugging. |