D457 GMSL/FAKRA integration with Nvidia AGX Orin
I would like to integrate D457 with Nvidia Jetson AGX Orin which I believe already consists of deserializer in its carrier board(Not sure but I think its Connect Tech built). Also, Nvidia AGX Orin has 8 GMSL connections. I was able to build realsense using jetpack 5.0.2 following the instruction as mentioned in - https://github.com/IntelRealSense/librealsense/issues/10416 following instructionswith DFORCE_RSUSB_BACKEND flag set as true. I also installed realsense-ros using Method-2 instructions as mentioned here - https://github.com/IntelRealSense/realsense-ros/tree/ros1-legacy .
After successful installation, when I connect D457 to Orin using Fakra connectors, and run command "roslaunch realsense2_camera rs_camera.launch", I am getting a warning "No RealSense devices were found". I also don't see any camera detected in the realsense-viewer "Add source" option as well. Can you please let me know how can I integrate D457 with Orin?
Summarizing my setup information:
- Camera- D457 with Fakra connectors
- System - Nvidia Jetson AGX Orin
- Jetpack version - 5.02
- Kernel version - 5.10.104-tegra
- Ubuntu - 20.04
- ROS noetic
I am looking forward to your help. Thankyou!
Hi Pbhamare The D457 is not a 'plug and play' camera like the other RealSense 400 Series camera models. It requires a special 'reference driver'. Intel have published this driver for the Jetson AGX Xavier at the link below.
In order to use the driver with platforms other than AGX Xavier, customers need to port the driver themselves. Intel unfortunately are unable to assist with this porting process.
Further information resources about D457, including a link to Connect Tech's D457 product page, can be found here:
Thankyou MartyG. I can understand that you won't be able to assist with the porting process. But can you pinpoint me to the list of files that needs these changes? It would be great help.
Advice about a list of files to change is also not available, unfortunately. Porting the reference driver is a challenging task that is best suited to a team of developers in a large company rather than individual developers.
In regard to your question about a Jetson AGX Orin version of the driver, I will refer your question to a member of the Intel RealSense Help Center support team.
Hi MartyG, thankyou! I will await your response regarding the Jetson AGX Orin version of the driver.
In addition, if I follow the instructions mentioned in here https://docs.nvidia.com/jetson/archives/r35.1/DeveloperGuide/text/SD/CameraDevelopment/SensorSoftwareDriverProgramming.html , which I think is related to configuring the kernel device tree so that the connected hardware (in this case - D457) would be detected by the system (Orin). So my question is - do we still need reference D457 drivers that needs to be ported to Orin in this situation as well?
Find it here:
I already followed the instructions mentioned on the provided link. I tried to build kernel, dtb and D457 driver using both methods:
a. Initially using setup_script and and executing
2. ./build_all.sh [JetPack_version] [JetPack_source_dir]
b. Downloading the Linux source code tarball from JetPack 5.0.2 BSP sources and executing
1. ./apply_patches_ext.sh ./Linux_for_tegra/source/public [JetPack_version]
2. ./build_all.sh [JetPack_version] [JetPack_source_dir]
Though I was able to apply patches successfully, when I tried to build kernel using either of the above-mentioned methods, I am getting following error:
make: Entering directory '/home/ubuntu/realsense_mipi_platform_driver/images/5.0.2'
/home/ubuntu/realsense_mipi_platform_driver/Linux_for_Tegra/source/public/kernel/kernel-5.10/scripts/gcc-version.sh: 17: /home/ubuntu/realsense_mipi_platform_driver/l4t-gcc/5.0.2/bin/aarch64-buildroot-linux-gnu-gcc: Exec format error
/home/ubuntu/realsense_mipi_platform_driver/Linux_for_Tegra/source/public/kernel/kernel-5.10/scripts/gcc-version.sh: 18: /home/ubuntu/realsense_mipi_platform_driver/l4t-gcc/5.0.2/bin/aarch64-buildroot-linux-gnu-gcc: Exec format error
/home/ubuntu/realsense_mipi_platform_driver/Linux_for_Tegra/source/public/kernel/kernel-5.10/scripts/gcc-version.sh: 19: /home/ubuntu/realsense_mipi_platform_driver/l4t-gcc/5.0.2/bin/aarch64-buildroot-linux-gnu-gcc: Exec format error
sh: 1: /home/ubuntu/realsense_mipi_platform_driver/l4t-gcc/5.0.2/bin/aarch64-buildroot-linux-gnu-ld: Exec format error
init/Kconfig:39: syntax error
init/Kconfig:38: invalid statement
/home/ubuntu/realsense_mipi_platform_driver/Linux_for_Tegra/source/public/kernel/kernel-5.10/scripts/clang-version.sh: 11: /home/ubuntu/realsense_mipi_platform_driver/l4t-gcc/5.0.2/bin/aarch64-buildroot-linux-gnu-gcc: Exec format error
/home/ubuntu/realsense_mipi_platform_driver/Linux_for_Tegra/source/public/kernel/kernel-5.10/scripts/lld-version.sh: 24: /home/ubuntu/realsense_mipi_platform_driver/l4t-gcc/5.0.2/bin/aarch64-buildroot-linux-gnu-ld: Exec format error
sh: 1: /home/ubuntu/realsense_mipi_platform_driver/l4t-gcc/5.0.2/bin/aarch64-buildroot-linux-gnu-gcc: Exec format error
make: *** [/home/ubuntu/realsense_mipi_platform_driver/Linux_for_Tegra/source/public/kernel/kernel-5.10/scripts/kconfig/Makefile:89: tegra_defconfig] Error 1
make: *** [/home/ubuntu/realsense_mipi_platform_driver/Linux_for_Tegra/source/public/kernel/kernel-5.10/Makefile:633: tegra_defconfig] Error 2
make: Leaving directory '/home/ubuntu/realsense_mipi_platform_driver/images/5.0.2'
make: *** [Makefile:213: __sub-make] Error 2
Is this error occuring because I am trying to install D457 drivers on Jetson AGX Orin? Please note that instructions given on the github are for installing D457 drivers on Jetson AGX Xavier.
Initially when I talked with MartyG, I was informed that I will need to port the D457 drivers for the Jetson AGX Orin. You can follow the initial thread for further reference to our discussion.
Also can you please look into my previous discussion- https://support.intelrealsense.com/hc/en-us/community/posts/13866515884307/comments/13943784286867 and give your feedback for it as well?
Please sign in to leave a comment.