我正在创建一个运行我自己的自定义堆栈的USB设备,我需要确保它能与任何主机或集线器一起工作。USB-IF有自己的官方测试程序,但它只运行在Windows上,并且在我的Windows机器上有一些严重的问题。(它杀死了所有其他USB设备,包括我的鼠标和键盘,这样我就不能使用它自己的UI)
是否有Ubuntu的工具可以在规范允许的范围内敲击USB设备,并告诉我它是如何实现的?
我终于做了一些work...sort的东西。
我试着在虚拟机中安装Windows的临时副本,但是测试人员没有识别虚拟USB控制器。
最后,我用PS/2键盘和USB鼠标(没有PS/2鼠标)在一台我们需要擦除的机器上安装了Windows副本。它在那里做同样的事情-杀死鼠标-但一旦我启动了一个使用键盘导航GUI的测试,鼠标再次工作。当测试完成后,我可以用鼠标保存结果并关闭程序,这样操作系统就可以重新检测USB设备,并重新安装正常的驱动程序,但随后Windows就崩溃了。BSOD。我让它正常重新启动,而鼠标仍然不工作。系统恢复修复它。
因此,它仍然不是一个理想的解决方案,但至少它是可行的。我还是愿意做点更好的事。难道没有一个功能等价于运行在Ubuntu上的官方测试人员吗?
http://www.usb.org/developers/tools/usb20_工具/工具
http://www.usb.org/developers/tools/#usb30tools
发布于 2014-08-29 17:41:59
我想我不知道你所说的自定义堆栈是什么意思,它应该如何被击倒?从我在那里看到的程序看,它看起来像“命令验证器”,只运行基于标准第9章的测试.
lsusb -v看起来覆盖了相同的信息。
据我所知,如果lsusb -v没有检测到它,或者在dmesg或内核调试日志中没有指定任何信息,那么它就不是一个可识别的usb设备,内核需要一种方法来识别它。在访问数据和写入usb设备方面:
sudo apt-install libusb-dev && firefox file://usr/share/doc/libusb-dev/html如果它被枚举并挂载,可以在/dev/tty*上抛出您自己的测试。
screen /dev/ttyACM*。echo data > /dev/ttyACM*?cat /dev/ttyACM* > somefile来查看正在发送的数据类型。tail -f /dev/ttyUSB0可以主动查看文件的底部。https://askubuntu.com/questions/517695
复制相似问题