Closed MAVProxyUser closed 10 months ago
. /etc/bash_completion
fi
fi
export PATH=/usr/local/cuda-11.4/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda-11.4/lib64:$LD_LIBRARY_PATH
source /home/ubuntu/ros2_humble/install/setup.sh
source /home/ubuntu/luxonis_oak_ws/install/setup.sh
source /home/ubuntu/jetson_stats_ws/install/setup.sh
export OPENBLAS_CORETYPE=ARMV8
export DEPTHAI_DEBUG=1
ubuntu@ubuntu:~$ cat /etc/issue
Ubuntu 20.04.6 LTS \n \l
ubuntu@ubuntu:~$ uname -a
Linux ubuntu 5.10.104-tegra #1 SMP PREEMPT Tue Jan 24 15:09:44 PST 2023 aarch64 aarch64 aarch64 GNU/Linux
ubuntu@ubuntu:~$ cd depthai/
ubuntu@ubuntu:~/depthai$ git log | head
commit be73fbc4c8dd355366edf7bc1782387b421eeb83
Merge: 32879ee5 22192e78
Author: Pastukhov Daniil <plus79222222238@gmail.com>
Date: Fri Feb 10 12:50:03 2023 +0100
Merge pull request #938 from luxonis/fix/cv2_cond_import
Fix cv2 import
commit 22192e786bf0a11b79aa08f932f259d39ebf690e
ubuntu@ubuntu:~/depthai$ git branch
* main
ubuntu@ubuntu:~/depthai$ cd ../luxonis_oak_ws/src/depthai-ros/
ubuntu@ubuntu:~/luxonis_oak_ws/src/depthai-ros$ git log | head
commit 29cf4a0140d211b7b871c93198f3433b648933ae
Author: Adam Serafin <adam.serafin@luxonis.com>
Date: Fri Mar 17 11:11:29 2023 +0100
Build time improvements for Humble (#246)
* code cleanup to improve build times
commit 49152be9afcbfdb5749a43ff9531a8a793c55917
Author: Serafadam <serafadam@gmail.com>
ubuntu@ubuntu:~/luxonis_oak_ws/src/depthai-ros$ git branch
* humble
This seems to be a GUI issue primarily. The rest of the ROS backend seems fine. I'm able to pull YOLO hits off the example.
ubuntu@ubuntu:~$ ros2 launch depthai_examples yolov4_publisher.launch.py
...
ubuntu@ubuntu:~$ ros2 topic list
/color/camera_info
/color/image
/color/yolov4_Spatial_detections
/joint_states
/parameter_events
/robot_description
/rosout
/stereo/camera_info
/stereo/depth
/tf
/tf_static
Hi, do you get this error from running default camera.launch.py
using default parameters?
@Serafadam
$ ros2 launch depthai_ros_driver camera.launch.py
gives the following
[INFO] [launch]: All log files can be found below /home/ubuntu/.ros/log/2023-03-20-10-20-12-813752-ubuntu-12299
[INFO] [launch]: Default logging verbosity is set to INFO
[INFO] [robot_state_publisher-1]: process started with pid [12314]
[INFO] [component_container-2]: process started with pid [12316]
[component_container-2] [INFO] [1679322015.906563135] [oak_container]: Load Library: /home/ubuntu/luxonis_oak_ws/install/depthai_ros_driver/lib/libdepthai_ros_driver.so
[robot_state_publisher-1] [INFO] [1679322016.033384462] [oak_state_publisher]: got segment oak
[robot_state_publisher-1] [INFO] [1679322016.033751696] [oak_state_publisher]: got segment oak-d-base-frame
[robot_state_publisher-1] [INFO] [1679322016.033823920] [oak_state_publisher]: got segment oak_imu_frame
[robot_state_publisher-1] [INFO] [1679322016.033880433] [oak_state_publisher]: got segment oak_left_camera_frame
[robot_state_publisher-1] [INFO] [1679322016.033963793] [oak_state_publisher]: got segment oak_left_camera_optical_frame
[robot_state_publisher-1] [INFO] [1679322016.034020657] [oak_state_publisher]: got segment oak_model_origin
[robot_state_publisher-1] [INFO] [1679322016.034108210] [oak_state_publisher]: got segment oak_rgb_camera_frame
[robot_state_publisher-1] [INFO] [1679322016.034168466] [oak_state_publisher]: got segment oak_rgb_camera_optical_frame
[robot_state_publisher-1] [INFO] [1679322016.034221395] [oak_state_publisher]: got segment oak_right_camera_frame
[robot_state_publisher-1] [INFO] [1679322016.034273043] [oak_state_publisher]: got segment oak_right_camera_optical_frame
[component_container-2] [INFO] [1679322016.104666068] [oak_container]: Found class: rclcpp_components::NodeFactoryTemplate<depthai_ros_driver::Camera>
[component_container-2] [INFO] [1679322016.104877941] [oak_container]: Instantiate class: rclcpp_components::NodeFactoryTemplate<depthai_ros_driver::Camera>
[component_container-2] [2023-03-20 10:20:16.148] [info] DEPTHAI_DEBUG enabled, lowered DEPTHAI_LEVEL to 'debug'
[component_container-2] [2023-03-20 10:20:16.150] [debug] Library information - version: 2.20.2, commit: 5ead66c017593563c8f730847c3e7ed2df8e950c from 2023-03-08 15:39:34 +0200, build: 2023-03-18 06:24:30 +0000
[component_container-2] [2023-03-20 10:20:16.158] [debug] Initialize - finished
[component_container-2] [INFO] [1679322016.158837300] [oak]: No ip/mxid specified, connecting to the next available device.
[component_container-2] [2023-03-20 10:20:16.326] [debug] Resources - Archive 'depthai-bootloader-fwp-0.0.24.tar.xz' open: 7ms, archive read: 164ms
[component_container-2] [2023-03-20 10:20:16.383] [debug] Device - OpenVINO version: universal
[component_container-2] [2023-03-20 10:20:16.389] [debug] Device - BoardConfig: {"camera":[],"emmc":null,"gpio":[],"logDevicePrints":true,"logPath":null,"logSizeMax":null,"logVerbosity":null,"network":{"mtu":0,"xlinkTcpNoDelay":true},"nonExclusiveMode":false,"pcieInternalClock":null,"sysctl":[],"uart":[],"usb":{"flashBootedPid":63037,"flashBootedVid":999,"maxSpeed":4,"pid":63035,"vid":999},"usb3PhyInternalClock":null,"watchdogInitialDelayMs":null,"watchdogTimeoutMs":null}
[component_container-2] libnop:
[component_container-2] 0000: b9 10 b9 05 81 e7 03 81 3b f6 81 e7 03 81 3d f6 04 b9 02 00 01 ba 00 be be bb 00 bb 00 be be be
[component_container-2] 0020: be be be 01 00 bb 00
[component_container-2] [2023-03-20 10:20:16.926] [debug] Resources - Archive 'depthai-device-fwp-8c3d6ac1c77b0bf7f9ea6fd4d962af37663d2fbd.tar.xz' open: 8ms, archive read: 765ms
[component_container-2] [2023-03-20 10:20:17.676] [debug] Searching for booted device: DeviceInfo(name=1.2.4, mxid=1844301011A9460E00, X_LINK_BOOTED, X_LINK_USB_VSC, X_LINK_MYRIAD_X, X_LINK_SUCCESS), name used as hint only
[component_container-2] [1844301011A9460E00] [1.2.4] [0.966] [system] [warning] PRINT:LeonCss: BootloaderConfig.options1 checksum doesn't match. Is: 0x10304418 should be: 0xF8135BD0
[component_container-2] GPIO boot mode 0x16, interface USBD
[component_container-2] Setting aons(0..4) back to boot from flash (offset = 0)
[component_container-2] ====ENABLE WATCHDOG====1
[component_container-2] initial keepalive, countdown: 10
[component_container-2] PLL0: 700000 AUX_IO0: 24000 AUX_IO1: 24000 MCFG: 24000 MECFG: 24000
[component_container-2] Board init ret 3
[component_container-2] DepthAI Firmware - version: 8c3d6ac1c77b0bf7f9ea6fd4d962af37663d2fbd
[component_container-2] eeprom configuration version: 55AA0007
[component_container-2] Reading VERSION 7 --- ->
[component_container-2] eeprom configuration load from user area, status: 0
[component_container-2] Reading VERSION 7 --- ->
[component_container-2] Didn't find any boards matching the eeprom data
[component_container-2] Board options: 00000000
[component_container-2] --> brdInit ...
[component_container-2] brdInitAuxDevices: Error: SC = 27: io_initialize expander_cam_gpios_1 [OK]
[component_container-2]
[component_container-2] spi_N25Q_init: Flash JEDEC ID: ff ff ff
[component_container-2] Invalid Flash JEDEC ID... No NOR available
[component_container-2] Could not register the spi device
[component_container-2] Opening bus for IR driver: 1
[component_container-2] Failed to probe IR driver LM3644
[component_container-2] Opening bus for IR driver: 2
[component_container-2] Failed to probe IR driver LM3644
[component_container-2] Opening bus for IR driver: 3
[component_container-2] Failed to probe IR driver LM3644
[component_container-2] Closing EEPROm!
[component_container-2] MyriaX board configuration
[component_container-2] pll0 frequency: 700000, ref0 frequency: 24000
[component_container-2] Is booted from flash by bootloader: 0
[component_container-2] Networking not available...
[component_container-2] === Enumerating on socket: Cam_A / RGB / Center
[component_container-2] Probe failed I2C1 0x1a reg 0016: expected 0214, read 0582
[component_container-2] Probe failed I2C1 0x1a reg 0016: expected 0214, read 0582
[component_container-2] Probe failed I2C1 0x1a reg 0016: expected 0378, read 0582
[component_container-2] Probe failed I2C1 0x1a reg 0016: expected 0477, read 0582
[component_container-2] Probe failed I2C1 0x1a reg 0016: expected 0577, read 0582
[component_container-2] Probe failed I2C1 0x1a reg 0016: expected 0380, read 0582
[component_container-2] Probe failed I2C1 0x1a reg 0016: expected 0586, read 0582
[component_container-2] osDrvGt24c64Init: No EEPROM found. Will operate without
[component_container-2] >> Registered camera A12N02A (imx378) as /dev/Camera_0
[component_container-2] camera socket: 0, name: color
[component_container-2] config - w: 3840, h: 2160, type: COLOR
[component_container-2] config - w: 4000, h: 3000, type: COLOR
[component_container-2] config - w: 5312, h: 6000, type: COLOR
[component_container-2] Adding socket 0: cam 20. Sen name: LCM48
[component_container-2] === Enumerating on socket: Cam_B / Left
[component_container-2] === Enumerating on socket: Cam_C / Right
[component_container-2] Initializing XLink...
[component_container-2] UsbPumpVscAppI_Event: 5 VSC2_EVENT_ATTACH
[component_container-2] UsbPumpVscAppI_Event: 4 VSC2_EVENT_RESET
[component_container-2] UsbPumpVscAppI_Event: 4 VSC2_EVENT_RESET
[component_container-2] initial keepalive, countdown: 9
[component_container-2] UsbPumpVscAppI_Event: 0 VSC2_EVENT_INTERFACE_UP
[component_container-2] Done!
[component_container-2] Usb connection speed: Super - USB 3.0
[component_container-2] Temperature: Driver registered.
[component_container-2] [1844301011A9460E00] [1.2.4] [0.973] [system] [info] Memory Usage - DDR: 0.12 / 340.42 MiB, CMX: 2.05 / 2.50 MiB, LeonOS Heap: 7.24 / 77.32 MiB, LeonRT Heap: 2.89 / 41.23 MiB
[component_container-2] [1844301011A9460E00] [1.2.4] [0.973] [system] [info] Temperatures - Average: 31.59 °C, CSS: 32.97 °C, MSS 30.80 °C, UPA: 31.04 °C, DSS: 31.53 °C
[component_container-2] [1844301011A9460E00] [1.2.4] [0.973] [system] [info] Cpu Usage - LeonOS 67.37%, LeonRT: 1.57%
[component_container-2] [1844301011A9460E00] [1.2.4] [0.977] [system] [warning] PRINT:LeonCss: Temperature: Initialized driver.
[component_container-2] Temperature: Sensor opened: CSS.
[component_container-2] Temperature: Sensor opened: MSS.
[component_container-2] Temperature: Sensor opened: UPA.
[component_container-2] Temperature: Sensor opened: DSS.
[component_container-2] I: [Timesync] [ 4543414] [XLin] startSync:130 Timesync | Callback not set
[component_container-2] [INFO] [1679322018.668736259] [oak]: Camera with MXID: 1844301011A9460E00 and Name: 1.2.4 connected!
[component_container-2] [INFO] [1679322018.674264580] [oak]: USB SPEED: SUPER
[component_container-2] [1844301011A9460E00] [1.2.4] [0.999] [system] [warning] PRINT:LeonCss: Reading from Factory EEPROM contents
[component_container-2] Reading VERSION 7 --- ->
[component_container-2] [INFO] [1679322018.695682435] [oak]: Device type: OAK-1-MAX
[component_container-2] [INFO] [1679322018.702289738] [oak]: Pipeline type: RGBD
[component_container-2] [ERROR] [1679322018.704757913] [oak]: Wrong pipeline chosen for camera as it has only one sensor. Switching to RGB.
[component_container-2] [ERROR] [1679322018.707401416] [oak]: Sensor LCM48 not supported!
[component_container-2] [2023-03-20 10:20:18.709] [debug] Device about to be closed...
[component_container-2] [2023-03-20 10:20:18.856] [debug] Log thread exception caught: Couldn't read data from stream: '__log' (X_LINK_ERROR)
[component_container-2] [2023-03-20 10:20:18.856] [debug] Timesync thread exception caught: Couldn't read data from stream: '__timesync' (X_LINK_ERROR)
[component_container-2] [2023-03-20 10:20:19.405] [debug] Watchdog thread exception caught: Couldn't write data to stream: '__watchdog' (X_LINK_ERROR)
[component_container-2] [2023-03-20 10:20:19.711] [debug] XLinkResetRemote of linkId: (0)
[component_container-2] [2023-03-20 10:20:20.152] [debug] Device closed, 1443
[component_container-2] [ERROR] [1679322020.174698398] [oak_container]: Component constructor threw an exception: Sensor not supported!
[ERROR] [launch_ros.actions.load_composable_nodes]: Failed to load node 'oak' of type 'depthai_ros_driver::Camera' in container '/oak_container': Component constructor threw an exception: Sensor not supported!
Thanks for the logs, it seems that device returns older sensor name, I added a fix in https://github.com/luxonis/depthai-ros/pull/247, please try depthai_filters_humble
branch and let me know if that fix works for you
@Serafadam as someone coming off the RealSense landscape... I'm a bit floored by people responding quickly and actually fixing things! I'll try to test this ASAP.
Updated to your branch... will check back shortly, I need to sort out some dependencies.
ubuntu@ubuntu:~/luxonis_oak_ws/src/depthai-ros$ git checkout depthai_filters_humble
Branch 'depthai_filters_humble' set up to track remote branch 'depthai_filters_humble' from 'origin'.
Switched to a new branch 'depthai_filters_humble'
ubuntu@ubuntu:~/luxonis_oak_ws/src/depthai-ros$ cd ../../
ubuntu@ubuntu:~/luxonis_oak_ws$ rm -rf build/ install/ log/
ubuntu@ubuntu:~/luxonis_oak_ws$ colcon build
...
Starting >>> depthai_examples
--- stderr: depthai_filters
/home/ubuntu/luxonis_oak_ws/src/depthai-ros/depthai_filters/src/detection2d_overlay.cpp:50:69: warning: extra ‘;’ [-Wpedantic]
50 | RCLCPP_COMPONENTS_REGISTER_NODE(depthai_filters::Detection2DOverlay);
| ^
In file included from /home/ubuntu/luxonis_oak_ws/src/depthai-ros/depthai_filters/src/wls_filter.cpp:1:
/home/ubuntu/luxonis_oak_ws/src/depthai-ros/depthai_filters/include/depthai_filters/wls_filter.hpp:8:10: fatal error: opencv2/ximgproc/disparity_filter.hpp: No such file or directory
8 | #include "opencv2/ximgproc/disparity_filter.hpp"
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
make[2]: *** [CMakeFiles/depthai_filters.dir/build.make:104: CMakeFiles/depthai_filters.dir/src/wls_filter.cpp.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:137: CMakeFiles/depthai_filters.dir/all] Error 2
make: *** [Makefile:146: all] Error 2
---
I had to install several packages as part of a workaround to a known problem on Ubuntu 20.04 as described here: https://github.com/appveyor/ci/issues/3434
First I had to
sudo apt install libopencv-calib3d-dev libopencv-contrib-dev libopencv-features2d-dev libopencv-highgui-dev libopencv-imgcodecs-dev libopencv-objdetect-dev libopencv-shape-dev libopencv-stitching-dev libopencv-superres-dev libopencv-video-dev libopencv-videoio-dev libopencv-videostab-dev libopencv4.2-java libopencv-calib3d4.2 libopencv-contrib4.2 libopencv-features2d4.2 libopencv-highgui4.2 libopencv-imgcodecs4.2 libopencv-videoio4.2 libgdal26 libodbc1
then I was able to
sudo apt-get install libopencv-dev
sudo apt-get install libopencv-contrib-dev
Now I'm dealing with OpenCV issues.
--- stderr: image_geometry
CMake Error at CMakeLists.txt:18 (find_package):
By not providing "FindOpenCV.cmake" in CMAKE_MODULE_PATH this project has
asked CMake to find a package configuration file provided by "OpenCV", but
CMake did not find one.
Could not find a package configuration file provided by "OpenCV" with any
of the following names:
OpenCVConfig.cmake
opencv-config.cmake
Add the installation prefix of "OpenCV" to CMAKE_PREFIX_PATH or set
"OpenCV_DIR" to a directory containing one of the above files. If "OpenCV"
provides a separate development package or SDK, be sure it has been
installed.
Update: I wound up in some weird cyclical dependency issue in which either of the two above apt install sessions would leave the other removed. I would up just installing OpenCV with this script, and recompiling the nodes.
$ wget https://raw.githubusercontent.com/AastaNV/JEP/master/script/install_opencv4.6.0_Jetson.sh $ chmod +x install_opencv4.6.0_Jetson.sh $ ./install_opencv4.6.0_Jetson.sh
(Sorry Jetson landscape can complicate everything!)
ok @Serafadam ... On my Oak-1-MAX that seemed to sort tings out
$ ros2 launch depthai_ros_driver camera.launch.py
...
[component_container-2] [E] app_guzzi_command_callback():218: command "5 0" sent
[component_container-2]
[component_container-2] Starting Guzzi command handling loop...
[component_container-2] [1844301011A9460E00] [1.2.1] [1.197] [system] [warning] PRINT:LeonCss: inc_camera_process set exposure and gain
[component_container-2] [INFO] [1679540113.897492909] [oak]: Camera ready!
[INFO] [launch_ros.actions.load_composable_nodes]: Loaded node '/oak' in container '/oak_container'
[component_container-2] [1844301011A9460E00] [1.2.1] [1.252] [system] [warning] PRINT:LeonMss: finished sippPrePrepareLinesFreeRT
[component_container-2] [1844301011A9460E00] [1.2.1] [1.256] [XLinkOut(1)] [info] Increasing 'rgb_isp' stream size from 5242880B to 5580800B
[component_container-2] [1844301011A9460E00] [1.2.1] [1.538] [system] [warning] PRINT:LeonCss: initial keepalive, countdown: 8
[component_container-2] [1844301011A9460E00] [1.2.1] [1.659] [IMU(3)] [critical] IMU driver failed with error code 1. Your board likely doesn't have IMU!
[component_container-2] [2023-03-22 22:55:14.840] [debug] DataOutputQueue (imu_imu) closed
[component_container-2] [2023-03-22 22:55:14.840] [debug] Timesync thread exception caught: Couldn't read data from stream: '__timesync' (X_LINK_ERROR)
[component_container-2] [2023-03-22 22:55:14.840] [debug] Log thread exception caught: Couldn't read data from stream: '__log' (X_LINK_ERROR)
[component_container-2] [2023-03-22 22:55:14.841] [debug] DataOutputQueue (rgb_isp) closed
[component_container-2] [2023-03-22 22:55:15.160] [debug] Watchdog thread exception caught: Couldn't write data to stream: '__watchdog' (X_LINK_ERROR)
Well looking at my S2... I guess I'm wrong, because there I keep seeing the stream of Men / Temp /Cpu usage..
[component_container-2] Starting Guzzi command handling loop...
[component_container-2] inc_camera_process set exposure and gain
[component_container-2] [1944301041A31F1300] [1.2.1] [4.519] [system] [warning] PRINT:LeonCss: Reading..........Reading VERSION 7 --- ->
[component_container-2] [1944301041A31F1300] [1.2.1] [4.530] [system] [warning] PRINT:LeonMss: finished sippPrePrepareLinesFreeRT
[component_container-2] finished sippPrePrepareLinesFreeRT
[component_container-2] finished sippPrePrepareLinesFreeRT
[component_container-2] [1944301041A31F1300] [1.2.1] [4.541] [system] [warning] PRINT:LeonMss: finished sippPrePrepareLinesFreeRT
[component_container-2] [1944301041A31F1300] [1.2.1] [4.552] [system] [warning] PRINT:LeonMss: finished sippPrePrepareLinesFreeRT
[component_container-2] [1944301041A31F1300] [1.2.1] [4.563] [system] [warning] PRINT:LeonCss: Reading..........Reading VERSION 7 --- ->
[component_container-2] [INFO] [1679540325.342977923] [oak]: Camera ready!
[INFO] [launch_ros.actions.load_composable_nodes]: Loaded node '/oak' in container '/oak_container'
[component_container-2] [1944301041A31F1300] [1.2.1] [4.969] [system] [info] Memory Usage - DDR: 201.40 / 340.42 MiB, CMX: 2.47 / 2.50 MiB, LeonOS Heap: 49.41 / 77.32 MiB, LeonRT Heap: 6.29 / 41.23 MiB
[component_container-2] [1944301041A31F1300] [1.2.1] [4.969] [system] [info] Temperatures - Average: 31.53 °C, CSS: 32.49 °C, MSS 31.29 °C, UPA: 31.53 °C, DSS: 30.80 °C
[component_container-2] [1944301041A31F1300] [1.2.1] [4.969] [system] [info] Cpu Usage - LeonOS 52.53%, LeonRT: 42.24%
[component_container-2] [1944301041A31F1300] [1.2.1] [5.971] [system] [info] Memory Usage - DDR: 201.40 / 340.42 MiB, CMX: 2.47 / 2.50 MiB, LeonOS Heap: 49.41 / 77.32 MiB, LeonRT Heap: 6.29 / 41.23 MiB
[component_container-2] [1944301041A31F1300] [1.2.1] [5.971] [system] [info] Temperatures - Average: 32.43 °C, CSS: 33.69 °C, MSS 32.49 °C, UPA: 32.01 °C, DSS: 31.53 °C
[component_container-2] [1944301041A31F1300] [1.2.1] [5.971] [system] [info] Cpu Usage - LeonOS 79.94%, LeonRT: 52.96%
[component_container-2] [1944301041A31F1300] [1.2.1] [6.973] [system] [info] Memory Usage - DDR: 201.40 / 340.42 MiB, CMX: 2.47 / 2.50 MiB, LeonOS Heap: 49.41 / 77.32 MiB, LeonRT Heap: 6.29 / 41.23 MiB
[component_container-2] [1944301041A31F1300] [1.2.1] [6.973] [system] [info] Temperatures - Average: 33.27 °C, CSS: 33.93 °C, MSS 32.97 °C, UPA: 33.93 °C, DSS: 32.25 °C
[component_container-2] [1944301041A31F1300] [1.2.1] [6.973] [system] [info] Cpu Usage - LeonOS 77.88%, LeonRT: 52.68%
[component_container-2] [1944301041A31F1300] [1.2.1] [7.975] [system] [info] Memory Usage - DDR: 201.40 / 340.42 MiB, CMX: 2.47 / 2.50 MiB, LeonOS Heap: 49.41 / 77.32 MiB, LeonRT Heap: 6.29 / 41.23 MiB
[component_container-2] [1944301041A31F1300] [1.2.1] [7.975] [system] [info] Temperatures - Average: 33.68 °C, CSS: 34.64 °C, MSS 33.21 °C, UPA: 34.40 °C, DSS: 32.49 °C
[component_container-2] [1944301041A31F1300] [1.2.1] [7.975] [system] [info] Cpu Usage - LeonOS 75.56%, LeonRT: 52.37%
[component_container-2] [1944301041A31F1300] [1.2.1] [8.976] [system] [info] Memory Usage - DDR: 201.40 / 340.42 MiB, CMX: 2.47 / 2.50 MiB, LeonOS Heap: 49.41 / 77.32 MiB, LeonRT Heap: 6.29 / 41.23 MiB
But on my Pro, I see:
[component_container-2] Starting Guzzi command handling loop...
[component_container-2] inc_camera_process set exposure and gain
[component_container-2] [1844301091E6331300] [1.2.1] [4.855] [system] [warning] PRINT:LeonCss: Reading..........Reading VERSION 7 --- ->
[component_container-2] [1844301091E6331300] [1.2.1] [4.866] [system] [warning] PRINT:LeonMss: finished sippPrePrepareLinesFreeRT
[component_container-2] finished sippPrePrepareLinesFreeRT
[component_container-2] finished sippPrePrepareLinesFreeRT
[component_container-2] [1844301091E6331300] [1.2.1] [4.877] [system] [warning] PRINT:LeonMss: finished sippPrePrepareLinesFreeRT
[component_container-2] [1844301091E6331300] [1.2.1] [4.899] [system] [warning] PRINT:LeonCss: Reading..........Reading VERSION 7 --- ->
[component_container-2] [1844301091E6331300] [1.2.1] [4.899] [system] [warning] PRINT:LeonMss: finished sippPrePrepareLinesFreeRT
[component_container-2] [1844301091E6331300] [1.2.1] [4.964] [system] [info] Memory Usage - DDR: 201.40 / 340.42 MiB, CMX: 2.47 / 2.50 MiB, LeonOS Heap: 49.15 / 77.32 MiB, LeonRT Heap: 6.29 / 41.23 MiB
[component_container-2] [1844301091E6331300] [1.2.1] [4.964] [system] [info] Temperatures - Average: 33.09 °C, CSS: 33.93 °C, MSS 32.01 °C, UPA: 33.45 °C, DSS: 32.97 °C
[component_container-2] [1844301091E6331300] [1.2.1] [4.964] [system] [info] Cpu Usage - LeonOS 31.50%, LeonRT: 28.91%
[component_container-2] [2023-03-22 23:00:49.161] [debug] Timesync thread exception caught: Couldn't read data from stream: '__timesync' (X_LINK_ERROR)
[component_container-2] [2023-03-22 23:00:49.162] [debug] DataOutputQueue (nn_nn) closed
[component_container-2] [2023-03-22 23:00:49.167] [debug] Log thread exception caught: Couldn't read data from stream: '__log' (X_LINK_ERROR)
[component_container-2] [2023-03-22 23:00:49.170] [debug] DataOutputQueue (stereo_stereo) closed
[component_container-2] [2023-03-22 23:00:49.176] [debug] DataOutputQueue (rgb_isp) closed
[component_container-2] [2023-03-22 23:00:49.176] [debug] Device about to be closed...
[component_container-2] [2023-03-22 23:00:49.176] [debug] XLinkResetRemoteTimeout returned: X_LINK_ERROR
[component_container-2] [2023-03-22 23:00:49.500] [debug] Watchdog thread exception caught: Couldn't write data to stream: '__watchdog' (X_LINK_ERROR)
[component_container-2] [2023-03-22 23:00:49.827] [debug] XLinkResetRemote of linkId: (0)
[component_container-2] [2023-03-22 23:00:50.955] [debug] Device closed, 1778
[component_container-2] [2023-03-22 23:00:50.956] [debug] DataOutputQueue (imu_imu) closed
[component_container-2] [2023-03-22 23:00:50.956] [debug] DataInputQueue (right_control) closed
[component_container-2] [2023-03-22 23:00:50.956] [debug] DataInputQueue (left_control) closed
[component_container-2] [2023-03-22 23:00:50.956] [debug] DataInputQueue (rgb_control) closed
[component_container-2] [ERROR] [1679540450.987651938] [oak_container]: Component constructor threw an exception: Couldn't read data from stream: '__rpc_main' (X_LINK_ERROR)
[ERROR] [launch_ros.actions.load_composable_nodes]: Failed to load node 'oak' of type 'depthai_ros_driver::Camera' in container '/oak_container': Component constructor threw an exception: Couldn't read data from stream: '__rpc_main' (X_LINK_ERROR)
And on my regular Oak-1
[component_container-2] Starting Guzzi command handling loop...
[component_container-2] inc_camera_process set exposure and gain
[component_container-2] [INFO] [1679540492.440097930] [oak]: Camera ready!
[INFO] [launch_ros.actions.load_composable_nodes]: Loaded node '/oak' in container '/oak_container'
[component_container-2] [14442C10A18652D000] [1.2.1] [1.176] [system] [warning] PRINT:LeonMss: finished sippPrePrepareLinesFreeRT
[component_container-2] [14442C10A18652D000] [1.2.1] [1.539] [system] [warning] PRINT:LeonCss: initial keepalive, countdown: 8
[component_container-2] [14442C10A18652D000] [1.2.1] [1.630] [IMU(3)] [critical] IMU driver failed with error code 1. Your board likely doesn't have IMU!
[component_container-2] [2023-03-22 23:01:33.420] [debug] DataOutputQueue (rgb_isp) closed
[component_container-2] [2023-03-22 23:01:33.420] [debug] DataOutputQueue (imu_imu) closed
[component_container-2] [2023-03-22 23:01:33.420] [debug] Timesync thread exception caught: Couldn't read data from stream: '__timesync' (X_LINK_ERROR)
[component_container-2] [2023-03-22 23:01:33.421] [debug] Log thread exception caught: Couldn't read data from stream: '__log' (X_LINK_ERROR)
[component_container-2] [2023-03-22 23:01:33.720] [debug] Watchdog thread exception caught: Couldn't write data to stream: '__watchdog' (X_LINK_ERROR)
So things are closer I guess, but not fully right.
Here we go @Serafadam I'm noticing now that this node needs configured via ./install/depthai_ros_driver/share/depthai_ros_driver/config/camera.yaml
setting the following made the OAK-1 cameras happy.
/oak:
ros__parameters:
camera:
i_enable_imu: false
i_enable_ir: false
The pro only works if I set:
i_enable_ir: false
Else if the IR setting is enabled it fails saying:
[component_container-2] Starting Guzzi command handling loop...
[component_container-2] [1844301091E6331300] [1.2.1] [5.325] [system] [warning] PRINT:LeonCss: inc_camera_process set exposure and gain
[component_container-2] [1844301091E6331300] [1.2.1] [5.347] [system] [warning] PRINT:LeonCss: Reading..........Reading VERSION 7 --- ->
[component_container-2] [1844301091E6331300] [1.2.1] [5.358] [system] [warning] PRINT:LeonMss: finished sippPrePrepareLinesFreeRT
[component_container-2] [1844301091E6331300] [1.2.1] [5.369] [system] [warning] PRINT:LeonMss: finished sippPrePrepareLinesFreeRT
[component_container-2] finished sippPrePrepareLinesFreeRT
[component_container-2] finished sippPrePrepareLinesFreeRT
[component_container-2] [1844301091E6331300] [1.2.1] [5.380] [system] [warning] PRINT:LeonCss: Reading..........Reading VERSION 7 --- ->
[component_container-2] [1844301091E6331300] [1.2.1] [5.391] [system] [warning] PRINT:LeonMss: finished sippPrePrepareLinesFreeRT
[component_container-2] [2023-03-23 01:15:49.621] [debug] Log thread exception caught: Couldn't read data from stream: '__log' (X_LINK_ERROR)
[component_container-2] [2023-03-23 01:15:49.621] [debug] Timesync thread exception caught: Couldn't read data from stream: '__timesync' (X_LINK_ERROR)
[component_container-2] [2023-03-23 01:15:49.621] [debug] DataOutputQueue (nn_nn) closed
[component_container-2] [2023-03-23 01:15:49.630] [debug] DataOutputQueue (stereo_stereo) closed
[component_container-2] [2023-03-23 01:15:49.630] [debug] Device about to be closed...
[component_container-2] [2023-03-23 01:15:49.630] [debug] DataOutputQueue (rgb_isp) closed
[component_container-2] [2023-03-23 01:15:49.630] [debug] XLinkResetRemoteTimeout returned: X_LINK_ERROR
[component_container-2] [2023-03-23 01:15:50.295] [debug] XLinkResetRemote of linkId: (0)
[component_container-2] [2023-03-23 01:15:51.052] [debug] Device closed, 1422
[component_container-2] [2023-03-23 01:15:51.053] [debug] DataOutputQueue (imu_imu) closed
[component_container-2] [2023-03-23 01:15:51.053] [debug] DataInputQueue (right_control) closed
[component_container-2] [2023-03-23 01:15:51.054] [debug] DataInputQueue (left_control) closed
[component_container-2] [2023-03-23 01:15:51.054] [debug] DataInputQueue (rgb_control) closed
Also FWIW before you had me run the camera.launch.py I had been trying
ros2 launch depthai_ros_driver calibration.launch.py camera_model:=OAK-D-PRO
And I still get:
...
[component_container-1] Initializing XLink...
[component_container-1] UsbPumpVscAppI_Event: 5 VSC2_EVENT_ATTACH
[component_container-1] UsbPumpVscAppI_Event: 4 VSC2_EVENT_RESET
[component_container-1] UsbPumpVscAppI_Event: 4 VSC2_EVENT_RESET
[component_container-1] initial keepalive, countdown: 9
[component_container-1] UsbPumpVscAppI_Event: 0 VSC2_EVENT_INTERFACE_UP
[component_container-1] Done!
[component_container-1] Usb connection speed: Super - USB 3.0
[component_container-1] [1844301091E6331300] [1.2.1] [0.961] [system] [warning] PRINT:LeonCss: Temperature: Driver registered.
[component_container-1] Temperature: Initialized driver.
[component_container-1] Temperature: Sensor opened: CSS.
[component_container-1] Temperature: Sensor opened: MSS.
[component_container-1] Temperature: Sensor opened: UPA.
[component_container-1] Temperature: Sensor opened: DSS.
[component_container-1] [1844301091E6331300] [1.2.1] [0.962] [system] [info] Memory Usage - DDR: 0.12 / 340.42 MiB, CMX: 2.05 / 2.50 MiB, LeonOS Heap: 7.25 / 77.32 MiB, LeonRT Heap: 2.89 / 41.23 MiB
[component_container-1] [1844301091E6331300] [1.2.1] [0.962] [system] [info] Temperatures - Average: 37.06 °C, CSS: 37.71 °C, MSS 37.01 °C, UPA: 36.77 °C, DSS: 36.77 °C
[component_container-1] [1844301091E6331300] [1.2.1] [0.963] [system] [info] Cpu Usage - LeonOS 71.07%, LeonRT: 1.69%
[component_container-1] [1844301091E6331300] [1.2.1] [0.983] [system] [warning] PRINT:LeonCss: I: [Timesync] [ 5207311] [XLin] startSync:130 Timesync | Callback not set
[component_container-1] [INFO] [1679549259.226435936] [oak]: Camera with MXID: 1844301091E6331300 and Name: 1.2.1 connected!
[component_container-1] [INFO] [1679549259.228449989] [oak]: USB SPEED: SUPER
[component_container-1] [1844301091E6331300] [1.2.1] [1.005] [system] [warning] PRINT:LeonCss: Reading from Factory EEPROM contents
[component_container-1] Reading VERSION 7 --- ->
[component_container-1] [INFO] [1679549259.258616421] [oak]: Device type: OAK-D-PRO-AF
[component_container-1] [INFO] [1679549259.264823795] [oak]: Pipeline type: RGBStereo
[component_container-1] [2023-03-23 01:27:39.265] [debug] Device about to be closed...
[component_container-1] [2023-03-23 01:27:39.423] [debug] Timesync thread exception caught: Couldn't read data from stream: '__timesync' (X_LINK_ERROR)
[component_container-1] [2023-03-23 01:27:39.423] [debug] Log thread exception caught: Couldn't read data from stream: '__log' (X_LINK_ERROR)
[component_container-1] [2023-03-23 01:27:39.936] [debug] Watchdog thread exception caught: Couldn't write data to stream: '__watchdog' (X_LINK_ERROR)
[component_container-1] [2023-03-23 01:27:40.083] [debug] XLinkResetRemote of linkId: (0)
[component_container-1] [2023-03-23 01:27:40.682] [debug] Device closed, 1416
[component_container-1] [ERROR] [1679549260.701787006] [oak_container]: Component constructor threw an exception: _Map_base::at
[ERROR] [launch_ros.actions.load_composable_nodes]: Failed to load node 'oak' of type 'depthai_ros_driver::Camera' in container '/oak_container': Component constructor threw an exception: _Map_base::at
calibration.launch.py also still fails with my S2
[component_container-1] [1944301041A31F1300] [1.2.1] [1.002] [system] [warning] PRINT:LeonCss: Reading from Factory EEPROM contents
[component_container-1] Reading VERSION 7 --- ->
[component_container-1] [INFO] [1679549371.902162186] [oak]: Device type: OAK-D-S2-AF
[component_container-1] [INFO] [1679549371.908023069] [oak]: Pipeline type: RGBStereo
[component_container-1] [2023-03-23 01:29:31.908] [debug] Device about to be closed...
[component_container-1] [2023-03-23 01:29:32.060] [debug] Timesync thread exception caught: Couldn't read data from stream: '__timesync' (X_LINK_ERROR)
[component_container-1] [2023-03-23 01:29:32.061] [debug] Log thread exception caught: Couldn't read data from stream: '__log' (X_LINK_ERROR)
[component_container-1] [2023-03-23 01:29:32.062] [debug] XLinkResetRemote of linkId: (0)
[component_container-1] [2023-03-23 01:29:33.326] [debug] Device closed, 1417
[component_container-1] [ERROR] [1679549373.346861649] [oak_container]: Component constructor threw an exception: _Map_base::at
[ERROR] [launch_ros.actions.load_composable_nodes]: Failed to load node 'oak' of type 'depthai_ros_driver::Camera' in container '/oak_container': Component constructor threw an exception: _Map_base::at
original Oak-1 fails... (note the "Device type" type here) @Serafadam
[component_container-1] [INFO] [1679549436.793553763] [oak]: Camera with MXID: 14442C10A18652D000 and Name: 1.2.1 connected!
[component_container-1] [INFO] [1679549436.796419918] [oak]: USB SPEED: SUPER
[component_container-1] [14442C10A18652D000] [1.2.1] [0.983] [system] [warning] PRINT:LeonCss: Reading from Factory EEPROM contents
[component_container-1] [INFO] [1679549436.807773594] [oak]: Device type:
[component_container-1] [INFO] [1679549436.813356047] [oak]: Pipeline type: RGBStereo
[component_container-1] [2023-03-23 01:30:36.814] [debug] Device about to be closed...
[component_container-1] [2023-03-23 01:30:36.972] [debug] Timesync thread exception caught: Couldn't read data from stream: '__timesync' (X_LINK_ERROR)
[component_container-1] [2023-03-23 01:30:36.972] [debug] Log thread exception caught: Couldn't read data from stream: '__log' (X_LINK_ERROR)
[component_container-1] [2023-03-23 01:30:37.510] [debug] Watchdog thread exception caught: Couldn't write data to stream: '__watchdog' (X_LINK_ERROR)
[component_container-1] [2023-03-23 01:30:37.831] [debug] XLinkResetRemote of linkId: (0)
[component_container-1] [2023-03-23 01:30:38.250] [debug] Device closed, 1435
[component_container-1] [ERROR] [1679549438.274026895] [oak_container]: Component constructor threw an exception: _Map_base::at
[ERROR] [launch_ros.actions.load_composable_nodes]: Failed to load node 'oak' of type 'depthai_ros_driver::Camera' in container '/oak_container': Component constructor threw an exception: _Map_base::at
You can see the OAK-1-MAX does report a name under "Device type"
[component_container-1] [INFO] [1679549569.647442958] [oak]: Camera with MXID: 1844301011A9460E00 and Name: 1.2.1 connected!
[component_container-1] [INFO] [1679549569.649557688] [oak]: USB SPEED: SUPER
[component_container-1] [1844301011A9460E00] [1.2.1] [1.015] [system] [warning] PRINT:LeonCss: Reading from Factory EEPROM contents
[component_container-1] Reading VERSION 7 --- ->
[component_container-1] [INFO] [1679549569.669528759] [oak]: Device type: OAK-1-MAX
[component_container-1] [INFO] [1679549569.677008122] [oak]: Pipeline type: RGBStereo
[component_container-1] [2023-03-23 01:32:49.678] [debug] Device about to be closed...
[component_container-1] [2023-03-23 01:32:49.679] [debug] XLinkResetRemote of linkId: (0)
[component_container-1] [2023-03-23 01:32:49.680] [debug] Log thread exception caught: Couldn't read data from stream: '__log' (X_LINK_ERROR)
[component_container-1] [2023-03-23 01:32:49.680] [debug] Timesync thread exception caught: Couldn't read data from stream: '__timesync' (X_LINK_ERROR)
[component_container-1] [2023-03-23 01:32:51.110] [debug] Device closed, 1432
[component_container-1] [ERROR] [1679549571.128903967] [oak_container]: Component constructor threw an exception: _Map_base::at
[ERROR] [launch_ros.actions.load_composable_nodes]: Failed to load node 'oak' of type 'depthai_ros_driver::Camera' in container '/oak_container': Component constructor threw an exception: _Map_base::at
Hey @MAVProxyUser and @Serafadam
Today I tried to launched the calibration with: depthai-ros/depthai_ros_driver/launch/calibration.launch
And I see similar errors.
ROS: Noetic Device: OAK-D-PRO Depthai repo on noetic branch.
When I run it with debug I get the following callstack and a segmentation fault:
I tried to disable camera_i_enable_ir, but I couldn't disable it by modifying any config files, neither config/camera.yaml nor cfg/paramemers.cfg seemed to do the trick, so I ended up modyfying the header file:
Maybe this can give some hints to where we can look/change?
Edit: added device type.
Running roslaunch depthai_examples stereo_inertial_node.launch works fine, so the device is functional :smile:
I guess mine is more similar to #245.
Except I run on laptop in docker.
@MAVProxyUser @larshg Ok, I think I've pinpointed that issue, and of course it's a typo :smiling_face_with_tear: :facepalm: Until fix is added, easiest way to get rid of the issue is to edit calibration launch file, change pipeline_type parameter from "RGBStereo" to "RGBDStereo".
Indeed it launches now without crashing, but I don't get any images still. There doesn't seem to be anything published to /oak/rgb/image_raw.
Is this also happening if you run other launches in depthai_ros_driver?
@larshg I too was able to run the Stereo Internal Node launch file just fine.
$ ros2 launch depthai_examples stereo_inertial_node.launch.py camera_model:=OAK-D-PRO
Thanks @Serafadam I'll try the suggested fix.
diff --git a/depthai_ros_driver/launch/calibration.launch.py b/depthai_ros_driver/launch/calibration.launch.py
index 98f682a..b244b8a 100644
--- a/depthai_ros_driver/launch/calibration.launch.py
+++ b/depthai_ros_driver/launch/calibration.launch.py
@@ -48,7 +48,7 @@ def launch_setup(context, *args, **kwargs):
package="depthai_ros_driver",
plugin="depthai_ros_driver::Camera",
name=name,
- parameters=[{"camera.i_pipeline_type": "RGBStereo",
+ parameters=[{"camera.i_pipeline_type": "RGBDStereo",
"camera.i_nn_type": "none",
"right.i_publish_topic": True,
"left.i_publish_topic": True}],
Making sure it was in the install file of course
ubuntu@ubuntu:~$ grep RGBDStereo . -r
./luxonis_oak_ws/install/depthai_ros_driver/share/depthai_ros_driver/launch/calibration.launch.py: parameters=[{"camera.i_pipeline_type": "RGBDStereo",
./luxonis_oak_ws/src/depthai-ros/depthai_ros_driver/launch/calibration.launch.py: parameters=[{"camera.i_pipeline_type": "RGBDStereo",
I am now getting the cam streaming, but still getting an error
Is this also happening if you run other launches in depthai_ros_driver?
I tried running some other example which seemed to work (I ran the RGB-D-pcl.launch, which published on the /oak/points topic with 30 hz). Then I reran the calibration and now it shows an grayscale image of the center camera. Now I just need to figure how to do the actual calibration :smile:
Not entirely sure why it shows an image now :confused:
Sidenote: I initially connected two USB-C with the supplied splitter, to power the IR-emitter, to see if that had any changes. But now I returned to just a single USB-C and it still works.
Now I just need to figure how to do the actual calibration 😄
same!
Now I just need to figure how to do the actual calibration 😄
same!
So I set up the size paramemter to be 8x5, which match the number of intersections on the calibration plate and also set the square size to 4.0 (cm) and now it correctly detects the calibration board.
Waiting for the result after pressing calibrate :smile:
@Serafadam I noticed that the calibration is done images with resolution of 1280x720 - is there a way to make use the full resolution?
@larshg Is that for RGB or mono camera? When it comes to RGB, you can set i_set_isp_scale: false
, by default it's enabled so that rgb and stereo images match a little better.
@MAVProxyUser
On those errors with OAK-1, could you paste logs into a file and post them here?
@Serafadam I assume mono is the RGB camera - the center one? Alternative to mono, is stereo right - which is not what I want to do.
I'll try the i_set_isp_scale
@Serafadam Adding <rosparam param="rgb_i_set_isp_scale">false</rosparam>
does indeed change the resolution to 1920x1080, but it is a 3840x2160 sensor right?
You can change resolution with i_resolution
parameter
@Serafadam I put the Oak-1 bug here, since I figured out what it is related to
https://github.com/luxonis/depthai-core/issues/782
Pretty well these lines of code failing due to the blank camera name returned.
https://github.com/luxonis/depthai-core/blob/5ead66c017593563c8f730847c3e7ed2df8e950c/src/device/CalibrationHandler.cpp#L295
https://github.com/luxonis/depthai-core/blob/5ead66c017593563c8f730847c3e7ed2df8e950c/src/device/CalibrationHandler.cpp#L308
https://github.com/luxonis/depthai-core/blob/5ead66c017593563c8f730847c3e7ed2df8e950c/src/device/CalibrationHandler.cpp#L329
https://github.com/luxonis/depthai-core/blob/5ead66c017593563c8f730847c3e7ed2df8e950c/src/device/CalibrationHandler.cpp#L344
https://github.com/luxonis/depthai-core/blob/5ead66c017593563c8f730847c3e7ed2df8e950c/src/device/CalibrationHandler.cpp#L351
https://github.com/luxonis/depthai-core/blob/5ead66c017593563c8f730847c3e7ed2df8e950c/src/device/CalibrationHandler.cpp#L373
https://github.com/luxonis/depthai-core/blob/5ead66c017593563c8f730847c3e7ed2df8e950c/src/device/CalibrationHandler.cpp#L418
Closing the issue as it seems problems were resolved, please reopen if you have further comments/questions.
Unable to stream from camera, Black screen.