蓝牙----wireshark抓包查看蓝牙通信过程

一.完整过程

在这里插入图片描述
在这里插入图片描述

二.过程详细分析

1.广播数据----可连接的无定向广播包:ADV_IND
2.广播数据----主动扫描:扫描请求(SCAN_REQ) 扫描相应(SCAN_RSP)在这里插入图片描述3.被动扫描数据发送连接请求
在这里插入图片描述
4.蓝牙配对(没有用到)
在这里插入图片描述
5.更新MTU与蓝牙有效数据长度

1.更新MTU为251=4字节L2CAP头部+247字节ATT数据
2.LL_LENGTH_REQ和LL_LENGTH_RSP实现payload长度修改,默认为27字节,最大251字节;

0x02 Exchange MTU Request 交换MTU
0x03 Exchange MTU Response 交换MTU
对于MTU的更新操作为
客户端设备向服务端设备发送交换MTU请求,提供客户端设备的MTU值。
服务端设备获知客户端的MTU值,并返回自己的MTU值。
两端设备都将设置较小的MTU值作为新的MTU值。
如果两端设备没有交换MTU,则使用默认的MTU值处理属性事务。

在这里插入图片描述
6.GATT客户端(主机)向服务器(从机)获取GATT服务

在这里插入图片描述
客户端Find By Type Value Request:查找属性句柄
在这里插入图片描述
服务器Find By Type Value Response:按类型值查找应答 在这里插入图片描述
7.GATT客户端(主机)向服务器(从机)获取Characteristic特征
在这里插入图片描述

客户端:Read By Type Request
在这里插入图片描述
服务器Read By Type Response

在这里插入图片描述
在GATT层有过介绍
特征值1描述符句柄0x1f,特征值1句柄0x20;特征值1: FFF1
特征值2描述符句柄0x23,特征值1句柄0x24; 特征值2: FFF2

8.通过向特征值特征配置描述符写0x0001设置为通知(指示0x0002)
在这里插入图片描述
9.连接参数更新
在这里插入图片描述
对比修改连接间隔前后

连接间隔20–25ms连接间隔20–25ms
在这里插入图片描述在这里插入图片描述

10.进行数据传输
在这里插入图片描述
数据包的格式如下
在这里插入图片描述

  • 5
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值