我想监视(嗅探)由FTDI USB串行转换器创建的/ dev / ttyUSB0的流量.我在Windows中编写了自己的应用程序,现在我尝试将其移植到linux并使用/ dev / tty / USB0.我想调试实际发生的通信.

软件strace对我来说不是一个选项,因为它只向ioctl显示系统调用.

使用Windows软件“Free Serial Port Monitor”通过嗅探COM1来实现.

输出dmesg:

[16975.000221] usb 7-1: new full-speed USB device number 5 using uhci_hcd

[16975.193543] usb 7-1: New USB device found, idVendor=0403, idProduct=6001

[16975.193548] usb 7-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3

[16975.193552] usb 7-1: Product: FT232R USB UART

[16975.193555] usb 7-1: Manufacturer: FTDI

[16975.193558] usb 7-1: SerialNumber: A400BJII

[16975.200550] ftdi_sio 7-1:1.0: FTDI USB Serial Device converter detected

[16975.200599] usb 7-1: Detected FT232RL

[16975.202604] usb 7-1: FTDI USB Serial Device converter now attached to ttyUSB0

但是我试过moserial做这个和命令“echo foobar> / dev / ttyUSB0”验证,如果它工作.我的软件也没有为moserial创建输出.

更新:

找到了如何直接监控usb,现在我需要将USB数据包转换为RS-232(FTDI基本上做什么).

>设置usbmon

modprobe usbmon

1.1对于2.6.23之前的Linux内核,您还需要运行此命令

modprobe -t debugfs none / sys / kernel / debug

> usbmon0将监控从所有usbmon0到usbmonX的任何流量

2.1.找到正确的USB设备

cat / sys / kernel / debug / usb / devices | grep FTDI -A 7 -B 4

T: Bus=07 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 12 Spd=12 MxCh= 0

D: Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1

P: Vendor=0403 ProdID=6001 Rev= 6.00

S: Manufacturer=FTDI

S: Product=FT232R USB UART

S: SerialNumber=A400BJII

C:* #Ifs= 1 Cfg#= 1 Atr=a0 MxPwr= 90mA

I:* If#= 0 Alt= 0 #EPs= 2 Cls=ff(vend.) Sub=ff Prot=ff Driver=ftdi_sio

E: Ad=81(I) Atr=02(Bulk) MxPS= 64 Ivl=0ms

E: Ad=02(O) Atr=02(Bulk) MxPS= 64 Ivl=0ms

2.2.注意端口的总线编号(总线= 07),因此监控的usbmon将是usbmon7

2.3.使用wireshark捕获usbmon7接口或使用以下命令将输出输出到控制台(stdout)…用bus-id替换数字

cat / sys / kernel / debug / usb / usbmon / 7u

目前支持两种格式:原始格式或“1t”格式和“1u”格式.内核2.6.21中不推荐使用’1t’格式. ‘1u’格式添加了一些字段,例如ISO帧描述符,间隔等.它产生稍长的行,但是否则是’1t’格式的完美超集.

>如何将USB捕获转换为RS-232捕获?

我不知道…… TODO

解决方法:

有了你的提示,我设法解决了我的问题,所以这是我的最后一点提示:

>使用Wireshark,打开usbmon0并使用此过滤器

usb.capdata or at

发出两次命令echo asd> / dev / ttyUSB0在Wireshark中生成以下结果

您可以使用tshark从捕获文件中提取整个剩余捕获数据:

tshark -r capture.pcapng -T fields -e usb.capdata

标签:linux,monitoring,usb,serial-port

来源: https://codeday.me/bug/20190711/1431875.html

linux ftdi 虚拟,linux – 由FTDI USB串行转换器创建的监控(嗅探)/ dev / ttyUSB0相关推荐

  1. linux udev 检测u盘的插入和拔出,在Linux中C检测插入/拔出USB串行设备

    我需要检测何时在我的嵌入式系统上插入或拔出USB串行设备,并知道与之相关的tty是什么. 我的系统运行在2.6 Linux内核上. 由于我没有对udev规则的写访问权限,现在我正在尝试从文件系统获取此 ...

  2. 如何用usb电缆连接到计算机,如何使用USB串行电缆将文件从计算机传输到树莓派...

    第1步:为Raspberry Pi准备SD卡 完成Adafruit教程中演示的步骤,但要进行以下修改: 选择Raspbian发行版 跳过测试和配置 执行不要从SD卡读卡器/写入器中删除SD卡 不要不要 ...

  3. 《树莓派实战秘籍》——1.16 技巧16添加USB串行控制台

    本节书摘来异步社区<树莓派实战秘籍>一书中的第1章,第1.16节,作者:[美]Ruth Suehle ,Tom Callaway,更多章节内容可以访问云栖社区"异步社区" ...

  4. linux ftdi 虚拟,linux ftdi 驱动

    收到一字节数据后,SIGIO应该立即启动. 这是在带驱动程序的Linux上测试的最小示例ftdi_sio: #include #include #include #include #include # ...

  5. linux ftdi 虚拟,linux ftdi驱动

    收到一字节数据后,SIGIO应该立即启动. 这是在带驱动程序的Linux上测试的最小示例ftdi_sio: #include #include #include #include #include # ...

  6. linux+手机+gps,Linux环境下利用GPS+蓝牙实现移动定位

    搞了一个下午终于把这个弄清楚了:查了下网络资料基本也没什么相关的,这里就自己写个和大家分享下吧.虽然在XP系统下实现起 搞了一个下午终于把这个弄清楚了:查了下网络资料基本也没什么相关的,这里就自己写个 ...

  7. PL2303GC USB到串行桥控制器 Prolific旺玖

    PL2303GC是一种低成本.高性能的USB串行桥控制器.PL2303GC为将RS 232类全双工异步串行设备连接到任何USB主机提供了一种方便的小因素解决方案.产品提供了高度兼容的驱动程序,可以在大 ...

  8. 4位快速加法器和4位串行加法器相比_使用混合信号示波器调试串行总线系统

    本应用指南面向的读者是数字系统设计师,他们在研发过程中会用到模拟和数字元器件,包括采用串行总线的微控制器和 DSP 系统.本文讨论调试串行总线设计所面临的挑战和新的解决方案,这些串行总线包括控制器局域 ...

  9. 研华工控机linux改win7,嵌入式工控机研华工控机用u盘装系统如何设置bios?在虚拟机中的Linux系统中咋挂u盘 我的虚拟机上都没有USB 显示5...

    研华工控机用u盘装系统如何设置bios?在虚拟机中的Linux系统中咋挂u盘 我的虚拟机上都没有USB 显示5 在上一篇文章中,小编为您详细介绍了关于<有一个研祥工控机 旧的 想拆里面的视频采集 ...

  10. 怎么下载linux sio镜像,在linux下如何安裝ftdi_sio USB轉串口驅動

    各位好,本人剛剛接觸Linux,現在要在Ubuntu下使用一個USB轉串口線,但是系統上沒有驅動,需要自己安裝,現在不知道應該如何安裝,想問一下應該如何安裝才對. 我之前試着make了一下,但是提示有 ...

最新文章

  1. grep 正则表达式及选项以及注意
  2. 百度AI生态方法论升级,AI开放平台深入7大细分领域
  3. angular中的class写三元表达式 和 清空表单校验
  4. 栈之顺序结构和链式结构
  5. 颠沛流离的Arcsight,辉煌不再
  6. 【汇编语言-3】 代码、数据、堆栈在同一个段
  7. console application_灵活使用 console 让 js 调试更简单
  8. C小项目 —— 学生选课系统
  9. HCIE-Security Day27:IPSec:实验(二)两个网关之间通过手工方式创建IPSec PN隧道
  10. Android 屏幕旋转的多种状态
  11. 一个用python写的从数字高程格式文件(DEM)中提取水系的模块
  12. 【金融手册】什么是本票、汇票、支票、银行承兑汇票、系统性、非系统性风险、巴塞尔协议、QDII...
  13. EasyUI 中 Combobox里的onChange和onSelect事件的区别
  14. c语言常量10进制,C语言常量
  15. 别克汽车常见疑难故障1000实例
  16. 做html5抽奖程序xu,用jQuery实现抽奖程序
  17. 单缓冲、双缓冲、循环缓冲
  18. 每日新闻丨美商务部:已允许部分美企向华为出售零部件;中国四家手机厂商瓜分印尼市场...
  19. 计算机网络安全在电子商务中的应用 魏娟,[网络安全最新技术论文]网络安全技术探究...
  20. 软文营销评论区怎样营造好的氛围?

热门文章

  1. Android第十七课 Jni string空串跨模块使用崩溃注意事项
  2. [译] 你的站点如你所想的移动友好吗?
  3. Docker技术入门与实战(第2版)2.5 本章小结
  4. [转]Java中的随机数生成器:Random,ThreadLocalRandom,SecureRandom
  5. GIS:揭开你神秘的面纱
  6. tomcat的comet事件解释
  7. Python英语单词查询
  8. 利用oracle long类型字段,插入大文本
  9. Linux中权威域名服务器,请在(7)~(9)处填写恰当的内容。在Linux系统中配置域名服务器,该服务..._考试资料网...
  10. 需要重新启动php,win10电脑遇到问题要重新启动怎么回事