docs: update the documentation to version 2.8.8

This commit is contained in:
slz
2026-06-06 15:00:20 +08:00
parent 14e481abfe
commit 64bd2e9145
16 changed files with 212 additions and 73 deletions
@@ -32,3 +32,12 @@ ros2 run orbbec_camera firmware_update_tool -- \
--firmware_path /path/to/firmware.bin \
--continue_on_error
```
To enable SDK file logs and also attempt to enable firmware logs, add `--sdk_log_level`. Optional values are `debug`, `info`, `warn`, `error`, `fatal`, and `off`; the default is `off`.
```bash
ros2 run orbbec_camera firmware_update_tool -- \
--serial_number <SN> \
--preset_path /path/to/preset.bin \
--sdk_log_level debug
```
@@ -44,13 +44,19 @@ For [multi_net_camera.launch.py](https://github.com/orbbec/OrbbecSDK_ROS2/blob/v
ros2 launch orbbec_camera multi_net_camera.launch.py
```
Use `list_devices_node` to inspect connected devices. Since v2.8.x, this tool also prints firmware version, local network interface name for Ethernet devices, and IP source type (`NONE`, `LLA`, `DHCP`, `PERSISTENT`).
Use `list_devices_node` to inspect connected devices. Since v2.8.x, this tool also prints firmware version, preset list, preset version, local network interface name for Ethernet devices, and IP source type (`NONE`, `LLA`, `DHCP`, `PERSISTENT`). If one device fails during enumeration, the tool continues enumerating the remaining devices.
To enable SDK and firmware logs, add `--sdk_log_level debug`:
```bash
ros2 run orbbec_camera list_devices_node -- --sdk_log_level debug
```
## ip_config_tool Utility
The **`ip_config_tool`** executable allows you to configure network camera IP settings directly from ROS 2, including DHCP, static IP, Force IP, and DHCP address assignment timeout. This is useful for quickly assigning or updating IP addresses without modifying launch files.
> **Note:** Configuration applied with `dhcp` or `set_ip` is written to the device. `force_ip` is temporary and must be applied again after the device is powered off or restarted.
> **Note:** DHCP / persistent IP configuration applied with `set_ip` is written to the device. `force_ip` is temporary and must be applied again after the device is powered off or restarted.
> **Compatibility**: `set_device_ip` is still kept as a legacy alias and calls `ip_config_tool`. The old `old_ip` argument has been renamed to `current_ip`.
**Example Usage**
@@ -65,17 +71,33 @@ Enable DHCP:
```bash
ros2 run orbbec_camera ip_config_tool -- \
dhcp \
set_ip \
--current_ip 192.168.1.10 \
--enable_dhcp true
--enable_dhcp true \
--enable_persistent_ip false
```
Disable DHCP and set a static IP:
Disable DHCP and set a persistent IP:
```bash
ros2 run orbbec_camera ip_config_tool -- \
set_ip \
--current_ip 192.168.1.10 \
--enable_dhcp false \
--enable_persistent_ip true \
--new_ip 192.168.1.11 \
--mask 255.255.255.0 \
--gateway 192.168.1.1
```
Enable both DHCP and persistent IP (requires a device/firmware that supports IP config V2):
```bash
ros2 run orbbec_camera ip_config_tool -- \
set_ip \
--current_ip 192.168.1.10 \
--enable_dhcp true \
--enable_persistent_ip true \
--new_ip 192.168.1.11 \
--mask 255.255.255.0 \
--gateway 192.168.1.1
@@ -104,12 +126,14 @@ set_dhcp_timeout \
**Parameters**
- **`current_ip`** – Current IP address of the device.
- **`enable_dhcp`** – Enable or disable DHCP for the `dhcp` or `force_ip` subcommand.
- **`new_ip`** – Static IP address to assign.
- **`enable_dhcp`** – Enable or disable DHCP for the `set_ip` or `force_ip` subcommand.
- **`enable_persistent_ip`** – Enable or disable persistent IP for the `set_ip` subcommand.
- **`new_ip`** – Persistent IP or Force IP address to assign.
- **`mask`** – Subnet mask for the new IP.
- **`gateway`** – Gateway address for the new IP.
- **`force_ip_mac`** – Target MAC address for Force IP.
- **`timeout`** / **`dhcp_assign_ip_timeout`** – DHCP address assignment timeout in seconds.
- **`sdk_log_level`** – SDK file log level. Optional values: `debug`, `info`, `warn`, `error`, `fatal`, `off`. Any non-`off` value also attempts to enable firmware logs.
> **Version notes**: The `LLA` switch was supported only by Gemini 335Le firmware `1.7.05` and above and Gemini 435Le firmware `1.3.17` and above.
@@ -14,6 +14,14 @@ To achieve the lowest possible CPU usage in OrbbecSDK_ROS2, it is recommended to
| `color_format` | `RGB` | Lower CPU usage than `MJPG` |
| `filter` | Only `hardware_noise_removal_filter` | Other filters significantly increase CPU usage |
### Color Stream Format and Subscription
v2.8.8 optimizes the color image publishing path:
- For non-MJPG color formats such as RGB or YUYV, subscribe to `/camera/color/image_raw`.
- When `color_format:=MJPG` is used, subscribe to `/camera/color/image_raw/compressed`. The ROS wrapper publishes the compressed image directly, avoiding extra host-side decoding and significantly reducing CPU usage for MJPG streams.
- If you subscribe to `/camera/color/image_raw`, MJPG still needs to be decoded on the host, which increases CPU usage.
### Launch Files Used for Testing
* `gemini_330_series_lower_cpu_usage.launch.py`
@@ -93,4 +101,3 @@ Based on the test results, using only the `hardware_noise_removal_filter` result
| `depth_registration` | `false` or `true` with `align_mode=HW` | Software alignment consumes more CPU |
| `enable_point_cloud` | `false` | Disabling point cloud reduces CPU usage |
| `enable_colored_point_cloud` | `false` | Disabling colored point cloud reduces CPU usage |