<liclass="toctree-l4"><aclass="reference internal"href="../camera_devices/1_overview/introduction.html#support-hardware-products">1.1.1. Support Hardware Products</a></li>
<liclass="toctree-l4"><aclass="reference internal"href="../camera_devices/1_overview/introduction.html#orbbec-camera-datasheet">1.1.2. Orbbec camera datasheet</a></li>
<liclass="toctree-l4"><aclass="reference internal"href="../camera_devices/1_overview/introduction.html#support-platforms">1.1.3. Support Platforms</a></li>
<liclass="toctree-l3"><aclass="reference internal"href="../camera_devices/2_installation/build_the_package.html#linux-binary-package-installation">2.2. Linux Binary Package Installation</a></li>
<liclass="toctree-l3"><aclass="reference internal"href="../camera_devices/2_installation/build_the_package.html#build-from-source">2.3. Build from Source</a></li>
<liclass="toctree-l4"><aclass="reference internal"href="../camera_devices/2_installation/registration_script.html#build-from-source">2.4.2. Build from Source</a></li>
<liclass="toctree-l4"><aclass="reference internal"href="../camera_devices/3_quickstarts/quickstart.html#build-your-first-camera-application">3.1.2. Build your First Camera Application</a><ul>
<liclass="toctree-l5"><aclass="reference internal"href="../camera_devices/3_quickstarts/quickstart.html#step-1-source-ros-2-and-workspace">3.1.2.1. Step 1: Source ROS 2 and Workspace</a></li>
<liclass="toctree-l5"><aclass="reference internal"href="../camera_devices/3_quickstarts/quickstart.html#step-2-launch-the-camera-node">3.1.2.2. Step 2: Launch the Camera Node</a></li>
<liclass="toctree-l5"><aclass="reference internal"href="../camera_devices/3_quickstarts/quickstart.html#step-3-visualize-in-rviz2">3.1.2.3. Step 3: Visualize in RViz2</a></li>
<liclass="toctree-l5"><aclass="reference internal"href="../camera_devices/3_quickstarts/quickstart.html#list-available-topics-services-parameters">3.1.3.1. List available topics / services/ parameters</a></li>
<liclass="toctree-l5"><aclass="reference internal"href="../camera_devices/3_quickstarts/quickstart.html#echo-a-topic">3.1.3.2. Echo a topic</a></li>
<liclass="toctree-l5"><aclass="reference internal"href="../camera_devices/3_quickstarts/quickstart.html#call-a-service">3.1.3.3. Call a service</a></li>
<liclass="toctree-l5"><aclass="reference internal"href="../camera_devices/3_quickstarts/quickstart.html#record-with-rosbag2">3.1.3.4. Record with rosbag2</a></li>
<liclass="toctree-l4"><aclass="reference internal"href="../camera_devices/3_quickstarts/orbbecviewer.html#connect-the-device">3.2.2. Connect the device</a></li>
<liclass="toctree-l4"><aclass="reference internal"href="../camera_devices/3_quickstarts/orbbecviewer.html#camera-control">3.2.3. Camera Control</a></li>
<liclass="toctree-l4"><aclass="reference internal"href="../camera_devices/3_quickstarts/orbbecviewer.html#device-information-and-firmware-upgrade">3.2.4. Device information and firmware upgrade</a></li>
<liclass="toctree-l5"><aclass="reference internal"href="../camera_devices/4_application_guide/launch_parameters.html#color-stream">4.1.2.1. Color Stream</a></li>
<liclass="toctree-l5"><aclass="reference internal"href="../camera_devices/4_application_guide/launch_parameters.html#ir-stream">4.1.2.3. IR Stream</a></li>
<liclass="toctree-l4"><aclass="reference internal"href="../camera_devices/4_application_guide/launch_parameters.html#basic-general-parameters">4.1.4. Basic & General Parameters</a><ul>
<liclass="toctree-l5"><aclass="reference internal"href="../camera_devices/4_application_guide/launch_parameters.html#firmware-backend">4.1.4.1. Firmware & Backend</a></li>
<liclass="toctree-l5"><aclass="reference internal"href="../camera_devices/4_application_guide/launch_parameters.html#tf-extrinsics-calibration">4.1.4.2. TF, Extrinsics & Calibration</a></li>
<liclass="toctree-l5"><aclass="reference internal"href="../camera_devices/4_application_guide/launch_parameters.html#time-synchronization">4.1.4.3. Time Synchronization</a></li>
<liclass="toctree-l5"><aclass="reference internal"href="../camera_devices/4_application_guide/launch_parameters.html#logging-diagnostics">4.1.4.4. Logging & Diagnostics</a></li>
<liclass="toctree-l5"><aclass="reference internal"href="../camera_devices/4_application_guide/services.html#color-stream">4.2.1.1. Color Stream</a></li>
<liclass="toctree-l4"><aclass="reference internal"href="../camera_devices/4_application_guide/services.html#sensor-emitter-control">4.2.2. Sensor & Emitter Control</a></li>
<liclass="toctree-l4"><aclass="reference internal"href="../camera_devices/4_application_guide/services.html#device-information-management">4.2.3. Device Information & Management</a></li>
<liclass="toctree-l4"><aclass="reference internal"href="../camera_devices/4_application_guide/services.html#synchronization-triggering">4.2.4. Synchronization & Triggering</a></li>
<liclass="toctree-l4"><aclass="reference internal"href="../camera_devices/4_application_guide/services.html#point-cloud-decimation">4.2.7. Point cloud decimation</a></li>
<liclass="toctree-l4"><aclass="reference internal"href="../camera_devices/4_application_guide/topics.html#point-cloud-topics">4.3.2. Point Cloud Topics</a></li>
<liclass="toctree-l4"><aclass="reference internal"href="../camera_devices/4_application_guide/topics.html#device-status-diagnostics">4.3.4. Device Status & Diagnostics</a></li>
<liclass="toctree-l3"><aclass="reference internal"href="../camera_devices/4_application_guide/coordinate_and_tf.html">4.4. Coordinate Systems and TF Transforms</a><ul>
<liclass="toctree-l4"><aclass="reference internal"href="../camera_devices/4_application_guide/coordinate_and_tf.html#camera-sensor-structure">4.4.1. Camera sensor structure</a></li>
<liclass="toctree-l4"><aclass="reference internal"href="../camera_devices/4_application_guide/coordinate_and_tf.html#tf-from-coordinate-a-to-coordinate-b">4.4.2. TF from coordinate A to coordinate B:</a></li>
<liclass="toctree-l4"><aclass="reference internal"href="../camera_devices/4_application_guide/coordinate_and_tf.html#ros2-robot-coordinate-system-vs-camera-optical-coordinate-system">4.4.3. ROS2 Robot Coordinate System vs Camera Optical Coordinate System</a></li>
<liclass="toctree-l4"><aclass="reference internal"href="../camera_devices/4_application_guide/coordinate_and_tf.html#using-ros2-tf-tools">4.4.4. Using ROS2 TF Tools</a><ul>
<liclass="toctree-l5"><aclass="reference internal"href="../camera_devices/4_application_guide/coordinate_and_tf.html#view-tf-tree-structure">4.4.4.1. View TF Tree Structure</a></li>
<liclass="toctree-l5"><aclass="reference internal"href="../camera_devices/4_application_guide/coordinate_and_tf.html#visualize-tf-tree-in-rviz2">4.4.4.2. Visualize TF Tree in rviz2</a></li>
<liclass="toctree-l4"><aclass="reference internal"href="../camera_devices/4_application_guide/coordinate_and_tf.html#camera-tf-calculation-and-publishing-mechanism">4.4.5. Camera TF Calculation and Publishing Mechanism</a><ul>
<liclass="toctree-l5"><aclass="reference internal"href="../camera_devices/4_application_guide/coordinate_and_tf.html#function-breakdown">4.4.5.2. Function Breakdown</a></li>
<liclass="toctree-l3"><aclass="reference internal"href="../camera_devices/4_application_guide/point_cloud.html">4.6. Enabling and Visualizing Point Cloud in ROS 2</a><ul>
<liclass="toctree-l4"><aclass="reference internal"href="../camera_devices/4_application_guide/point_cloud.html#enabling-depth-point-cloud">4.6.1. Enabling Depth Point Cloud</a><ul>
<liclass="toctree-l5"><aclass="reference internal"href="../camera_devices/4_application_guide/point_cloud.html#command-to-enable-depth-point-cloud">4.6.1.1. Command to Enable Depth Point Cloud</a></li>
<liclass="toctree-l5"><aclass="reference internal"href="../camera_devices/4_application_guide/point_cloud.html#visualizing-depth-point-cloud-in-rviz2">4.6.1.2. Visualizing Depth Point Cloud in RViz2</a></li>
<liclass="toctree-l4"><aclass="reference internal"href="../camera_devices/4_application_guide/point_cloud.html#enabling-colored-point-cloud">4.6.2. Enabling Colored Point Cloud</a><ul>
<liclass="toctree-l5"><aclass="reference internal"href="../camera_devices/4_application_guide/point_cloud.html#command-to-enable-colored-point-cloud">4.6.2.1. Command to Enable Colored Point Cloud</a></li>
<liclass="toctree-l5"><aclass="reference internal"href="../camera_devices/4_application_guide/point_cloud.html#visualizing-colored-point-cloud-in-rviz2">4.6.2.2. Visualizing Colored Point Cloud in RViz2</a></li>
<liclass="toctree-l3"><aclass="reference internal"href="../camera_devices/5_advanced_guide/advanced_guide.html#performance-optimization">5.1. Performance & Optimization</a><ul>
<liclass="toctree-l4"><aclass="reference internal"href="../camera_devices/5_advanced_guide/performance/lower_cpu_usage.html">5.1.1. Reducing CPU Usage with Orbbec ROS Package</a><ul>
<liclass="toctree-l5"><aclass="reference internal"href="../camera_devices/5_advanced_guide/performance/lower_cpu_usage.html#recommended-settings-for-lower-cpu-usage">5.1.1.1. Recommended Settings for Lower CPU Usage</a></li>
<liclass="toctree-l5"><aclass="reference internal"href="../camera_devices/5_advanced_guide/performance/lower_cpu_usage.html#launch-files-used-for-testing">5.1.1.2. Launch Files Used for Testing</a></li>
<liclass="toctree-l5"><aclass="reference internal"href="../camera_devices/5_advanced_guide/performance/lower_cpu_usage.html#test-environment">5.1.1.3. Test environment</a></li>
<liclass="toctree-l5"><aclass="reference internal"href="../camera_devices/5_advanced_guide/performance/lower_cpu_usage.html#test-setup">5.1.1.4. Test Setup</a></li>
<liclass="toctree-l5"><aclass="reference internal"href="../camera_devices/5_advanced_guide/performance/lower_cpu_usage.html#test-results">5.1.1.5. Test Results</a></li>
<liclass="toctree-l5"><aclass="reference internal"href="../camera_devices/5_advanced_guide/performance/lower_cpu_usage.html#further-optimizationa">5.1.1.6. Further Optimizationa</a></li>
<liclass="toctree-l4"><aclass="reference internal"href="../camera_devices/5_advanced_guide/performance/fastdds_tuning.html">5.1.3. Fast DDS Optimization for Orbbec Camera with ROS2</a><ul>
<liclass="toctree-l5"><aclass="reference internal"href="../camera_devices/5_advanced_guide/performance/fastdds_tuning.html#adjusting-system-parameters">5.1.3.1. Adjusting System Parameters</a></li>
<liclass="toctree-l5"><aclass="reference internal"href="../camera_devices/5_advanced_guide/performance/fastdds_tuning.html#fast-dds-configuration">5.1.3.2. Fast DDS Configuration</a></li>
<liclass="toctree-l5"><aclass="reference internal"href="../camera_devices/5_advanced_guide/multi_camera/multi_camera.html#no-data-stream-from-multiple-cameras">5.2.1.1. No Data Stream from Multiple Cameras</a></li>
<liclass="toctree-l5"><aclass="reference internal"href="../camera_devices/5_advanced_guide/multi_camera/multi_camera.html#image-topic-frame-rate-too-low-from-multiple-cameras">5.2.1.2. Image topic frame rate too low from Multiple Cameras</a></li>
<liclass="toctree-l5"><aclass="reference internal"href="../camera_devices/5_advanced_guide/multi_camera/multi_camera_synced.html#checking-camera-port-with-orbbecsdk-ros2">5.2.2.2. Checking camera port with OrbbecSDK_ROS2</a></li>
<liclass="toctree-l5"><aclass="reference internal"href="../camera_devices/5_advanced_guide/multi_camera/multi_camera_synced.html#run-the-following-command-to-start-the-multi-camera-synced">5.2.2.4. Run the following command to start the multi-camera synced</a></li>
<liclass="toctree-l5"><aclass="reference internal"href="../camera_devices/5_advanced_guide/multi_camera/multi_camera_synced_verification_tool.html#system-configuration-requirements">5.2.3.2. System Configuration Requirements</a></li>
<liclass="toctree-l5"><aclass="reference internal"href="../camera_devices/5_advanced_guide/multi_camera/gmsl_camera.html#single-gmsl-camera">5.2.4.1. Single GMSL camera</a></li>
<liclass="toctree-l5"><aclass="reference internal"href="../camera_devices/5_advanced_guide/multi_camera/gmsl_camera.html#multi-gmsl-camera">5.2.4.2. Multi GMSL camera</a></li>
<liclass="toctree-l5"><aclass="reference internal"href="../camera_devices/5_advanced_guide/multi_camera/gmsl_camera.html#multi-gmsl-camera-synced">5.2.4.3. Multi GMSL camera synced</a></li>
<liclass="toctree-l5"><aclass="reference internal"href="../camera_devices/5_advanced_guide/multi_camera/gmsl_camera.html#usage-limitations-of-gmsl-cameras">5.2.4.4. Usage Limitations of GMSL Cameras</a></li>
<liclass="toctree-l3"><aclass="reference internal"href="../camera_devices/5_advanced_guide/advanced_guide.html#configuration-modes">5.3. Configuration & Modes</a><ul>
<liclass="toctree-l5"><aclass="reference internal"href="../camera_devices/5_advanced_guide/configuration/align_depth_color.html#commands-to-align-and-view-depth-and-color-images">5.3.1.1. Commands to Align and View Depth and Color Images</a></li>
<liclass="toctree-l5"><aclass="reference internal"href="../camera_devices/5_advanced_guide/configuration/align_depth_color.html#selecting-topics-in-rviz2">5.3.1.2. Selecting Topics in RViz2</a></li>
<liclass="toctree-l5"><aclass="reference internal"href="../camera_devices/5_advanced_guide/configuration/align_depth_color.html#example-of-depth-to-color-overlay">5.3.1.3. Example of Depth to Color Overlay</a></li>
<liclass="toctree-l4"><aclass="reference internal"href="../camera_devices/5_advanced_guide/configuration/configuration_of_depth_NFOV_and_WFOV_modes.html">5.3.2. Configuration of depth NFOV and WFOV modes</a></li>
<liclass="toctree-l4"><aclass="reference internal"href="../camera_devices/5_advanced_guide/configuration/depth_work_mode_switch.html">5.3.3. Depth work mode switch</a></li>
<liclass="toctree-l5"><aclass="reference internal"href="../camera_devices/5_advanced_guide/configuration/disparity_search_offset.html#function-introduction">5.3.4.1. Function Introduction</a></li>
<liclass="toctree-l5"><aclass="reference internal"href="../camera_devices/5_advanced_guide/configuration/disparity_search_offset.html#run-the-launch">5.3.4.3. Run the launch</a></li>
<liclass="toctree-l4"><aclass="reference internal"href="../camera_devices/5_advanced_guide/configuration/interleave_ae_mode.html">5.3.5. Using interleave_ae with Gemini330 series cameras</a><ul>
<liclass="toctree-l5"><aclass="reference internal"href="../camera_devices/5_advanced_guide/configuration/interleave_ae_mode.html#run-the-launch">5.3.5.2. Run the launch</a></li>
<liclass="toctree-l5"><aclass="reference internal"href="../camera_devices/5_advanced_guide/configuration/predefined_presets.html#g33x-close-range-high-accuracy-gemini-330-gemini-335-gemini-336">5.3.11.1. G33X Close Range High Accuracy (Gemini 330 / Gemini 335 / Gemini 336)</a></li>
<liclass="toctree-l5"><aclass="reference internal"href="../camera_devices/5_advanced_guide/configuration/predefined_presets.html#g336x-amr-default-gemini-336-gemini-336l">5.3.11.2. G336X AMR Default (Gemini 336 / Gemini 336L)</a></li>
<liclass="toctree-l5"><aclass="reference internal"href="../camera_devices/5_advanced_guide/configuration/net_camera.html#femto-mega-gemini-435le-gemini-335le">5.3.12.1. Femto Mega & Gemini 435Le & Gemini 335Le</a></li>
<liclass="toctree-l5"><aclass="reference internal"href="../camera_devices/5_advanced_guide/configuration/net_camera.html#force-ip-function">5.3.12.3. Force IP Function</a></li>
<liclass="toctree-l4"><aclass="reference internal"href="../camera_devices/6_benchmark/introduction.html#common-benchmark-node">6.1.1. common benchmark node</a></li>
<liclass="toctree-l4"><aclass="reference internal"href="../camera_devices/6_benchmark/introduction.html#service-benchmark-node">6.1.2. service benchmark node</a></li>
<liclass="toctree-l4"><aclass="reference internal"href="../camera_devices/6_benchmark/benchmark_usage.html#using-common-benchmark-node">6.2.1. Using common benchmark node</a></li>
<liclass="toctree-l4"><aclass="reference internal"href="../camera_devices/6_benchmark/benchmark_usage.html#using-service-benchmark-node">6.2.2. Using service benchmark node</a><ul>
<liclass="toctree-l4"><aclass="reference internal"href="../camera_devices/6_benchmark/benchmark_data.html#common-benckmark-data">6.3.1. Common Benckmark Data</a></li>
<liclass="toctree-l4"><aclass="reference internal"href="../camera_devices/6_benchmark/benchmark_data.html#service-benchmark-data">6.3.2. Service Benchmark Data</a></li>
<liclass="toctree-l5"><aclass="reference internal"href="../camera_devices/6_benchmark/othertools.html#camera-configuration-launch-files">6.4.1.2. Camera configuration (launch files)</a></li>
<liclass="toctree-l5"><aclass="reference internal"href="../camera_devices/6_benchmark/othertools.html#running-the-ob-benchmark-tool">6.4.1.3. Running the ob_benchmark tool</a></li>
<liclass="toctree-l5"><aclass="reference internal"href="../camera_devices/6_benchmark/othertools.html#output-data-files">6.4.1.4. Output Data Files</a></li>
<liclass="toctree-l3"><aclass="reference internal"href="../camera_devices/7_developer_guide/migration_guide.html">7.1. Migrating from main to Open-Source v2-main</a><ul>
<liclass="toctree-l4"><aclass="reference internal"href="../camera_devices/7_developer_guide/migration_guide.html#advantages-of-migrating-from-main-to-v2-main">7.1.2. Advantages of Migrating from main to v2-main</a><ul>
<liclass="toctree-l5"><aclass="reference internal"href="../camera_devices/7_developer_guide/migration_guide.html#transparency-and-extensibility">7.1.2.2. <strong>Transparency and Extensibility</strong></a></li>
<liclass="toctree-l5"><aclass="reference internal"href="../camera_devices/7_developer_guide/migration_guide.html#advantages-in-maintenance-and-updates">7.1.2.3. Advantages in Maintenance and Updates</a></li>
<liclass="toctree-l5"><aclass="reference internal"href="../camera_devices/7_developer_guide/migration_guide.html#community-and-ecosystem-support">7.1.2.4. <strong>Community and Ecosystem Support</strong></a></li>
<liclass="toctree-l4"><aclass="reference internal"href="../camera_devices/7_developer_guide/migration_guide.html#comparison-between-main-and-v2-main-branches">7.1.3. Comparison Between main and v2-main Branches</a><ul>
<liclass="toctree-l3"><aclass="reference internal"href="../camera_devices/7_developer_guide/building_a_Debian_Package.html">7.2. Building a Debian Package</a><ul>
<liclass="toctree-l4"><aclass="reference internal"href="../camera_devices/7_developer_guide/building_a_Debian_Package.html#preparing-the-environment">7.2.1. Preparing the Environment</a></li>
<liclass="toctree-l4"><aclass="reference internal"href="../camera_devices/7_developer_guide/building_a_Debian_Package.html#building-the-package">7.2.3. Building the Package</a></li>
<liclass="toctree-l3"><aclass="reference internal"href="../camera_devices/8_FAQ/FAQ.html#no-data-stream-from-multiple-cameras">8.2. No Data Stream from Multiple Cameras</a></li>
<liclass="toctree-l3"><aclass="reference internal"href="../camera_devices/8_FAQ/FAQ.html#why-are-there-so-many-launch-files">8.4. Why Are There So Many Launch Files?</a></li>
<liclass="toctree-l3"><aclass="reference internal"href="../camera_devices/8_FAQ/FAQ.html#how-to-launch-a-specific-camera-when-multiple-cameras-are-connected">8.5. How to Launch a Specific Camera When Multiple Cameras Are Connected</a></li>
<liclass="toctree-l3"><aclass="reference internal"href="../camera_devices/8_FAQ/FAQ.html#why-is-it-necessary-to-add-delays-when-starting-multiple-cameras-or-switching-streams">8.6. Why Is It Necessary to Add Delays When Starting Multiple Cameras or Switching Streams?</a></li>
<liclass="toctree-l3"><aclass="reference internal"href="../camera_devices/8_FAQ/FAQ.html#femto-bolt-depth-stream-no-data">8.7. femto bolt depth stream no data</a></li>
<liclass="toctree-l3"><aclass="reference internal"href="../camera_devices/8_FAQ/FAQ.html#the-image-does-not-reach-the-preset-frame-rate">8.8. The image does not reach the preset frame rate</a></li>
<liclass="toctree-l3"><aclass="reference internal"href="../camera_devices/8_FAQ/FAQ.html#issues-related-to-soft-trigger-mode">8.9. Issues related to soft trigger mode</a></li>
<liclass="toctree-l3"><aclass="reference internal"href="#running-the-driver">2.1. Running the Driver</a></li>
<liclass="toctree-l3"><aclass="reference internal"href="#get-device-information-for-connected-lidars">2.2. Get Device Information for Connected LiDARs</a></li>
<liclass="toctree-l3"><aclass="reference internal"href="#check-which-configurations-the-lidar-supports">2.3. Check Which Configurations the LiDAR Supports</a></li>
<liclass="toctree-l3"><aclass="reference internal"href="#parameters-and-configuration">2.4. Parameters and Configuration</a></li>
<p>Before using the OrbbecSDK ROS2 LiDAR driver, please ensure that the following dependencies are installed on your system:</p>
<ulclass="simple">
<li><p><strong>ROS2</strong>: A valid installation of ROS2 (Humble, Jazzy, or other supported distributions).</p>
<ul>
<li><p>If you need help, please refer to the <aclass="reference external"href="https://docs.ros.org/en/foxy/Installation.html">ROS2 Installation Guide</a>.</p></li>
<h2><spanclass="section-number">1.2. </span>Install deb Dependencies<aclass="headerlink"href="#install-deb-dependencies"title="Link to this heading"></a></h2>
<divclass="highlight-bash notranslate"><divclass="highlight"><pre><span></span><spanclass="c1"># assume you have sourced ROS environment, same blow</span>
<h2><spanclass="section-number">1.5. </span>Launch the LiDAR Node<aclass="headerlink"href="#launch-the-lidar-node"title="Link to this heading"></a></h2>
<li><p>Add a <codeclass="docutils literal notranslate"><spanclass="pre">PointCloud2</span></code> or <codeclass="docutils literal notranslate"><spanclass="pre">LaserScan</span></code> display.</p></li>
<li><p>For <codeclass="docutils literal notranslate"><spanclass="pre">PointCloud2</span></code>, select the <codeclass="docutils literal notranslate"><spanclass="pre">/lidar/cloud/points</span></code> topic; for <codeclass="docutils literal notranslate"><spanclass="pre">LaserScan</span></code>, select the <codeclass="docutils literal notranslate"><spanclass="pre">/lidar/scan/points</span></code> topic.</p></li>
<li><p>Set the <codeclass="docutils literal notranslate"><spanclass="pre">Fixed</span><spanclass="pre">Frame</span></code> to <codeclass="docutils literal notranslate"><spanclass="pre">lidar_lidar_frame</span></code> to properly align the data.</p></li>
<p>This command will start the node that interfaces with the Orbbec LiDAR device. Please ensure that the LiDAR hardware is properly connected before running this command.</p>
<h2><spanclass="section-number">2.2. </span>Get Device Information for Connected LiDARs<aclass="headerlink"href="#get-device-information-for-connected-lidars"title="Link to this heading"></a></h2>
<p>This command will list the connected LiDAR devices and display their respective IP addresses and ports. You can use this information to configure the driver to connect to specific devices.</p>
<h2><spanclass="section-number">2.3. </span>Check Which Configurations the LiDAR Supports<aclass="headerlink"href="#check-which-configurations-the-lidar-supports"title="Link to this heading"></a></h2>
<h2><spanclass="section-number">2.4. </span>Parameters and Configuration<aclass="headerlink"href="#parameters-and-configuration"title="Link to this heading"></a></h2>
<p>The <codeclass="docutils literal notranslate"><spanclass="pre">lidar.launch.py</span></code> file contains default parameters for the driver. You can customize these settings by modifying the launch file or creating a custom configuration file. Key parameters include:</p>
<ulclass="simple">
<li><p><strong>device_type</strong>: The type of device to launch. Optional values: <codeclass="docutils literal notranslate"><spanclass="pre">lidar</span></code>, <codeclass="docutils literal notranslate"><spanclass="pre">camera</span></code>. Setting this parameter to <codeclass="docutils literal notranslate"><spanclass="pre">lidar</span></code> launches the LiDAR device, setting it to <codeclass="docutils literal notranslate"><spanclass="pre">camera</span></code> launches the camera device.</p></li>
<li><p><strong>device_num</strong>: Number of devices. This must be filled if you need to launch multiple devices.</p></li>
<li><p><strong>upgrade_firmware</strong>: Firmware upgrade function. The input parameter is the firmware path.</p></li>
<li><p><strong>connection_delay</strong>: Delay time (in milliseconds) for reopening the device. Immediately reopening the device during hot-plugging may cause firmware crashes.</p></li>
<li><p><strong>lidar_format</strong>: Data format for the LiDAR. Optional values: <codeclass="docutils literal notranslate"><spanclass="pre">LIDAR_POINT</span></code>, <codeclass="docutils literal notranslate"><spanclass="pre">LIDAR_SPHERE_POINT</span></code>, <codeclass="docutils literal notranslate"><spanclass="pre">LIDAR_SCAN</span></code></p></li>
<li><p><strong>lidar_rate</strong>: Scan rate of the LiDAR.</p></li>
<li><p><strong>publish_n_pkts</strong>: Number of frames to accumulate before publishing merged point cloud. Range: 1-12000. Only effective when lidar_format is <codeclass="docutils literal notranslate"><spanclass="pre">LIDAR_POINT</span></code> or <codeclass="docutils literal notranslate"><spanclass="pre">LIDAR_SPHERE_POINT</span></code>, used to merge specified number of frames before publishing. Default value: <codeclass="docutils literal notranslate"><spanclass="pre">1</span></code></p></li>
<li><p><strong>enable_scan_to_point</strong>: Enable conversion of scan data to point cloud data, publishing PointCloud2 data type topics.</p></li>
<li><p><strong>min_angle</strong>: Minimum angle of the LiDAR scan range in degrees (e.g., <codeclass="docutils literal notranslate"><spanclass="pre">-135.0</span></code>). Default value: <codeclass="docutils literal notranslate"><spanclass="pre">-135.0</span></code>.</p></li>
<li><p><strong>max_angle</strong>: Maximum angle of the LiDAR scan range in degrees (e.g., <codeclass="docutils literal notranslate"><spanclass="pre">135.0</span></code>). Default value: <codeclass="docutils literal notranslate"><spanclass="pre">135.0</span></code>.</p></li>
<li><p><strong>min_range</strong>: Minimum distance the LiDAR can measure in meters. Default value: <codeclass="docutils literal notranslate"><spanclass="pre">0.05</span></code>.</p></li>
<li><p><strong>max_range</strong>: Maximum distance the LiDAR can measure in meters. Default value: <codeclass="docutils literal notranslate"><spanclass="pre">30.0</span></code>.</p></li>
<li><p><strong>echo_mode</strong>: Echo mode of the LiDAR. Optional values: <codeclass="docutils literal notranslate"><spanclass="pre">Last</span><spanclass="pre">Echo</span></code>, <codeclass="docutils literal notranslate"><spanclass="pre">First</span><spanclass="pre">Echo</span></code></p></li>
<li><p><strong>point_cloud_qos</strong>: ROS 2 message Quality of Service (QoS) settings. Possible values include <codeclass="docutils literal notranslate"><spanclass="pre">SYSTEM_DEFAULT</span></code>, <codeclass="docutils literal notranslate"><spanclass="pre">DEFAULT</span></code>, <codeclass="docutils literal notranslate"><spanclass="pre">PARAMETER_EVENTS</span></code>, <codeclass="docutils literal notranslate"><spanclass="pre">SERVICES_DEFAULT</span></code>, <codeclass="docutils literal notranslate"><spanclass="pre">PARAMETERS</span></code>, and <codeclass="docutils literal notranslate"><spanclass="pre">SENSOR_DATA</span></code>, and are case-insensitive. These values correspond to <codeclass="docutils literal notranslate"><spanclass="pre">rmw_qos_profile_system_default</span></code>, <codeclass="docutils literal notranslate"><spanclass="pre">rmw_qos_profile_default</span></code>, <codeclass="docutils literal notranslate"><spanclass="pre">rmw_qos_profile_parameter_events</span></code>, <codeclass="docutils literal notranslate"><spanclass="pre">rmw_qos_profile_services_default</span></code>, <codeclass="docutils literal notranslate"><spanclass="pre">rmw_qos_profile_parameters</span></code>, and <codeclass="docutils literal notranslate"><spanclass="pre">SENSOR_DATA</span></code> respectively.</p></li>
<li><p><strong>enumerate_net_device</strong>: Enable automatic enumeration of network devices.</p></li>
<li><p><strong>net_device_ip</strong>: IP address of the network device.</p></li>
<li><p><strong>net_device_port</strong>: Port number on the network side.</p></li>
<li><p><strong>log_level</strong>: SDK log level, default value is <codeclass="docutils literal notranslate"><spanclass="pre">none</span></code>, optional values are <codeclass="docutils literal notranslate"><spanclass="pre">debug</span></code>, <codeclass="docutils literal notranslate"><spanclass="pre">info</span></code>, <codeclass="docutils literal notranslate"><spanclass="pre">warn</span></code>, <codeclass="docutils literal notranslate"><spanclass="pre">error</span></code>, <codeclass="docutils literal notranslate"><spanclass="pre">fatal</span></code></p></li>
<li><p><strong>time_domain</strong>: Timestamp type of the device. Optional values are <codeclass="docutils literal notranslate"><spanclass="pre">device</span></code>, <codeclass="docutils literal notranslate"><spanclass="pre">global</span></code>, <codeclass="docutils literal notranslate"><spanclass="pre">system</span></code></p></li>
<li><p><strong>config_file_path</strong>: Path to the YAML configuration file. Default value is “”. If no configuration file is specified, default parameters from the launch file will be used.</p></li>
<li><p><strong>enable_heartbeat</strong>: Enable heartbeat function, default is <codeclass="docutils literal notranslate"><spanclass="pre">false</span></code>. If set to <codeclass="docutils literal notranslate"><spanclass="pre">true</span></code>, the camera node will send heartbeat signals to the firmware; this should also be set to <codeclass="docutils literal notranslate"><spanclass="pre">true</span></code> if hardware logging is required.</p></li>
<li><p><strong>imu_rate</strong>: Unified frequency of the IMU (both accelerometer and gyroscope).</p></li>
<li><p><strong>accel_range</strong>: Range of the accelerometer.</p></li>
<li><p><strong>gyro_range</strong>: Range of the gyroscope.</p></li>
<li><p><strong>linear_accel_cov</strong>: Linear acceleration covariance value, default is <codeclass="docutils literal notranslate"><spanclass="pre">0.0001</span></code>.</p></li>
<li><p><strong>angular_vel_cov</strong>: Angular velocity covariance value, default is <codeclass="docutils literal notranslate"><spanclass="pre">0.0001</span></code>.</p></li>
<h1><spanclass="section-number">3. </span>Point Cloud Data Details<aclass="headerlink"href="#point-cloud-data-details"title="Link to this heading"></a></h1>
<h2><spanclass="section-number">3.2. </span>Point Cloud Aggregation Functionality<aclass="headerlink"href="#point-cloud-aggregation-functionality"title="Link to this heading"></a></h2>
<p>The <codeclass="docutils literal notranslate"><spanclass="pre">publish_n_pkts</span></code> parameter enables point cloud aggregation functionality, which allows the LiDAR to accumulate a specified number of frames before publishing, then merge these frames into a larger point cloud data package for publishing.</p>
<li><p><strong>Applicable Formats</strong>: Only effective when lidar format is <codeclass="docutils literal notranslate"><spanclass="pre">LIDAR_POINT</span></code> or <codeclass="docutils literal notranslate"><spanclass="pre">LIDAR_SPHERE_POINT</span></code></p></li>
<li><p><strong>Default Value</strong>: 1 (no aggregation, each frame published individually)</p></li>
<li><p><strong>Purpose</strong>: Improve point cloud density, suitable for applications requiring denser point cloud data</p></li>
<p><strong>Note</strong>: Increasing the <codeclass="docutils literal notranslate"><spanclass="pre">publish_n_pkts</span></code> value will improve point cloud density but will also increase latency and memory usage. Please adjust according to actual application requirements.</p>
<p>When IMU is enabled, the following topics will be published:</p>
<ulclass="simple">
<li><p><strong><codeclass="docutils literal notranslate"><spanclass="pre">/lidar/imu/sample</span></code></strong>: Unified IMU topic containing synchronized accelerometer and gyroscope data in <codeclass="docutils literal notranslate"><spanclass="pre">sensor_msgs/Imu</span></code> format.</p></li>
<li><p><strong><codeclass="docutils literal notranslate"><spanclass="pre">/lidar/lidar_to_imu</span></code></strong>: Transform from LiDAR frame to IMU frame.</p></li>