Bus Hound 的使用方法
背景:
最近在研究USB相关协议,需要对USB数据进行抓取分析,Bus Hound是个非常赞的工具,在此将其使用方法记录下来,以备下次快速上手使用。
正文:
主界面如下:

首先关注菜单栏三个选项:
Capture: 数据抓取菜单选项; Setting:设备设置菜单选项; Devices:设备选取菜单选项。
第一步:点击“Devices”菜单选项选取设备,(选取之后,就可以监控该设备了。)

根据VID/PID来单击选取要操作的设备对象,最下方 “Properties” 即所要操作的USB设备的详细信息:人机接口(HID)设备,共配置有3个端点,端点0为控制端点,大小为8bytes;端点1分别为中断OUT/IN端点,大小为64bytes。
点击SendCommands即向USB设备发送命令,具体如何发送参见第二步。
第二步,点击“Devices”菜单页面下的“SendCommands”来向USB设备发送命令,

选取USB界面,要发送数据即选择OUT端点,选择发送长度(注意!不能超过端点设定大小!),填写发送数据,(此处当初也让我非常郁闷,根本没有方框填写数据好吧!!!?无意中将鼠标点击到最下面的红框内,才发现最下面框中的部分既是数据输入部分,直接输入数值就可以。)最后点击 “RUN” 完成发送。
为了DEBUG,在下位机做了个Loopback,即将上位机发送的数据发回给上位机,如何抓取USB数据参见第四步。
第三步,点击“Setting”菜单做一些必要的设置,

按照自己的需求设置相应的设置,在此我也只是设置了抓取的最大包记录显示大小为64bytes。
第四步,点击“Capture”菜单选项,观察USB上传的数据。

即可观察到,OUT下发USB设备数据与USB设备上发的IN数据与预期相符,完全一致。
更新一下最新的发现:关于如何用BUS Hound查看USB设备的端点号。
看上图的红框内,29.1这个“.1”我原来一直忽视它,直到最近才发现,这个“.1”代表USB设备的端点号。“.1”代表USB设备端点“1”发给主机或者主机发给端点“1”的信息,其他的端点号同理。
2016-12-21
记录地点: 深圳WZ
记录时间: 2016-04-09
Bus Hound 的使用方法的更多相关文章
- USB抓包工具Bus Hound
/********************************************************************** * USB抓包工具Bus Hound * 说明: * 之 ...
- linux下类似Bus Hound的工具
0推荐在linux大家有时候需要调试usb接口的串口消息,但是没有类似于windows下的bus hound工具,感觉比较痛苦,其实linux内核提供了usbmon这个工具,可以收集串口信息. 1.准 ...
- Bus Hound抓包分析,基于HID设备(原创)
Bus Hound数据分析: CTL:表示8字节的USB控制传输的Setup包----------------------------重点分析 控制传输setup(token包)和对应数据包(DATA ...
- 试用bus hound来分析STM32CubeMX来生成USB_HID_Mouse工程
Bus Hound (x64). Complements of www.perisoft.net STM32_HID_mouse Device - Device ID (followed by the ...
- 分享三个USB抓包软件---Bus Hound,USBlyzer 和-USBTrace(转)
源:分享三个USB抓包软件---Bus Hound,USBlyzer 和-USBTrace Bus Hound官方下载地址:http://perisoft.net/bushound/Bus Hound ...
- 分享三个USB抓包软件---Bus Hound,USBlyzer 和-USBTrace【转】
转自:http://bbs.armfly.com/read.php?tid=15377 Bus Hound官方下载地址:http://perisoft.net/bushound/ Bus Hound ...
- 不错的usb分析工具!!!---用bus hound分析usb的枚举过程【转】
转自:http://blog.chinaunix.net/uid-25909619-id-3335199.html 说明:由于分析时是在记事本上分析的,贴到这里出现了格式有点乱,看时请复制到记事本中, ...
- 分享三个USB抓包软件---Bus Hound,USBlyzer 和-USBTrace
Bus Hound官方下载地址:http://perisoft.net/bushound/Bus Hound 简易使用手册:bus_hound5.0中文使用说明.pdf (246 K) 下载次数:9 ...
- 串口数据监视-Bus Hound
Bus Hound使用说明 一.打开该工具,会看到最上面的六个图标:1.Capture(捕捉按钮):按下它选择捕捉数据界面2.Save(保存按钮):按下它选择保存数据界面3.Setting(设置按钮) ...
随机推荐
- HDU 5908 Abelian Period(暴力+想法题)
传送门 Description Let S be a number string, and occ(S,x) means the times that number x occurs in S. i. ...
- 演示get、post请求如何算sn,算得sn如何使用
import java.io.ByteArrayOutputStream; import java.io.InputStream; import java.io.UnsupportedEncoding ...
- C++ 动态数组实例
一维动态数组的实例: #include <iostream> using namespace std; int main() { int *arr; int n; cout<< ...
- Mysql学习笔记(八)由触发器回顾外键约束中的级联选项
近些天都没有写博客.在学习mysql的知识,通过学习和练习,也熟悉了mysql的函数.触发器.视图和存储过程.并且在实际的开发过程中也应用了一小部分.效果还是十分理想的. 今天晚上在学习触发器模仿in ...
- POJ 2752Seek the Name, Seek the Fame(next数组妙用 + 既是前缀也是后缀)
题目链接 题意:求一个字符串中 前缀 和 后缀 相同的长度 分析: 对于一个字符串他自己的长度肯定是可以的.然后如果满足 前缀 和 后缀相等,那个前缀 最后一个字符 一定 和 该字符串最后一个字符相等 ...
- FFT质数打表程序
#include<bits/stdc++.h> using namespace std; typedef long long ll; void sol(ll x){ int y=0; fo ...
- WPF:父窗口与子窗口的层次关系
关于子窗体的层级关系总结一下哈,希望能对大家有些帮助 假设有这样两个窗体:RootWindow,SubWindow,在RootWindow中引发某事件而显示SubWindow 1,如果弹出窗体(比如S ...
- Laravel教程 七:表单验证 Validation
Laravel教程 七:表单验证 Validation 此文章为原创文章,未经同意,禁止转载. Laravel Form 终于要更新这个Laravel系列教程的第七篇了,期间去写了一点其他的东西. 就 ...
- oc必须知道的知识点
id数据类型 1.通用的指针类型 2.没有*号 3.使用id类型时,不能给对象的属性或成员变量进行赋值 4.可以对其发送任何(存在的)消息 import与@class的区别 1.import会包含 ...
- JSP 核心标签库
1 JSTL标签库介绍 JSTL标签库的使用是为弥补html标签的不足,规范自定义标签的使用而诞生的.使用JSLT标签的目的就是不希望在jsp页面中出现java逻辑代码 2 JSTL标签库分类 核心标 ...