当前位置: 首页 > news >正文

在Ubuntu中固定USB设备的串口号

  • 获取设备信息
lsusb
# 记录设备的Vendor ID和Product ID(例如:ID 0403:6001)

# 获取详细属性(替换X和Y为实际设备号)
udevadm info -a /dev/ttyUSBX

 结果一般如下

  • 创建udev规则文件
sudo gedit /etc/udev/rules.d/usb-serial.rules

其中usb-serial.rules文件名可以自定义。

  • 编写规则模板
# 设备1规则(示例:绑定到ttyUSB_CAMERA)
KERNEL=="ttyUSB*", SUBSYSTEMS=="usb", ATTRS{idVendor}=="0403", ATTRS{idProduct}=="6001", MODE="0666", SYMLINK+="ttyUSB_CAMERA"

# 设备2规则(示例:绑定到ttyUSB_SENSOR)
KERNEL=="ttyUSB*",  SUBSYSTEMS=="usb", ATTRS{idVendor}=="10c4", ATTRS{idProduct}=="ea60", MODE="0666",  SYMLINK+="ttyUSB_SENSOR"

SUBSYSTEMS=="usb"也是一个过滤条件。

KERNEL=="ttyUSB*"是正确的,表示无论是ttyUSB*,符合后续芯片型号的就可以被指向SYMLINK+="ttyUSB_SENSOR",但是如果给定了ttyUSB1或0,那就只有满足上述条件才能通过"ttyUSB_SENSOR"找到。

  • 生效规则
sudo udevadm control --reload-rules
sudo udevadm trigger

查看设备名称更改状况

ls -l /dev |grep ttyUSB

参考资料

Ubuntu18.04 绑定USB串口设备ttyUSBx - 知乎

ubuntu下绑定USB设备的串口名称(KERNELS硬件端口号绑定)_ubuntu绑定usb端口并修改串口名称-CSDN博客

上述是通过识别目标usb设备芯片以及相关信息来固定串口,或者也可以通过pc端固定物理串口,可参考:

 Linux系统固定USB串口设备名称 - 知乎

相关文章:

  • QML中的附加属性和附加信号处理程序
  • [特殊字符]《Curve DAO 系统学习目录》
  • Java 面向对象编程中 static 的深度剖析与实践
  • jdbc入门
  • Java 日志技术全面解析与实践教程
  • 多线程—线程安全集合类与死锁
  • 3.23周赛补题
  • C#:第一性原理理解日志(log)
  • 从零实现Json-Rpc框架】- 项目实现 - 基于Dispatcher模块的RPC框架
  • `git commit --amend` 详解:修改提交记录的正确方式
  • Content-Type设置内容类型
  • React受控表单绑定
  • wx201基于ssm+vue+uniapp的购物系统设计与实现小程序
  • J2EE框架技术 第二章 Maven环境搭建及使用
  • 向字符串添加空格
  • JavaScript函数-函数的概念
  • 列表,元组,字典,集合,之间的嵌套关系
  • LLM中的KV Cache优化技术
  • MATLAB语言的链表反转
  • cline源码分析 ---2