1
前言
Legacy advertising,只在37(2402)、38(2426)、39(2480)三个channels上发送,且只能使用1M PHY,最大携带的有效数据为31 bytes。
Core 5.0引入了扩展广播,可以携带更多的广播数据,应用层可以设置多达1650bytes的广播数据。在37/38/39 channels上携带较少的数据,在0~36 channels上发送大量的数据,减少了广播冲突概率。并且还可以使用不同的PHY进行发送,满足速率(2M)和距离(S2/S8)的不同需求。广播集的引入,可以在同一时间发送不同interval和不同广播数据的多个广播。新增了周期广播功能。扩展广播特性总结:
每一包有效数据最多可达254 bytes,应用层可以设置最大1650 bytes的数据。
可以在40 channels上发送广播,减少广播冲突概率,增加广播的可靠性。
可以使用不同PHY发送,满足速率和距离等不同需求。
广播集,允许多个广播配置的广播同时工作。
固定interval的广播:周期广播。
2
关于扩展广播
扩展广播包格式
重点关注 AuxPtr和SyncInfo:
名词介绍
primary channel:37(2402)、38(2426)、39(2480)
secondary channel:0~36
命名规则
primary channel: ADV_EXT_IND
secondary channel:都以AUX_开头,包括AUX_ADV_IND、AUX_SYNC_IND、AUX_CHAIN_IND。(core 5.4增加了AUX_SYNC_SUBEVENT_IND、AUX_SYNC_SUBEVENT_RSP)
3
扩展广播实现
在primary channel上发送ADV_EXT_IND,携带AuxPtr字段。(AuxPtr包含了同步所需要的全部信息:Timing、Channel、PHY。有了这三个信息,扫描设备按照AuxPtr指定的时间、channel和PHY进行扫描,即可扫描到对应的广播包)
根据AuxPtr描述的信息,在相应的secondary channel上发送AUX_ADV_IND。
如果AdvData较大,AUX_ADV_IND发不完,可以通过AuxPtr引出相应的chain packet(AUX_CHAIN_IND)来发送剩余的AdvData。AUX_CHAIN_IND也可以通过AuxPtr再次引出对应的AUX_CHAIN_IND,以此类推,直到所有的AdvData发送完成。注意:上层设置的AdvData最多为1650 bytes,所以chain packet不是无限制的引导。
注:
ADV_EXT_IND只在primary channel上发送,只能使用1M/S2/S8,不能使用2M PHY。Core 5.4之前只是指定coded PHY,并没有指定是用S2/S8。在core 5.4增添了advertising coding selection,指定是用S2还是S8。因为S2和S8的传输距离不同,在某些应用场景中需要具体指定是S2还是S8。
AUX_ADV_IND及其引导的AUX_CHAIN_IND,以及后面引导的所有AUX_CHAIN_IND,这些包的长度不一定是最大长度,可以是其他长度值,如下图的198 bytes。
4
周期广播实现
Core 5.0提供了一种固定interval的一种广播形式:周期广播。Core 5.0之前的广播,每个interval都是要有0~10ms的随机delay。周期广播是扩展广播的一部分。
广播端:发送周期广播的设备;
同步端:同步周期广播的设备。
首先广播端在primary channel发送ADV_EXT_IND,携带AuxPtr,指向AUX_ADV_IND。
然后广播端按照AuxPtr描述的信息,在相应的secondary channel上发送AUX_ADV_IND。
AUX_ADV_IND携带了SyncInfo字段,该字段包含了周期广播的所有信息,比如:时序信息、interval、access code、channel map等。根据SyncInfo字段的信息,同步端就可以和对应的周期广播(AUX_SYNC_IND)同步上。
注:
广播端在引出周期广播后,ADV_EXT_IND和对应的AUX_ADV_IND可以继续发送,这样其他没有同步上的设备可以继续同步对应的周期广播。对于同步端设备,同步上之后可以不用再继续扫描ADV_EXT_IND和AUX_ADV_IND,以节省功耗。
AUX_SYNC_IND及其引导的AUX_CHAIN_IND,以及后面引导的所有AUX_CHAIN_IND,这些包的长度不一定是最大长度,可以是其他长度值,如下图196 bytes。
5
Legacy advertising 和
Extended advertising 对比
参考文档访问链接:
Bluetooth Core Specification v5.4:
https://www.bluetooth.com/specifications/specs/
Bluetooth Core Specification Version 5.0 Feature Overview:
https://www.bluetooth.com/bluetooth-resources/bluetooth-5-go-faster-go-further/
关 于 泰 凌
泰凌微电子致力于为客户提供一站式的低功耗高性能无线连接SoC芯片解决方案,包括经典蓝牙,蓝牙低功耗,蓝牙Mesh,Zigbee,Thread,Matter,Apple HomeKit,Apple“查找(Find My)”,和私有协议等低功耗2.4GHz多协议无线连接系统级芯片和丰富的固件协议栈。公司产品广泛应用于智能照明,智能家居/楼宇,智能遥控,无线外设,智能零售,穿戴设备,无线音频,智能玩具,物流追踪,智慧城市等各类消费和商业应用场景中。
全部0条评论
快来发表一下你的评论吧 !