NVIDIA Jetson TX2指定USB口首次连接RealSense D435i无法启用求助
Jetson TX2 连接RealSense D435i指定USB端口首次接入失败解决方案
故障根因
该问题为Jetson TX2 tegra-xusb主机控制器的端口上电时序,与RealSense D435i的USB 3.0初始化逻辑不兼容导致:首次接入设备时,端口供电握手超时触发控制器总线锁死,所有USB设备无法工作;重插时控制器已完成一次上电循环,握手成功后设备正常运行。
可行解决方案
方案1:添加udev规则自动复位目标端口(无侵入,优先选择)
自动模拟重插逻辑,无需修改内核或启动参数,配置步骤如下:
- 创建udev规则文件
sudo nano /etc/udev/rules.d/99-realsense-tx2.rules
- 写入以下规则内容
SUBSYSTEM=="usb", ATTRS{idVendor}=="8086", ATTRS{idProduct}=="0b3a", ATTRS{devpath}=="2-3.4", RUN+="/bin/sh -c 'echo 0 > /sys/bus/usb/devices/2-3-port2/disable; sleep 1; echo 1 > /sys/bus/usb/devices/2-3-port2/disable'"
- 重载udev规则生效
sudo udevadm control --reload-rules && sudo udevadm trigger
方案2:调整XUSB控制器端口超时时间
延长端口初始化等待时长,匹配D435i的初始化节奏:
- 编辑启动配置文件
sudo nano /boot/extlinux/extlinux.conf
- 在
APPEND行末尾添加参数
usbcore.autosuspend=-1 tegra_xusb.port_enable_timeout=8000
- 保存重启设备后生效
方案3:强制设备运行在USB 2.0模式
不需要高帧率高分辨率深度流时可使用,彻底规避USB 3.0握手问题:
- 编辑启动配置文件
sudo nano /boot/extlinux/extlinux.conf
- 在
APPEND行末尾添加参数
usbcore.quirks=8086:0b3a:g
- 保存重启设备后生效
验证方法
配置完成后重启TX2,首次将D435i插入指定USB端口,运行realsense-viewer确认设备正常识别,同时测试鼠标、键盘等其他USB设备工作正常即可。
内容的提问来源于stack exchange,提问作者lollo_182
相关产品推荐
相关产品推荐

