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

ubuntu22.04 找不到串口,串口ttyusb时断时续的问题(拔插以后能检测到,过会儿就检测不到了)

1. 问题描述

ubuntu22.04的PC,在连接USB串口的时候,有时能找到ttyUSB0,有时找不到,如下:

base) airs@airs-Precision-3630-Tower:~$ ls -l /dev/ttyUSB*
crwxrwxrwx 1 root dialout 188, 0 Aug 17 16:36 /dev/ttyUSB0
(base) airs@airs-Precision-3630-Tower:~$ ls -l /dev/ttyUSB*
crwxrwxrwx 1 root dialout 188, 0 Aug 17 16:36 /dev/ttyUSB0
(base) airs@airs-Precision-3630-Tower:~$ ls -l /dev/ttyUSB*
crwxrwxrwx 1 root dialout 188, 0 Aug 17 16:36 /dev/ttyUSB0
(base) airs@airs-Precision-3630-Tower:~$ ls -l /dev/ttyUSB*
crwxrwxrwx 1 root dialout 188, 0 Aug 17 16:36 /dev/ttyUSB0
(base) airs@airs-Precision-3630-Tower:~$ lsmod | grep usbserial
usbserial              57344  1 ftdi_sio
(base) airs@airs-Precision-3630-Tower:~$ ls -l /dev/ttyUSB*
crwxrwxrwx 1 root dialout 188, 0 Aug 17 16:36 /dev/ttyUSB0
(base) airs@airs-Precision-3630-Tower:~$ ls -l /dev/ttyUSB*
ls: 无法访问 '/dev/ttyUSB*': 没有那个文件或目录
(base) airs@airs-Precision-3630-Tower:~$ ^C
(base) airs@airs-Precision-3630-Tower:~$ ^C
(base) airs@airs-Precision-3630-Tower:~$ ^C
(base) airs@airs-Precision-3630-Tower:~$ ls -l /dev/ttyUSB*
ls: 无法访问 '/dev/ttyUSB*': 没有那个文件或目录
(base) airs@airs-Precision-3630-Tower:~$ ls -l /dev/ttyUSB*
ls: 无法访问 '/dev/ttyUSB*': 没有那个文件或目录
(base) airs@airs-Precision-3630-Tower:~$ ls -l /dev/ttyUSB*
ls: 无法访问 '/dev/ttyUSB*': 没有那个文件或目录
(base) airs@airs-Precision-3630-Tower:~$ ls -l /dev/ttyUSB*
crwxrwxrwx 1 root dialout 188, 0 Aug 17 16:37 /dev/ttyUSB0
(base) airs@airs-Precision-3630-Tower:~$ ls -l /dev/ttyUSB*
crwxrwxrwx 1 root dialout 188, 0 Aug 17 16:37 /dev/ttyUSB0
(base) airs@airs-Precision-3630-Tower:~$ ls -l /dev/ttyUSB*
crwxrwxrwx 1 root dialout 188, 0 Aug 17 16:37 /dev/ttyUSB0
(base) airs@airs-Precision-3630-Tower:~$ ls -l /dev/ttyUSB*
crwxrwxrwx 1 root dialout 188, 0 Aug 17 16:37 /dev/ttyUSB0

在重新插拔以后就能找到,过一会儿或者重新输入指令以后就找不到。芯片用的是 FTI232.lsmod | grep usbserial这个指令是能够看到有驱动的,

(base) airs@airs-Precision-3630-Tower:~$ lsmod | grep ftdi
ftdi_sio               65536  0
usbserial              57344  1 ftdi_sio

这个网站说是驱动被占用,同样的,这个帖子说可以打印相应的log信息可以看一下是否是占用:

(base) airs@airs-Precision-3630-Tower:~$ sudo dmesg|grep -i ftdi*

显示如下,和这个帖子说的问题一样,也是最后disconneted了.

[    2.055330] usb 1-8: Manufacturer: FTDI
[    2.055333] usb 1-8: SerialNumber: FTDESKD4
[    3.413041] usbcore: registered new interface driver ftdi_sio
[    3.413047] usbserial: USB Serial support registered for FTDI USB Serial Device
[    3.413065] ftdi_sio 1-8:1.0: FTDI USB Serial Device converter detected
[    3.419283] usb 1-8: FTDI USB Serial Device converter now attached to ttyUSB0
[    3.941997] usb 1-8: usbfs: interface 0 claimed by ftdi_sio while 'brltty' sets config #1
[    3.942590] ftdi_sio ttyUSB0: FTDI USB Serial Device converter now disconnected from ttyUSB0
[    3.942604] ftdi_sio 1-8:1.0: device disconnected
[   95.934601] usb 1-8: Manufacturer: FTDI
[   95.934605] usb 1-8: SerialNumber: FTDESKD4
[   95.940217] ftdi_sio 1-8:1.0: FTDI USB Serial Device converter detected
[   95.941248] usb 1-8: FTDI USB Serial Device converter now attached to ttyUSB0
[  116.880705] usb 1-8: usbfs: interface 0 claimed by ftdi_sio while 'brltty' sets config #1
[  116.882065] ftdi_sio ttyUSB0: FTDI USB Serial Device converter now disconnected from ttyUSB0
[  116.882110] ftdi_sio 1-8:1.0: device disconnected
[  140.223162] usb 1-8: Manufacturer: FTDI
[  140.223166] usb 1-8: SerialNumber: FTDESKD4
[  140.228639] ftdi_sio 1-8:1.0: FTDI USB Serial Device converter detected
[  140.229643] usb 1-8: FTDI USB Serial Device converter now attached to ttyUSB0
[  145.335555] usb 1-8: usbfs: interface 0 claimed by ftdi_sio while 'brltty' sets config #1
[  145.336732] ftdi_sio ttyUSB0: FTDI USB Serial Device converter now disconnected from ttyUSB0
[  145.336777] ftdi_sio 1-8:1.0: device disconnected
[ 2322.200683] usb 1-9: Manufacturer: FTDI
[ 2322.200687] usb 1-9: SerialNumber: FTDDF5EZ
[ 2322.205846] ftdi_sio 1-9:1.0: FTDI USB Serial Device converter detected
[ 2322.207451] usb 1-9: FTDI USB Serial Device converter now attached to ttyUSB0
[ 2344.201004] usb 1-9: usbfs: interface 0 claimed by ftdi_sio while 'brltty' sets config #1
[ 2344.202689] ftdi_sio ttyUSB0: FTDI USB Serial Device converter now disconnected from ttyUSB0
[ 2344.202732] ftdi_sio 1-9:1.0: device disconnected

找到问题以后,按照上面两个网站里的说法,执行sudo apt remove brltty把brltty删掉,发现不管怎么删,还剩一个:

(base) airs@airs-Precision-3630-Tower:~$ sudo dmesg | grep brltty
[    4.032228] usb 1-9: usbfs: interface 0 claimed by ftdi_sio while 'brltty' sets config #1

于是再次搜索usbfs: interface 0 claimed by等关键词,发现了这个方法: 通过禁用掉该服务的方式,有效解决方法,这里面详细解释了为什么ttyUSB,重新插拔以后能够检测到,过会儿就找不到了,原来是该设备连接到了 ttyUSB0 端口,突然被一个叫 brltty 的进程一脚踹掉了.按照上述网站的方法禁用掉以后,就可以稳定的检测到ttyUSB0了

(base) airs@airs-Precision-3630-Tower:~$ ls -l /dev/ttyUSB*
crwxrwxrwx 1 root dialout 188, 0 Aug 17 17:57 /dev/ttyUSB0
(base) airs@airs-Precision-3630-Tower:~$ ls -l /dev/ttyUSB*
crwxrwxrwx 1 root dialout 188, 0 Aug 17 17:57 /dev/ttyUSB0
(base) airs@airs-Precision-3630-Tower:~$ ls -l /dev/ttyUSB*
crwxrwxrwx 1 root dialout 188, 0 Aug 17 17:57 /dev/ttyUSB0
(base) airs@airs-Precision-3630-Tower:~$ ls -l /dev/ttyUSB*
crwxrwxrwx 1 root dialout 188, 0 Aug 17 17:57 /dev/ttyUSB0
(base) airs@airs-Precision-3630-Tower:~$ ls -l /dev/ttyUSB*
crwxrwxrwx 1 root dialout 188, 0 Aug 17 17:57 /dev/ttyUSB0
(base) airs@airs-Precision-3630-Tower:~$ ls -l /dev/ttyUSB*
crwxrwxrwx 1 root dialout 188, 0 Aug 17 17:57 /dev/ttyUSB0
(base) airs@airs-Precision-3630-Tower:~$ ls -l /dev/ttyUSB*
crwxrwxrwx 1 root dialout 188, 0 Aug 17 17:57 /dev/ttyUSB0
(base) airs@airs-Precision-3630-Tower:~$ ls -l /dev/ttyUSB*
crwxrwxrwx 1 root dialout 188, 0 Aug 17 17:57 /dev/ttyUSB0
(base) airs@airs-Precision-3630-Tower:~$ ls -l /dev/ttyUSB*
crwxrwxrwx 1 root dialout 188, 0 Aug 17 17:57 /dev/ttyUSB0
http://www.lryc.cn/news/131890.html

相关文章:

  • Pinia基础教程
  • 【NOIP】标题统计
  • BOXTRADE-天启量化分析平台 系统功能预览
  • 解决Kibana(OpenSearch)某些字段无法搜索问题
  • 代码随想录训练营day15|102.层序遍历 226.翻转二叉树 101.对称二叉树
  • Nginx 配置https以及wss
  • Log4net在.Net Winform项目中的使用
  • 从零到一制作扫雷游戏——C语言
  • Python 数据挖掘与机器学习教程
  • 排序小白必读:掌握插入排序的基本原理
  • html常见兼容性问题
  • Docker实战:docker compose 搭建Redis
  • Debian11 Crontab
  • css 文字排版-平铺
  • 把握潮流:服装定制小程序的发展与趋势
  • Go 安装配置
  • 镜像底层原理详解和基于Docker file创建镜像
  • k8s扩缩容与滚动更新
  • 4.小程序的运行机制
  • 基于 Vercel TiDB Serverless 的 chatbot
  • Android 多渠道打包及VasDolly使用
  • LeetCode 42题:接雨水
  • spring boot 提示:程序包不存在,解决方法总结
  • docker项目实战
  • 银行客户关系管理系统springboot财务金融进销存java jsp源代码
  • Maven 插件 maven-antrun-plugin 执行 ant 脚本
  • 【仿写框架之仿写Tomact】四、封装HttpRequest对象(属性映射http请求报文)、HttpResponse对象(属性映射http响应报文)
  • LeetCode 41题:缺失的第一个正数
  • 学单片机有什么用?
  • Go 1.21新增的 slices 包详解(二)