-
Notifications
You must be signed in to change notification settings - Fork 4.8k
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
Odroid XU4 + D455: No Device detected #8195
Comments
Hi @chaotic-bruno As a starting point in investigating your case, could you please try reloading the udev rules and then rebooting your computer, as described in the advice to an Odroid XU4 user in the link below: |
Hey @MartyG-RealSense, Nothing changed so far. Here is the output of "realsense-viewer":
Regarding the RSUSB method: I hope the method with the patched kernel will be faster... |
The busnum/devnum error is a very rare one. In the past it has typically been related to use of a camera on a micro-size USB 3 OTG port on small developer boards and computers on a stick. The XU4 specification does not list an OTG port. However, on the affected devices the root cause was apparently insufficient power being provided to the camera by the USB port. There was also a busnum/devnum case from December 2018 where the camera would work fine on SDK example programs but would disconnect when ROS was launched. One RealSense user found that if they encountered this problem with ROS then they could clear it by unplugging and re-inserting the camera a few times (though an initial_reset should have a similar effect to resetting the camera with an unplug-replug). Are you usng the original official 1 meter USB cable that was supplied with the camera, please? |
Thank you for your answer @MartyG-RealSense, yes it is the original USB cable. Yesterday I compiled librealsense with
So i don't think that this is power related since I toggled the option in realsense-viewer for active IR and this should max out the power usage of the camera (see image below). I will try now to build the librealsense2 ROS package with libuvc and see if the frame rate is sufficient for my use case. |
Great to hear that you made progress @chaotic-bruno - please let me know how your next test with libuvc goes. Good luck! |
Hey @MartyG-RealSense, after some tuning I got it running in ROS melodic and the connection is fast and stable.
as seen in: IntelRealSense/realsense-ros#1284 (comment) We can close this issue if you don't need further information about the situation with the patched kernel ... |
Great news that you succeeded @chaotic-bruno - thanks very much for sharing the method that worked for you! I do not require further information, so feel free to close this case if you are satisifed with the outcome. |
Even though this is closed: I tried mapping with rtabmap in ROS but the result was not good since the camera dropped frames for some seconds after 20-60 seconds of usage and even sometimes completely crashed. So I started searching again and found this blog https://jack-kawell.com/2019/09/30/installing-realsense-sdk-on-an-odroid-xu4/. There it says before the compilation of librealsense:
I can confirm that this method works. Comparison of the performance:
So the version working with patched kernel modules is indeed a lot faster. The downside is that the IMU is not usable. |
It is excellent to hear that you have achieved improved results! In regard to shaking during motion, you could perhaps add a vibration damping pad to the mounting point of the camera on the robot to reduce the impact of the motion. Using relocalization with RTABMAP to correct the IMU when tracking drifts or is lost has also been discussed. The link below has a tutorial that expands upon Intel's own D435i SLAM tutorial for ROS with the addition of how to use the localization mode of RTABMAP to obtain the relative position of the camera on a recorded map - see the tutorial section headed Localization with rtabmap. |
Hi @chaotic-bruno You sent a note about whether you could re-open the case. If you wish to continue this case, you can re-open it with the Reopen Issue button underneath the comment box. |
Hey @MartyG-RealSense,
First thing what I did was uncommenting the lines in cd librealsense/odroid_bionic
KBASE=`pwd`
sudo make -j -C $KBASE M=$KBASE/drivers/iio/accel modules
sudo make -j -C $KBASE M=$KBASE/drivers/iio/gyro modules But then again the modules did not recompile. This is due to the default config for the XU4 which was created by the command I think this is because I was compiling these modules alone and not with their dependencies. Because I've run Commands for compiling the modified kernel and activating it (compare to https://wiki.odroid.com/odroid-xu4/os_images/linux/ubuntu_4.14/20190929#linux_kernel_build): make -j8
sudo make modules_install
sudo cp -f arch/arm/boot/zImage /media/boot
sudo cp -f arch/arm/boot/dts/exynos5422-odroid*dtb /media/boot
sync Here is my version of
If one would kompile the whole kernel the dependencies of the accel and gyro kernel modules should be presend in the kernel. Then the I hope this helps others when working with odroid devices... |
Thanks so much @chaotic-bruno - that is an excellently detailed guide for Odroid XU4 developers! :) |
Some further update: The USB3.2 ports of the Odroid XU4 really have a power problem. The Camera stops working on them during heavy load. In this post in the odroid forum there is explained how to clean the USB3 ports. But this didn't resolved my issue. I also tested several power supplies... Other places where this issue was mentioned: |
Thanks again @chaotic-bruno for sharing your valuable XU4 test information! |
Issue Description
I downloaded the GitHub repo of librealsense and followed the tutorial for manual installation on linux.
I did this one time on Ubuntu 16 with "patch-realsense-ubuntu-odroid.sh" and one time on Ubuntu 18 with "patch-realsense-ubuntu-odroid-xu4-4.14.sh".
Some patches failed in "patch-realsense-ubuntu-odroid.sh". I replaced the patch file "realsense-camera-formats-xenial-hwe.patch.txt" with the one from #7863 (comment) and then the patch worked.
In both versions oft Ubuntu and with no errors while patching all tools "rs-*" output "there are no connected devices".
When I open "realsense-viewer" it outputs in the console:
I think the libGL error can be ignored...
Output of dmesg:
I think that the patching of the kernel for ubcvideo (and / or the uvcvideo module) is not working.
I've read about another method in the manual for NVidia Jetson Devices:
So I installed with "libuvc_installation.sh" in Ubuntu 16 and the device gets recognized. Realsense-viewer crashed and I need some ROS packages that are only compatible with Ubuntu 18 so reinstalled the OS. Since then I didn't have time to recompile librealsense via this method (compiling takes ~ 2 h). I think it would be the best if the normal installation method would be working...
Since there is not much information about librealsense + Odroid XU4 here, I'm going to update this issue when I get the RSUSB method running on Odroid.
The text was updated successfully, but these errors were encountered: