-
Notifications
You must be signed in to change notification settings - Fork 48
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Document and support installation of software that depends on librealsense #564
Comments
The situation seems to be easy on Windows and macOS:
The situation is more tricky on Linux:
So, before deciding on the best strategies, I have two questions to realsense users:
@Nicogene @xEnVrE @prashanthr05 @lnobile @vvasco (or any other realsense user) I think that if you could answer the questions Q1 & Q2 it would be quite useful! |
Hi @traversaro, I'll try to answer Q1 according to my experience. First of all, I tend to compile the library from source because it seems that the default build options (hence the same I am expecting the package is compiled with e.g. in the provided deb packages) require patches to the driver itself in order to support the Linux kernel and tend to produce unreliable behaviors (e.g. you run the Instead, what I found to be working more reliably is to compile from source specifying the option Some warnings:
|
I wanted to add that compiling from sources also enable us to decide other two important things. Since we typically use RGB + Depth (and we need to align them) and since the alignment process can be CPU consuming, the
Honestly, I don't know what are the default build options adopted in the provided |
On my local machine, I installed it from the source. In this case in order to setup the udev rules I was prompted to run the script |
Q1 Q2 |
Q1If I'm not mistaken, we did follow https://github.com/IntelRealSense/librealsense/blob/master/doc/distribution_linux.md#installing-the-packages. Is that correct @vvasco? Q2Never been concerned with this. Perhaps @vvasco has some insights on this. |
In your experience, would it be possible to run the expensive computation in a machine different from the one to which the sensor is physically attached? In other words, is it possible to stream the raw USB output to another machine in the network? |
I don't know if that is possible but I think it is not (with the standard pipeline). Anyway, please consider that if you only need depth imaging, you can disable the alignment process (it can be easily done from the configuration file of the associated |
@S-Dafarra starting from |
Thanks a lot to everyone! I will try to summarize what I learned, also w.r.t. to Q2. On Linux librealsense has two backends:
An in-depth description of this two options is described in IntelRealSense/librealsense#5212 (comment) . Regarding udev rules, I am still not sure what and when they are actually needed. However even when librealsense is installed from source, the udev rules can be installed separately (and we could document that, once we understand how to do that properly). Related to that, it seems that for now udev rules are not included in ROS packages of librealsense, see IntelRealSense/realsense-ros#1426 . Based on this and by the feedback by @xEnVrE, by personal inclination is the following:
Let me know if you think it make sense or that we should do something else, thanks! |
Note that we recently discussed about the possible use of multiple realsense cameras attached to the same machine in the context of the ergoCub project, so for the future we may need to consider supporting the use of the |
Tagging @triccyx who had worked on the same backend for the UltraPython. |
To resume the issue, I guess that the basic point is that users may have many different ways of installing librealsense, so the easy thing is just to discuss one way in the docs, and avoid to build librealsense in the superbuild itself. |
The Intel realsense devices are quite used in the robotics world, and there are plan to include them as an add-on on the iCub robot.
However, the necessary software dependencies are not available from standard repos on Debian/Ubuntu, so it could make sense to have a dedicate profile of optional dependency (see https://github.com/robotology/robotology-superbuild/blob/master/doc/profiles.md) for them.
The text was updated successfully, but these errors were encountered: