intel / ros2_intel_realsense

This project is deprecated and no more maintained. Please visit https://github.com/IntelRealSense/realsense-ros for ROS2 wrapper.
Apache License 2.0
139 stars 95 forks source link

Device or Resource Busy #153

Open rafaelRinconFo opened 3 years ago

rafaelRinconFo commented 3 years ago

Hi guys.

Currently I'm using an Intel Real Sense 435i with your wrapper. I'm testing the camera in two devices, my PC and a Jetson Xaver NX. In the Jetson NX it works wonderful, I can't complain at all, however, my PC keeps throwing and throwing this error:

[realsense_ros2_camera-4] 28/08 13:55:15,685 ERROR [139630948977152] (types.h:180) get_xu(...). xioctl(UVCIOC_CTRL_QUERY) failed Last Error: Device or resource busy [realsense_ros2_camera-4] [ERROR][1598622915.696189885]: An exception has been thrown: get_xu(...). xioctl(UVCIOC_CTRL_QUERY) failed Last Error: Device or resource busy [realsense_ros2_camera-4] terminate called after throwing an instance of 'rs2::backend_error'

There is no difference between the code implemented in both devices, the only difference I can think about is the fact that in my PC, I'm running the wrapper within a Docker Container. However, I think this is not the issue because I've made test in ROS2 inside and outside the container and the results don't change.

I read some already closed issues from the last year and it seems to be that a recurrent cause of this is the Kernel version (Currently I'm on 5.4.0-42 generic) and the fact that you have support until the 5.3 Kernel in this moment.

However, something funny happens. In a desperate attempt to make the camera work on my computer, I just started the node several times while the same error happened time after time until the camera just worked and the node was successfully launched. Nevertheless, this is not constant, sometimes it takes 8 node restarts, sometimes 5, sometimes it just doesn't work. So, I don't think this is an option in the long term.

Are you guys planning to support the 5.4 Kernel anytime soon? Is there another solution to solve this issue that I'm ignoring?

Thank you so much for your help.