首页
/ 推荐开源项目:RP2040驱动的Usb Sniffer Lite - 简易USB嗅探器

推荐开源项目:RP2040驱动的Usb Sniffer Lite - 简易USB嗅探器

2024-05-30 08:04:02作者:戚魁泉Nursing

该项目是一个基于Raspberry Pi RP2040微控制器的简单USB嗅探器,支持Low Speed和Full Speed两种模式。它巧妙地表现为一个虚拟COM端口,这意味着在任何操作系统上使用时无需额外软件。

1、项目介绍

Usb Sniffer Lite提供了一种直观的方式来监控USB设备间的通信,通过捕获并记录数据传输过程,进而帮助开发者调试和理解USB协议。项目附带了示例捕获日志,如枚举过程和常规数据传输,方便用户理解和学习。

2、项目技术分析

这个嗅探器的工作原理是将D+和D-信号直接连接到MCU引脚。固件编译后以UF2文件形式提供,只需将其复制到RP2040的BootROM模式下即可。请注意,固件的CRC值需要更新以便被RP2040识别,这可以通过提供的工具完成。

硬件连接部分,建议将USB电缆与RP2040板子上的GPIO针脚进行并接。项目还提供了一个自定义的打破板方案,让硬件连接更整洁,详细信息可在doc/Hardware.md中查看。

3、应用场景

Usb Sniffer Lite适用于USB设备开发、测试和故障排除。它可以帮助您:

  • 验证USB设备的枚举过程是否正确。
  • 检查数据传输速度和流量,尤其是在低速和全速模式下。
  • 定位导致通信问题的具体USB帧或请求。

4、项目特点

  • 兼容性广泛:作为虚拟COM端口工作,可无缝对接所有操作系统。
  • 触发机制:内置触发功能,允许在特定事件发生时暂停捕获,便于关注关键数据。
  • 显示设置灵活:多种显示选项,如数据长度限制、时间格式等,满足不同需求。
  • 便携式硬件设计:现已有专用硬件版本,集成FE8.1 USB集线器,简化布线并提高效率。

为了更好地利用这个工具,您可以尝试调整不同的设置来观察USB交互的细节,或结合在线解析器解码标准描述符和请求。不论你是USB协议的新手还是经验丰富的开发者,Usb Sniffer Lite都能成为你进行USB调试的强大助手。

现在就去探索这个开源项目,提升你的USB设备开发体验吧!

[GitHub项目链接](https://github.com/ataradov/UsbSnifferLite)
登录后查看全文
热门项目推荐
相关项目推荐

项目优选

收起
docsdocs
暂无描述
Markdown
832
5.51 K
kernelkernel
openEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。
C
496
521
ops-transformerops-transformer
本项目是CANN提供的transformer类大模型算子库,实现网络在NPU上加速计算。
C++
980
2.31 K
pytorchpytorch
作为 Ascend for PyTorch 社区的核心组件,TorchNPU 是昇腾专为 PyTorch 打造的深度学习适配插件,使 PyTorch 框架能够直接调用昇腾 NPU,为开发者提供昇腾 AI 处理器的超强算力。
Python
807
1.16 K
ops-nnops-nn
本项目是CANN提供的神经网络类计算算子库,实现网络在NPU上加速计算。
C++
796
1.6 K
kernelkernel
deepin linux kernel
C
32
16
AscendNPU-IRAscendNPU-IR
AscendNPU-IR是基于MLIR(Multi-Level Intermediate Representation)构建的,面向昇腾亲和算子编译时使用的中间表示,提供昇腾完备表达能力,通过编译优化提升昇腾AI处理器计算效率,支持通过生态框架使能昇腾AI处理器与深度调优
C++
486
314
jiuwenswarmjiuwenswarm
JiuwenSwarm 是一款基于openJiuwen开发的智能AI Agent,它能够将大语言模型的强大能力,通过你日常使用的各类通讯应用,直接延伸至你的指尖。
Python
3.03 K
782
ops-mathops-math
本项目是CANN提供的数学类基础计算算子库,实现网络在NPU上加速计算。
C++
1.21 K
1.26 K
cann-learning-hubcann-learning-hub
CANN 学习中心仓,支持在线互动运行、边学边练,提供教程、示例与优化方案,一站式助力昇腾开发者快速上手。
Jupyter Notebook
665
304