|
2 | 2 |
|
3 | 3 | ### Unexpected Crash |
4 | 4 |
|
5 | | -If the camera node crashes unexpectedly, it will generate a crash log in the current running directory: `~/.ros/Log/camera_crash_stack_trace_xx.log`. Additionally, **regardless of whether the camera node crashes or not**, the OrbbecSDK will always generate a log file: `~/.ros/Log/OrbbecSDK.log.txt`, which contains detailed records of the SDK's operations. |
6 | | - |
7 | | -Please send these log files to the support team or submit them to a GitHub issue for further assistance. |
| 5 | +- If you encounter other problems, set the `log_level` parameter to `debug`. This will generate the SDK log file in the run directory: `~/.ros/Log/OrbbecSDK.log.txt`. |
| 6 | + Please provide this file to the support team for further assistance. |
| 7 | +- If firmware logs are required, set the `log_level` parameter to `debug` and set `enable_heartbeat` to `true` to activate this feature. |
| 8 | +- If you set the `log_level` parameter to `debug` and do not want the terminal to refresh too many logs, you can change `output="screen"` to `output="log"` in `launch`, and the logs will be saved in the `~/.ros/log` directory. |
8 | 9 |
|
9 | 10 | ### No Data Stream from Multiple Cameras |
10 | 11 |
|
@@ -87,3 +88,42 @@ Multi-camera systems place high demands on USB bandwidth and device initializati |
87 | 88 | When invoking stream control services (such as `set_streams_enable`, `toggle_depth`, and `toggle_color`), avoid triggering multiple service calls at the same time. Instead, introduce a reasonable interval between operations (e.g., **20 ms**) to ensure reliable stream state transitions. |
88 | 89 |
|
89 | 90 | Following these timing control guidelines can significantly improve the stability of multi-camera systems during startup and runtime, reducing errors and unexpected behavior. |
| 91 | + |
| 92 | +### The image does not reach the preset frame rate |
| 93 | + |
| 94 | +First you need to confirm whether the image does not reach the preset frame rate. There are several ways to view framerate in ROS 2, such as: |
| 95 | + |
| 96 | +* `ros2 topic hz` |
| 97 | +* `rqt` |
| 98 | +* Custom tools (such as the `benchmark` tool provided by this ROS package) |
| 99 | + |
| 100 | +It should be noted that different tools have different statistical methods and QoS configurations, so the frame rate results obtained may be different. When you find that the frame rate is lower than expected, please prioritize whether the error is caused by the frame rate statistics tool itself. |
| 101 | + |
| 102 | +If you confirm that the image frame rate does not reach the preset value, you can try the following troubleshooting steps: |
| 103 | + |
| 104 | +1. **Reduce the resolution or frame rate** to determine whether the frame rate is reduced due to USB/network bandwidth limitations; |
| 105 | +2. **Confirm whether the camera firmware version and ROS package version are the latest**. Older versions may have performance or compatibility issues. |
| 106 | + |
| 107 | +If the above methods still cannot solve the problem, please contact our company **FAE**, or submit an issue in **GitHub Issue** for further support. |
| 108 | + |
| 109 | + |
| 110 | +### Issues related to soft trigger mode |
| 111 | + |
| 112 | +* **Each sensor does not flow out at the same time when the signal is triggered** |
| 113 | + Please enable the frame aggregation function and set the parameter `frame_aggregate_mode` to `full_frame` to ensure that multiple sensor data are output synchronously under the same trigger. |
| 114 | + |
| 115 | +* **The preset frame rate cannot be reached in auto trigger mode** |
| 116 | + When setting `software_trigger_period`, you need to consider the actual open stream frame rate and exposure time. For example, when `color_fps` is set to 10 FPS, `software_trigger_period` cannot be lower than the following calculated value: |
| 117 | + |
| 118 | + ``` |
| 119 | + software_trigger_period ≥ 1000000 / fps × N + 2 × expo |
| 120 | + ``` |
| 121 | + |
| 122 | + Among them: |
| 123 | + |
| 124 | + * `fps`: sensor frame rate |
| 125 | + * `N`: The number of frames collected in a single trigger |
| 126 | + * `expo`: exposure time |
| 127 | + * `Unit`: µs |
| 128 | + |
| 129 | + If `software_trigger_period` is set too small, the trigger frequency will be limited, resulting in frame loss. |
0 commit comments