回答你的问题

回答你的问题

我有 Ubuntu 22.04 作为虚拟机和 Raspberry Pi 0W,在 Pi 0W 上我有一个 CAN-Bus USB 适配器,我已经设置了它,这样我就可以使用 Raspberry Pi 0W 和 CAN-Bus 适配器连接到我的 Tesla ODBC-II 端口。

它工作得很好,我可以在 Ubuntu 实例中看到 CAN 总线上的活动,就像直接插入 USB 一样。

然后我想到了另一个有用的应用程序。我正在远程工作,而我想要连接的硬件距离超过 200 英里。连接到硬件的正常方法是使用 Lonworks USB 适配器。我尝试以与 CAN 总线适配器相同的方式设置此适配器,但它不起作用。

供应商是否可以在自己的 USB 设备中采取某些措施来防止其被共享?

使用 USB CAN-Bus 适配器,我在 Ubuntu 的终端中执行:

usbip list -r 192.168.5.185

上面的IP是我网络上的Raspberry Pi 0W,这会返回一个可以导出的设备,这将返回:

Exportable USB devices
==================
 - 192.168.5.185
             1-1: OpenMoko, Inc. : Geschwister Schneider CAN adapter (1d50:60f6)
                  : /sys/devices/platform/soc/209800000.usb/usb1/1-1
                  : (Defined at Interface level) (00/00/00)

当 Lonworks 适配器存在时,不会返回任何内容,结果是:

usbip: error: could not connect 192.168.5.185:3240: System error

我今天在这里创建了另一篇文章:

https://raspberrypi.stackexchange.com/questions/147150/making-usb-device-stable-and-reliable

https://forum.linux-hardware.org/index.php?topic=150.msg246#msg246

答案1

回答你的问题

不是真的没有。无法保证连接的延迟足够低以允许特定设备正常工作,但当通信已经正常工作时,您所看到的与失败无关。

试图解决手头的问题

如果usbip list --local在您的远程计算机上工作,那么通常设置正确。我怀疑没有,您可能需要正确加载 usbip 内核模块。在尝试连接时检查 usbip 的日志输出,如果问题确实出在内核模块上,请检查dmesg加载模块后的情况。

相关内容