编辑:

编辑:

我正在创建一个运行我自己的自定义堆栈的 USB 设备,我需要确保它可以与任何主机或集线器一起使用。USB-IF 有自己的官方测试程序,但它只能在 Windows 上运行,并且在我的 Windows 机器上存在一些严重问题。(它会杀死所有其他 USB 设备,包括我的鼠标和键盘,所以我无法使用它自己的 UI)

是否有一个适用于 Ubuntu 的工具可以按照规格允许的力度对 USB 设备进行敲击并告诉我效果如何?


迟来的更新,相关内容 2014 年 9 月 5 日

我终于完成了一些工作......有点。

我尝试在虚拟机中安装 Windows 的临时副本,但测试仪无法识别虚拟 USB 控制器。

我最终在一台无论如何都需要清除的机器上安装了 Windows 的副本,使用的是 PS/2 键盘和 USB 鼠标(我没有 PS/2 鼠标)。它在那里做了同样的事情 - 杀死鼠标 - 但是一旦我使用键盘导航 GUI 开始测试,鼠标就会再次工作。测试完成后,我可以使用鼠标保存结果并关闭程序,这允许操作系统重新检测 USB 设备并重新安装所有设备的正常驱动程序,但随后 Windows 崩溃了。BSOD。我让它正常重启,但鼠标仍然无法工作。系统还原修复了它。

所以这仍然不是一个理想的解决方案,但至少在某种程度上是可行的。我仍然愿意接受更好的方案。在 Ubuntu 上运行的官方测试程序是否没有功能等效的程序?

http://www.usb.org/developers/tools/usb20_tools/

http://www.usb.org/developers/tools/#usb30tools

答案1

编辑:

我猜我不确定你所说的自定义堆栈是什么意思,以及应该如何破坏它?从我在该网站上看到的程序来看,它看起来像“命令验证器”,并且只运行基于标准第 9 章的测试……

lsusb -v看起来它涵盖了相同的信息。

据我所知,如果无法检测到它或者内核调试日志lsusb -v中没有指定任何信息,dmesg那么它就不是可识别的 USB 设备,需要内核找到一种方法来识别它。关于访问数据和写入 USB 设备:

sudo apt-install libusb-dev && firefox file://usr/share/doc/libusb-dev/html

如果它被枚举并安装,也许你可以自己进行测试/dev/tty*

相关内容