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

如何通过udev配置区分连接到树莓派4的两台同型号ESP32?

区分两台VID/PID/Serial相同的ESP32的UDev配置方案

方法1:通过物理USB端口路径绑定(硬件端口固定)

这个方案依赖树莓派的物理USB端口,每个端口在sysfs中有唯一标识,即使设备相同,插在不同端口也能区分。

步骤:

  • 单独连接第一台ESP32,找到对应的tty设备(比如/dev/ttyUSB0),运行以下命令查看设备的内核路径:
    udevadm info --attribute-walk --name=/dev/ttyUSB0
    
    在输出中找到最顶层的KERNELS属性值(比如KERNELS=="1-1.1"),这对应树莓派的一个物理USB端口。
  • 拔掉第一台,连接第二台ESP32,重复上述步骤,获取它对应的KERNELS值(比如KERNELS=="1-1.2")。
  • 创建或编辑udev规则文件/etc/udev/rules.d/99-esp32.rules,写入以下内容(替换成你获取的KERNELS值):
    SUBSYSTEM=="tty", ATTRS{idVendor}=="10c4", ATTRS{idProduct}=="ea60", KERNELS=="1-1.1", SYMLINK+="esp32-motores"
    SUBSYSTEM=="tty", ATTRS{idVendor}=="10c4", ATTRS{idProduct}=="ea60", KERNELS=="1-1.2", SYMLINK+="esp32-sensores"
    
  • 重载udev规则并触发生效:
    sudo udevadm control --reload-rules && sudo udevadm trigger
    

优缺点:操作简单,但设备不能换端口使用,换端口后符号链接会失效。

方法2:修改ESP32的USB串口序列号(一劳永逸)

ESP32常用的USB转串口芯片(如CP210x)支持修改序列号,修改后设备本身具备唯一标识,不受端口影响。

步骤:

  • 下载对应芯片的编程工具(比如CP210x系列可使用Silicon Labs提供的CP210x编程工具)。
  • 单独连接一台ESP32,使用工具读取当前序列号,然后将其修改为唯一值(比如esp32-motores-001)。
  • 对另一台ESP32执行相同操作,修改为另一个唯一序列号(比如esp32-sensores-001)。
  • 修改udev规则文件,使用新的序列号进行匹配:
    SUBSYSTEM=="tty", ATTRS{idVendor}=="10c4", ATTRS{idProduct}=="ea60", ATTRS{serial}=="esp32-motores-001", SYMLINK+="esp32-motores"
    SUBSYSTEM=="tty", ATTRS{idVendor}=="10c4", ATTRS{idProduct}=="ea60", ATTRS{serial}=="esp32-sensores-001", SYMLINK+="esp32-sensores"
    
  • 重载udev规则生效:
    sudo udevadm control --reload-rules && sudo udevadm trigger
    

优缺点:设备可任意换端口,识别稳定,但需要额外工具修改设备序列号。

方法3:基于USB设备的DEVPATH绑定

和方法1类似,使用设备的完整DEVPATH属性来区分,这个路径也是对应物理端口的唯一标识:

  • 连接设备后,运行udevadm info --query=property --name=/dev/ttyUSB0,获取DEVPATH值(比如/devices/platform/scb/fd500000.pcie/pci0000:00/0000:00:00.0/0000:01:00.0/usb1/1-1/1-1.1/1-1.1:1.0/tty/ttyUSB0)。
  • 在udev规则中使用DEVPATH替代KERNELS:
    SUBSYSTEM=="tty", ATTRS{idVendor}=="10c4", ATTRS{idProduct}=="ea60", DEVPATH=="/devices/...", SYMLINK+="esp32-motores"
    

优缺点:和方法1类似,端口固定,路径较长但同样有效。

内容的提问来源于stack exchange,提问作者jairo tuñon diaz

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.05 08:43:36