【Bluetooth蓝牙开发】三、蓝牙调试工具【集合汇总】

3、蓝牙调试工具

💖 作者简介:大家好,我是董哥,嵌入式领域新星创作者。😜
🧿 创作目标:认真对待每一篇文章,让每一位读者读有所得!🥇
🏰 个人主页:董哥聊技术

3.1、hciconfig

工具介绍hciconfigHCI 设备配置工具

命令格式hciconfighciconfig [-a] hciX [command ...]

详细命令如下

只介绍几种常用命令

  • 帮助信息hciconfig -h

image-20220525165518687

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

image-20220525170601045

  • 打开/关闭/重置hci设备hciconfig hci0 up/down/reset
  • 认证打开/关闭hciconfig hci0 auth/noauth,直接体现在进行蓝牙连接时,是否输入连接PIN密码,用于PIN配对
  • 查看/改变蓝牙主从状态hciconfig hci0 lmhciconfig hci0 lm slave
  • 查看/设置蓝牙名称hciconfig hci0 namehciconfig hci0 name Donge
  • 开启/关闭广播hciconfig hci0 leadv/ noleadv
  • 查看支持的链路层状态hciconfig hci0 lestates

image-20220525174046969

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

 

3.2、hcitool

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

命令格式hcitool [options] <command> [command parameters]

详细命令如下

只介绍几种常用命令

  • 帮助信息hcitool --help

image-20220525174247787

  • 查看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命令,我们先看下帮助信息

image-20220526103856716

  • 创建/删除蓝牙连接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.3、hcidump

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

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

详细命令如下

只介绍几种常用命令

  • 帮助信息hcidump -h

image-20220526105707248

  • 仿真设备选定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 &,以AsiccHex打印,并且添加时间戳,转存到bt_debug.cfa文件中

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

 

3.4、hciattach

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

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

详细命令如下

只介绍几种常用命令

  • 帮助信息hciattach

image-20220526154957719

  • -n:不脱离控制终端

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

  • -t:设置超时时间

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

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

  • any:不指定HCI_UART 接口

  • ericsson:爱立信基础模块

  • -sspeed串口波特率设置

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

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

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

 

3.5、btmon

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

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

详细命令如下

只介绍几种常用命令

  • 帮助信息btmon -h

image-20220526112054555

  • -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文件,方便文本查看:)

 

3.6、bluetoothd

工具介绍bluetoothd,调试工具

命令格式bluetoothd [OPTION?]

详细命令如下

只介绍几种常用命令

  • 帮助信息bluetoothd -h

image-20220526150658436

  • -d:使能DEBUG调试
  • -C:提供过时的命令
  • -n:运行程序时,前台打印LOG信息

示例bluetoothd -C -n &

 

3.7、bluetoothctl

工具介绍bluetoothctl,调试工具

命令格式bluetoothctl [command]

详细命令如下

只介绍几种常用命令

  • 帮助信息bluetoothd help

image-20220526152843644

  • bluetoothctl:进入命令行模式
  • list:查看控制器信息
  • show:查看详细控制器信息
  • paired-devices:显示配对的设备
  • power on:上电控制器
  • advertise on:开启广播
  • scan on/off:开启/关闭扫描
  • version:版本信息
  • exit/quit:退出

 

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

另外,如果有同学想了解Bluetooth协议的,资料全盘奉上【Core v4.1 v5.0.pdf

Delphi是一种强大的编程语言和集成开发环境(IDE),它可用于开发各种类型的应用程序,包括Windows、移动设备和嵌入式系统。在Delphi中进行蓝牙调试需要使用一些特定的库和组件来实现。 首先,您需要使用Delphi的系统蓝牙库来与蓝牙设备进行通信。这些库包括BluetoothBluetoothLE单元,它们提供了与蓝牙设备进行配对、连接和传输数据的功能。您可以使用这些库来搜索附近的蓝牙设备,建立连接并发送/接收数据。 在进行蓝牙调试时,您可能会遇到一些常见问题,例如连接失败、数据传输错误或设备不可用等。为了解决这些问题,您可以使用Delphi的调试工具和技术。 首先,您应该确保蓝牙设备和计算机之间的连接是正常的。您可以检查蓝牙设备的配对状态、连接状态和信号强度等信息。如果发现连接问题,您可以尝试重新启动设备或计算机,重新配对设备,并确保设备处于适当的范围内。 其次,您应该检查您的代码逻辑和蓝牙通信协议。确保您正确地使用了Delphi的蓝牙库函数和事件,并按照蓝牙设备的要求进行数据传输。您还可以使用调试输出和断点来跟踪代码执行情况,并查看是否存在错误或异常。 在调试过程中,您还可以使用一些辅助工具和设备来帮助调试。例如,您可以使用蓝牙调试器来监视和分析蓝牙数据包的传输情况。您还可以使用模拟器或虚拟设备来模拟蓝牙设备和环境,以便更方便地进行调试。 总之,Delphi提供了丰富的功能和工具来进行蓝牙调试。通过合理使用Delphi的蓝牙库、调试工具和技巧,您可以轻松解决蓝牙调试中遇到的各种问题,并成功开发出功能强大的蓝牙应用程序。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值