关注"无线技术联盟", 提供有价值的市场信息和最新的技术分析
从空中截获BLE数据包看蓝牙5协议流程前两篇已经讲过蓝牙5的广播与连接数据包分析,但所用的工具为BT4.x抓包工具,本文采用Ellisys抓包工具分析蓝牙5的广播,连接,更新PHY几个关键步骤,以图文为主,详细SPEC流程请参考从空中截获BLE数据包看蓝牙5协议广播部分。需要原始完整抓包数据的同学,可以后台和我取得联系。
使用的抓包工具:Ellisys
Ellisys的界面如下所示,可以分为三个部分, 左上为40个信道监视图,左下为某一个或者多个设备(MAC地址)的交互数据,我们只谈只谈BLE,所以其他wifi,zigbee等功能可以忽略,其界面介绍如下所示,功能非常齐全,还可以直接显示带宽,大家可以下载自己试试(下载Ellisys软件,配合抓包数据大家可以仔细研究分析全过程)。
蓝牙设备工作状态介绍:
1.从机设备广播状态:
-
Connectable LE Coded -> LE Coded
-
Connectable LE Coded -> 2M on AUX
2.主机连接从机过程:
-
主机在2M PHY 下建立连接
-
2M PHY切换到1M PHY
3.蓝牙MAC地址:
-
Slave: 0xF0F8F2D2BB7F
-
Master: F0:F8:F2:1F:57:1B
抓包实验广播流程:
回顾一下理论,蓝牙5广播和蓝牙4.x的区别 :
1.增加了不同PHY下的广播
2. 增加了非广播信道广播
3. 增加的扩展广播包数据长度
(蓝牙5细节可可参考文章:细说BLUETOOTH 5 【8X 大广播包数据传输】,细说BLUETOOTH 5 【4X 远距离】,细说BLUETOOTH 5 【2X 数据吞吐量】)
•ADV_EXT_IND[Extended adv]
–扩展广播,只能使用coded和1M PHY,数据广播在37,38,39信道,携带AUX_ADV_IND所在信道以及所使用的PHY。
•AUX_ADV_IND[Auxiliary adv]
-扩展广播数据,可以发生在任何PHY,字节最大为255字节,数据广播在非37,38,39信道上。
广播数据
Connectable LE Coded -> 2M on aux
由图指引可以看到该广播包为扩展广播包,分为4包,1,2,3为广播包分别在37,38,39通道上,广播PHY为coded PHY(S=8),4为数据包,由右图所示的,处于2418通道(8通道),广播PHY为2M PHY。
对,你没有看错,广播PDU Type ADV_EXT_IND是可以在CODED PYH上广播,而实际广播数据可以直接切换到2M PHY上!在ADV_EXT_IND广播中有携带AUX_ADV_IND广播PHY类型以及所处信道,如下下图右下所示。
广播数据
Connectable LE Coded -> LE Coded
由图指引可以看到该广播包为扩展广播包,1,2,3为广播包分别在37,38,39通道上,广播PHY为coded PHY(S=2),4为数据包,由右图所示的,处于17信道,广播PHY为Coded PHY(S=2).
结论
-
ADV_EXT_IND只能在coded PHY 和 1M PHY, AUX_ADV_IND可以在任意PHY。
-
广播包可以利用多种PHY广播模式。
需要原始完整抓包数据的同学,可以后台和我取得联系:)
无线技术联盟微信公众号,提供有价值的市场信息和最新的技术分析,欢迎关注交流,转载请注明出处。