首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从udev规则重新映射USB设备默认productId

从udev规则重新映射USB设备默认productId
EN

Unix & Linux用户
提问于 2022-03-15 09:19:53
回答 1查看 688关注 0票数 0

我有一个设备,它由mod别名分配给productId of 1713

代码语言:javascript
复制
$ lsusb -s 001:008
Bus 001 Device 008: ID 1e71:1713 NZXT NZXT USB Device

$ lsusb -t | grep "Dev 8"
    |__ Port 12: Dev 8, If 0, Class=Human Interface Device, Driver=usbhid, 12M

$ cat /sys/bus/usb/devices/1-12\:1.0/uevent
DEVTYPE=usb_interface
DRIVER=usbhid
PRODUCT=1e71/1713/200
TYPE=0/0/0
INTERFACE=3/0/0
MODALIAS=usb:v1E71p1713d0200dc00dsc00dp00ic03isc00ip00in00

但是,我想使用一个程序(https://openrgb.org)来识别这个设备在productId下2005

有没有办法创建一个udev规则将1713重新映射到2005

我已经尝试了以下几种毫无成效的方法:

  1. modprobe usbhid && echo "1e71 2005" > /sys/bus/usb/drivers/usbhid/new_id
  2. 添加/etc/udev/rules.d/99-nzxt-usb.rules
代码语言:javascript
复制
ACTION=="add", \
SUBSYSTEM=="usb", \
ATTR{idVendor}=="1e71", \
ATTR{idProduct}="2005", \
RUN+="/sbin/modprobe -qba usbhid"
EN

回答 1

Unix & Linux用户

回答已采纳

发布于 2022-03-15 19:29:32

productId是由USB层提供的USB信息,您不能通过udev规则来改变这一点。

然而,openrgb是开源的,并且鼓励可以添加您自己的设备。因此,只要下载源代码,修改它,编译它,如果它工作,提交一个补丁。

供应商和产品是"USB设备描述符“的一部分,后者是标准USB协议的一部分。这只能从设备中读取,并且内核可以将其作为read使用。

看看描述符的这里,读取描述符的请求的这里

票数 1
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/694465

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档