update README && make package

This commit is contained in:
Joe Dong
2024-04-30 15:39:14 +08:00
parent 9039f60736
commit 1ebfdee5fc
6 changed files with 80 additions and 22 deletions
+3
View File
@@ -757,6 +757,9 @@ FodyWeavers.xsd
*.msix
*.msm
*.msp
.obj-aarch64-linux-gnu/
*.deb
*.ddeb
# JetBrains Rider
*.sln.iml
+57 -19
View File
@@ -399,6 +399,42 @@ resolutions is as follows:
ros2 run orbbec_camera list_camera_profile_mode_node
```
## Building a Debian Package
### Preparing the Environment
Before starting, install the required tools:
```bash
sudo apt install debhelper fakeroot python3-bloom
```
### Configuring ROS Dependencies
Add the following YAML file to your system at `/etc/ros/rosdep/sources.list.d/00-orbbec.yaml`. Make sure to replace `focal` with the codename of your Ubuntu version and `humble` with your ROS2 distribution name:
```yaml
orbbec_camera_msgs:
ubuntu:
focal: [ros-humble-orbbec-camera-msgs]
```
Next, create a new file `/etc/ros/rosdep/sources.list.d/50-orbbec.list` and add this line to specify the path to the YAML file:
```bash
yaml file:///etc/ros/rosdep/sources.list.d/00-orbbec.yaml
```
Update the rosdep database to reflect these changes:
```bash
rosdep update
```
### Building the Package
Navigate to your workspace and build the project:
```bash
cd ~/ros2_ws/
colcon build --event-handlers console_direct+ --cmake-args -DCMAKE_BUILD_TYPE=Release
. install/setup.bash
cd src/OrbbecSDK_ROS2/
bash .make_deb.sh
```
## Launch files
| product serials | launch file |
@@ -437,25 +473,27 @@ Actually, All launch files all most the same, the only difference is the default
## Supported hardware products
| **products list** | **firmware version** |
|-------------------|-------------------------------------------|
| Gemini 2 XL | Obox: V1.2.5 VL:1.4.54 |
| Astra 2 | 2.8.20 |
| Gemini 2 L | 1.4.32 |
| Gemini 2 | 1.4.60 /1.4.76 |
| Femto Mega | 1.1.7 (window10、ubuntu20.04、ubuntu22.04) |
| Astra+ | 1.0.22/1.0.21/1.0.20/1.0.19 |
| Femto | 1.6.7 |
| Femto W | 1.1.8 |
| Femto Bolt | 1.0.6 (unsupported ARM32) |
| DaBai | 2436 |
| DaBai DCW | 2460 |
| DaBai DW | 2606 |
| Astra Mini Pro | 1007 |
| Gemini E | 3460 |
| Gemini E Lite | 3606 |
| Gemini | 3.0.18 |
| Astra Mini S Pro | 1.0.05 |
| **Products List** | **Firmware Version** |
|-------------------|-----------------------------|
| Gemini 335 | 1.2.20 |
| Gemini 335L | 1.2.20 |
| Femto Bolt | 1.0.6/1.0.9 |
| Femto Mega | 1.1.7/1.2.7 |
| Gemini 2 XL | Obox: V1.2.5 VL:1.4.54 |
| Astra 2 | 2.8.20 |
| Gemini 2 L | 1.4.32 |
| Gemini 2 | 1.4.60 /1.4.76 |
| Astra+ | 1.0.22/1.0.21/1.0.20/1.0.19 |
| Femto | 1.6.7 |
| Femto W | 1.1.8 |
| DaBai | 2436 |
| DaBai DCW | 2460 |
| DaBai DW | 2606 |
| Astra Mini Pro | 1007 |
| Gemini E | 3460 |
| Gemini E Lite | 3606 |
| Gemini | 3.0.18 |
| Astra Mini S Pro | 1.0.05 |
## DDS Tuning
+2 -1
View File
@@ -1,8 +1,9 @@
#!/usr/bin/bash
set -e
CURR_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd -P)"
rm -fr debian obj-x86_64-linux-gnu
rm -fr debian obj-x86_64-linux-gnu .obj-aarch64-linux-gnu || true
export DEBIAN_INC=1
export BUILDING_PACKAGE=1
bloom-generate rosdebian --os-name ubuntu --ros-distro $ROS_DISTRO -i ${DEBIAN_INC}.$(date +%Y%m%d.%H%M%S)
export DEB_BUILD_OPTIONS="parallel=$(($(nproc) - 1))"
fakeroot debian/rules binary
+15
View File
@@ -221,6 +221,21 @@ install(DIRECTORY launch DESTINATION share/${PROJECT_NAME}/)
install(DIRECTORY config DESTINATION share/${PROJECT_NAME}/)
install(DIRECTORY ${ORBBEC_INCLUDE_DIR} DESTINATION include)
install(DIRECTORY ${ORBBEC_LIBS_DIR}/ DESTINATION lib/ FILES_MATCHING PATTERN "*.so*")
if(DEFINED ENV{BUILDING_PACKAGE})
set(UDEV_RULES_PATH "/etc/udev/rules.d/99-obsensor-libusb.rules")
# Check if the udev rules file already exists
if(NOT EXISTS ${UDEV_RULES_PATH})
# Install udev rules only if they do not exist
install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/scripts/99-obsensor-libusb.rules
DESTINATION /etc/udev/rules.d
)
# Setup script to reload udev rules and trigger
install(CODE "execute_process(COMMAND udevadm control --reload-rules && udevadm trigger)")
endif()
endif()
install(TARGETS list_devices_node
list_depth_work_mode_node
list_camera_profile_mode_node
@@ -99,4 +99,4 @@ SUBSYSTEM=="usb", ATTR{idProduct}=="065e", ATTR{idVendor}=="2bc5", MODE:="0666",
SUBSYSTEM=="usb", ATTR{idProduct}=="0698", ATTR{idVendor}=="2bc5", MODE:="0666", OWNER:="root", GROUP:="video", SYMLINK+="j1"
SUBSYSTEM=="usb", ATTR{idProduct}=="069c", ATTR{idVendor}=="2bc5", MODE:="0666", OWNER:="root", GROUP:="video", SYMLINK+="TB2201"
SUBSYSTEM=="usb", ATTR{idProduct}=="06a0", ATTR{idVendor}=="2bc5", MODE:="0666", OWNER:="root", GROUP:="video", SYMLINK+="dabai_dcw2"
SUBSYSTEM=="usb", ATTR{idProduct}=="069f", ATTR{idVendor}=="2bc5", MODE:="0666", OWNER:="root", GROUP:="video", SYMLINK+="dabai_dw2"
SUBSYSTEM=="usb", ATTR{idProduct}=="069f", ATTR{idVendor}=="2bc5", MODE:="0666", OWNER:="root", GROUP:="video", SYMLINK+="dabai_dw2"
+2 -1
View File
@@ -1,8 +1,9 @@
#!/usr/bin/bash
set -e
CURR_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd -P)"
rm -fr debian obj-x86_64-linux-gnu
rm -fr debian obj-x86_64-linux-gnu .obj-aarch64-linux-gnu || true
export DEBIAN_INC=1
export BUILDING_PACKAGE=1
bloom-generate rosdebian --os-name ubuntu --ros-distro $ROS_DISTRO -i ${DEBIAN_INC}.$(date +%Y%m%d.%H%M%S)
export DEB_BUILD_OPTIONS="parallel=$(($(nproc) - 1))"
fakeroot debian/rules binary