You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

树莓派双RFID阅读器USB设备号互换问题求助

解决树莓派RFID阅读器重启后hidraw设备名互换的问题

这个问题很常见,本质是Linux下USB设备的动态命名机制导致的——每次重启后内核枚举设备的顺序可能变化,所以hidraw编号会互换。解决的核心思路是给每个阅读器绑定固定的符号链接,不管内核给它分配什么hidraw编号,你都能用统一的名字访问。具体步骤如下:

1. 获取两个阅读器的唯一标识

首先得拿到每个设备的专属识别信息,确保udev能精准区分它们。

  • 先单独插上第一个阅读器(reader1),运行以下命令查看设备属性:
    udevadm info -a -n /dev/hidraw0 | grep -E '(idVendor|idProduct|serial)'
    
    你会得到类似这样的输出:
    ATTRS{idVendor}=="1234"
    ATTRS{idProduct}=="5678"
    ATTRS{serial}=="ABC123XYZ"
    
  • 拔掉第一个,插上第二个阅读器(reader2),重复上述命令(注意此时设备可能是/dev/hidraw0或hidraw1),记录它的idVendor、idProduct和serial值。

注意:如果两个阅读器的idVendor和idProduct完全相同,必须依赖serial号来区分;如果设备没有serial号,可以用物理端口属性(比如ATTRS{phys}),但serial号是最可靠的唯一标识。

2. 创建udev规则文件

udev是Linux管理设备的子系统,我们可以通过规则让它给指定设备创建固定的符号链接。

  • 创建一个新的udev规则文件:
    sudo nano /etc/udev/rules.d/99-rfid-readers.rules
    
  • 在文件中添加以下内容,把占位符替换成你刚才记录的实际值:
    # 绑定输入阅读器reader1到固定链接/dev/rfid-reader-input
    SUBSYSTEM=="hidraw", ATTRS{idVendor}=="你的reader1的VID", ATTRS{idProduct}=="你的reader1的PID", ATTRS{serial}=="你的reader1的serial", SYMLINK+="rfid-reader-input"
    
    # 绑定输出阅读器reader2到固定链接/dev/rfid-reader-output
    SUBSYSTEM=="hidraw", ATTRS{idVendor}=="你的reader2的VID", ATTRS{idProduct}=="你的reader2的PID", ATTRS{serial}=="你的reader2的serial", SYMLINK+="rfid-reader-output"
    
  • 保存并退出编辑器(nano中按Ctrl+O,回车确认,再按Ctrl+X)。

3. 加载新规则并验证

  • 重新加载udev规则,让新配置生效:
    sudo udevadm control --reload-rules
    sudo udevadm trigger
    
  • 同时插上两个阅读器,查看/dev目录下的符号链接:
    ls -l /dev/rfid-*
    
    你应该能看到类似这样的输出,说明符号链接已经正确绑定到对应的hidraw设备:
    lrwxrwxrwx 1 root root 7  月 10 15:30 /dev/rfid-reader-input -> hidraw0
    lrwxrwxrwx 1 root root 7  月 10 15:30 /dev/rfid-reader-output -> hidraw1
    

4. 修改代码中的设备路径

最后,把你代码里原来的/dev/hidraw0和/dev/hidraw1,分别替换成/dev/rfid-reader-input和/dev/rfid-reader-output。这样不管树莓派重启多少次,系统都会通过固定的符号链接找到对应的阅读器,再也不会混淆输入输出功能了。

内容的提问来源于stack exchange,提问作者Alexandre Barbosa Gontijo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.25 03:48:11