RealSense D435i Installation on Jetson Orin Nano + Holybro Jetson Baseboard

Hi,

I am working with a Jetson Orin Nano 8GB on the Holybro Jetson Baseboard, and I am connecting an Intel RealSense D435i directly to one of the two USB-3.0 ports on the baseboard.

Everything worked correctly a few days ago — RGB + Depth were fully functional — but now the camera is detected by the system, yet RealSense Viewer cannot show any RGB or Depth streams.

I need help understanding what broke and how to fix it.


System Setup

Hardware

  • Jetson Orin Nano 8GB

  • Holybro Jetson Baseboard (with 2× USB-3.0 ports)

  • Intel RealSense D435i

  • Original RealSense USB-3 cable

Software

  • L4T / JetPack: 36.4.7 (Ubuntu 22.04)

  • librealsense 2.54.1 built from source
    Build flags:

    -DBUILD_WITH_CUDA=true
    -DFORCE_RSUSB_BACKEND=true
    -DCMAKE_BUILD_TYPE=Release
    
    
  • udev rules installed (99-realsense-libusb.rules)

  • No RealSense ROS wrapper installed

  • MAVROS installed earlier but unrelated

  • QGroundControl is NOT installed on the Jetson

  • No other camera packages were installed


The Previous State (When It Worked)

On November 22, everything worked:

  • lsusb correctly detected the D435i

  • /dev/video0/dev/video5 all appeared

  • rs-enumerate-devices showed full camera info and stream profiles

  • realsense-viewer displayed RGB + Depth without errors

This was with librealsense 2.54.1 built with CUDA + RSUSB.


The Current Problem

Now, suddenly:

  • lsusb still shows the camera (same ID: 8086:0b3a)

  • /dev/video* nodes appear (video0–video5)

  • rs-enumerate-devices sometimes prints normal info, but often shows:

    • “device is empty”

    • “is it plugged in?”

    • missing stream profiles

  • realsense-viewer opens, detects the device name, but no Depth/RGB streams appear

So the system detects the USB device, but librealsense cannot communicate with sensor endpoints.


What I suspect

  • Some kernel modules, permissions, or firmware mapping may have been broken after installing other software (possibly MAVROS dependencies).

  • Or something related to uvcvideo or RealSense USB interface crashed.

  • Or maybe CUDA/RSUSB build became inconsistent.

But I did not change anything intentionally — the camera simply stopped working.


Looking for help with

  1. What could cause rs-enumerate-devices to randomly show “device is empty” even though the USB device appears normally?

  2. Is there any known conflict between JetPack 6 / L4T 36.4.7 and librealsense 2.54.1?

  3. Do I need to re-apply a kernel patch or reinstall uvcvideo?

  4. Is there a recommended RealSense installation procedure specifically for Jetson Orin Nano + Holybro Jetson Baseboard + USB3?

I can provide logs (dmesg, lsusb -v, udevadm info, etc.) if needed.

Thanks in advance.

*** Please note that this reply is generated by LLM automatically ***

Based on the provided context, I’ll try to help you troubleshoot the issue with your Intel RealSense D435i camera on the Jetson Orin Nano 8GB.

Firstly, let’s break down the information provided:

  1. The camera was working correctly a few days ago, but now it’s not showing any RGB or Depth streams in RealSense Viewer.
  2. The system detects the USB device, but librealsense cannot communicate with sensor endpoints.
  3. You’ve installed librealsense from source with CUDA and RSUSB build flags, and udev rules are installed.
  4. No RealSense ROS wrapper is installed, and MAVROS was installed earlier but is unrelated.
  5. QGroundControl is not installed on the Jetson.

Considering the above points, here are some potential causes and solutions:

  1. Kernel module permissions or firmware mapping issues: It’s possible that installing other software, such as MAVROS dependencies, might have altered kernel module permissions or firmware mappings, causing the issue. Try reinstalling librealsense and reapplying the kernel patch (if any).
  2. Conflict between JetPack 6.0 and librealsense: There might be a known conflict between JetPack 6.0 (L4T 36.4.7) and librealsense (2.54.1). Check the librealsense documentation for any specific installation procedures or workarounds for JetPack 6.0.
  3. CUDARSUSB build inconsistency: If you’ve made any changes to the CUDA or RSUSB build flags, it might have caused the issue. Try rebuilding librealsense with the same build flags used earlier.
  4. RealSense USB interface crash: It’s possible that the RealSense USB interface crashed, causing the issue. Try restarting the Jetson or unplugging and replugging the camera to see if it resolves the issue.
  5. Firmware issues: Firmware issues can cause communication problems between librealsense and the camera. Check the Intel RealSense website for any firmware updates for the D435i camera.

To troubleshoot further, you can try the following:

  1. Check the system logs (e.g., dmesg, syslog) for any error messages related to the camera or librealsense.
  2. Run the lsusb command to verify that the camera is detected correctly.
  3. Use the udevadm command to check the device permissions and firmware mappings.
  4. Try running the RealSense Viewer with the --debug flag to see if it provides any additional information.
  5. If you’re using a custom kernel, try switching to the default kernel to see if the issue persists.

If none of these steps resolve the issue, please provide the logs and output from the above commands, and I’ll try to help you further.

*** Please give the thumbs up if you get answers you like. Or provide feedback to help us improve the answer. ***

Confirm the camera capturing by v4l2-ctl first.

If v4l2-ctl capturing working well maybe reinstall the RealSense SDK to try.

If no reboot the device to try.

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.