当前位置:首页 > > 嵌入式艺术
[导读]该部分主要分享一下常用的蓝牙调试工具,方便后续蓝牙抓包及分析。



BLE

该部分主要分享一下常用的蓝牙调试工具,方便后续蓝牙抓包及分析。



  • 3.1、hciconfig

  • 3.2、hcitool

  • 3.3、hcidump

  • 3.4、hciattach

  • 3.5、btmon

  • 3.6、bluetoothd

  • 3.7、bluetoothctl


1hciconfig

工具介绍:hciconfig,HCI设备配置工具

命令格式:hciconfig、hciconfig [-a] hciX [command ...]

详细命令如下

只介绍几种常用命令

  • 帮助信息:hciconfig -h

  • 查看设备详细信息:hciconfig -a hci0或者hciconfig

  • 打开/关闭/重置hci设备:hciconfig hci0 up/down/reset

  • 认证打开/关闭:hciconfig hci0 auth/noauth,直接体现在进行蓝牙连接时,是否输入连接PIN密码,用于PIN配对

  • 查看/改变蓝牙主从状态:hciconfig hci0 lm、hciconfig hci0 lm slave

  • 查看/设置蓝牙名称:hciconfig hci0 name、hciconfig hci0 name Donge

  • 开启/关闭广播:hciconfig hci0 leadv/ noleadv

  • 查看支持的链路层状态:hciconfig hci0 lestates

hciconfig详细介绍参考:https://blog.51cto.com/dongyulong/442289


2hcitool

工具介绍:hcitool,HCI 设备管理工具

命令格式:hcitool [options][command parameters]

详细命令如下

只介绍几种常用命令

  • 帮助信息:hcitool --help

  • 查看HCI设备信息:hcitool dev

  • 发现周围蓝牙设备:hcitool -i hci0 inq

  • 蓝牙扫描:hcitool -i hci0 inq

  • 查看探查到的蓝牙信息:hcitool -i hci0 name 88:A9:B7:E6:F1:8F

  • 发送CMD蓝牙命令:hcitool cmd --help

这个命令非常好用,它允许我们不用写代码就可以发送自己想发的任何HCI命令,我们先看下帮助信息

  • 创建/删除蓝牙连接:hcitool -i hci0 cc/dc --ptype=dm1,dh3,dh5 01:02:03:04:05:06

  • 扫描附近BLE蓝牙设备:hcitool -i hci0 lescan

  • 连接/断开BLE设备:hcitool -i hci0 lecc/ledc 12:34:56:C2:9C:C7

参考连接:https://blog.csdn.net/u010764600/article/details/119684001


3
hcidump

工具介绍:hcidump,HCI sniffer,蓝牙包的分析工具,hcidump读取发送和接受蓝牙设备的原始hci数据,并按照人可以识别的命令、事件、数据格式打印到屏幕上,转储信息还可以保存到一个当地文件中,从而保证转储文件在后续进行解析。

命令格式:hcidump [OPTION...] [filter]

详细命令如下

只介绍几种常用命令

  • 帮助信息:hcidump -h

  • 仿真设备选定:hcidump -i hci0

  • 导出文件:hcidump -i hci0 -w bt_debug.cfa

  • 选定格式:hcidump -i hci0 -X

  • 显示时间:hcidump -i hci0 -t

  • 常用命令:hcidump -i hci0 -Xt -w bt_debug.cfa &,以Asicc、Hex打印,并且添加时间戳,转存到bt_debug.cfa文件中

该命令,可以将HCI传输的数据包记录到文件内,通过Windows的ViewCfa应用可以详细查看每个包的数据。


4hciattach

工具介绍:hciattach,该工具通过UART HCI将串行设备连接到BlueZ协议栈,作为HCI传数接口。

命令格式:hciattach [-n] [-p] [-t timeout] tty type| id speed flow bdaddr

详细命令如下

只介绍几种常用命令

  • 帮助信息:hciattach

  • -n:不脱离控制终端

  • -p:当脱离控制终端时,打印PID信息

  • -t:设置超时时间

  • tty:指定绑定的串口设备,/dev可以省略掉

  • type|id:蓝牙设备的类型或id,例如vendor或者设备指定的标识

  • any:不指定HCI_UART接口

  • ericsson:爱立信基础模块

  • -s:speed串口波特率设置

  • flow:表示硬件流控制;noflow:表示不进行流控制

  • bdaddr:蓝牙设备地址,如果指定了该参数,则地址将用于初始化设备。否则,将使用默认地址。

使用案例:rtk_hciattach -n -s 115200 ttyS0 rtk_h5 &


5btmon

工具介绍:btmon,该工具用于监控蓝牙数据

命令格式:btmon,该工具用于监控蓝牙数据`

详细命令如下

只介绍几种常用命令

  • 帮助信息:btmon -h

  • -w:将数据写入文件xxx.log中,==该文件最好为未存在的文件,否则可能会有问题==

  • -T:显示时间和日期

  • -s:开始监控的socket

  • -r:-w写入的文件,仅支持btmon -r xxx.log读取

  • -i:监控的控制设备,一般为hci0

  • 常用命令:btmon -i hci0 -w btmon_debug.log &、btmon -r btmon_debug.log

上面的命令,通过-w写入文件,-r读出文件,只能该工具读出

扩展:btmon -r btmon_debug.log > 1.txt将读出的转为txt文件,方便文本查看:)


6bluetoothd

工具介绍:bluetoothd,调试工具

命令格式:bluetoothd [OPTION?]

详细命令如下

只介绍几种常用命令

  • 帮助信息:bluetoothd -h

  • -d:使能DEBUG调试

  • -C:提供过时的命令

  • -n:运行程序时,前台打印LOG信息

示例:bluetoothd -C -n &


7bluetoothctl

工具介绍:bluetoothctl,调试工具

命令格式:bluetoothctl [command]

详细命令如下

只介绍几种常用命令

  • 帮助信息:bluetoothd help

  • bluetoothctl:进入命令行模式

  • list:查看控制器信息

  • show:查看详细控制器信息

  • paired-devices:显示配对的设备

  • power on:上电控制器

  • advertise on:开启广播

  • scan on/off:开启/关闭扫描

  • version:版本信息

  • exit/quit:退出

至此,上面是Bluetooth调试所需要的一些工具的简单介绍,大家可以进行尝试!

另外,如果有同学想了解Bluetooth协议的,可以在【菜单栏】下载Core_v4.1.pdf和Core_v5.0.pdf


嵌入式艺术
本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: 驱动电源

在工业自动化蓬勃发展的当下,工业电机作为核心动力设备,其驱动电源的性能直接关系到整个系统的稳定性和可靠性。其中,反电动势抑制与过流保护是驱动电源设计中至关重要的两个环节,集成化方案的设计成为提升电机驱动性能的关键。

关键字: 工业电机 驱动电源

LED 驱动电源作为 LED 照明系统的 “心脏”,其稳定性直接决定了整个照明设备的使用寿命。然而,在实际应用中,LED 驱动电源易损坏的问题却十分常见,不仅增加了维护成本,还影响了用户体验。要解决这一问题,需从设计、生...

关键字: 驱动电源 照明系统 散热

根据LED驱动电源的公式,电感内电流波动大小和电感值成反比,输出纹波和输出电容值成反比。所以加大电感值和输出电容值可以减小纹波。

关键字: LED 设计 驱动电源

电动汽车(EV)作为新能源汽车的重要代表,正逐渐成为全球汽车产业的重要发展方向。电动汽车的核心技术之一是电机驱动控制系统,而绝缘栅双极型晶体管(IGBT)作为电机驱动系统中的关键元件,其性能直接影响到电动汽车的动力性能和...

关键字: 电动汽车 新能源 驱动电源

在现代城市建设中,街道及停车场照明作为基础设施的重要组成部分,其质量和效率直接关系到城市的公共安全、居民生活质量和能源利用效率。随着科技的进步,高亮度白光发光二极管(LED)因其独特的优势逐渐取代传统光源,成为大功率区域...

关键字: 发光二极管 驱动电源 LED

LED通用照明设计工程师会遇到许多挑战,如功率密度、功率因数校正(PFC)、空间受限和可靠性等。

关键字: LED 驱动电源 功率因数校正

在LED照明技术日益普及的今天,LED驱动电源的电磁干扰(EMI)问题成为了一个不可忽视的挑战。电磁干扰不仅会影响LED灯具的正常工作,还可能对周围电子设备造成不利影响,甚至引发系统故障。因此,采取有效的硬件措施来解决L...

关键字: LED照明技术 电磁干扰 驱动电源

开关电源具有效率高的特性,而且开关电源的变压器体积比串联稳压型电源的要小得多,电源电路比较整洁,整机重量也有所下降,所以,现在的LED驱动电源

关键字: LED 驱动电源 开关电源

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: LED 隧道灯 驱动电源
关闭