繁体   English   中英

用于向连接到 USB 总线的设备发送 SET_CONFIGURATION 消息的 Linux 工具

[英]Linux tool to send a SET_CONFIGURATION message to a device connected to the USB bus

我已经为 USB 设备开发了一个内核驱动程序。 这样的设备有一些引脚可以提供 CDC ACM 串行端口或输入按钮的功能。 因此,要实现它,我必须使用两个不同的 USB 配置描述符。

驱动程序按预期工作,但在编译固件并将其加载到微控制器之前,我必须对所选设置进行硬编码。 我正在寻找一种机制来从用户空间更改该设备配置。

我在 USB 文档中读到了一条 SET_CONFIGURATION 消息,但是找不到任何 Linux 工具可以将这种标准 USB 消息从用户空间发送到 USB 总线。

你们中的一些人(在这个主题上有更多经验)是否知道一些用户空间 Linux 工具可以将 SET_CONFIGURATION 消息发送到连接到 USB 总线的设备?

提前致谢: :)

理论上, LibUSB中的函数libusb_set_configuration()可以做到这一点,但是没有必要。

只需使用“接口关联描述符”( IAD ),即可将HID(用于按钮)和CDC(串行端口)都置于一种配置中。

这个github仓库解决了我的问题:

https://github.com/avtolstoy/usbtool

无需任何特殊工具。 您可以简单地通过sysfs来完成:

  • 找到您的设备cd /sys/bus/usb/devices/XY/其中 X 是总线号,Y 是设备号。
  • 编辑bConfigurationValue ,例如,使用sudoedit
  • 将文件内容设置为需要的配置号并保存

而已!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM