文章目录
1、可连接的非定向广播 (ADV_IND)
这是一种用途最广,最常见的广播类型,包括 广播数据 和 扫描响应数据,它表示当前设备可以接受任何设备的连接请求。
进行通用广播 的设备能够被扫描设备扫描到,或者在接收到连接请求时作为从设备 进入一个连接。
通用广播 可以在 没有连接的情况下发出,换句话说,没有主从设备之分。
2、可连接的定向广播 (ADV_DIRECT_IND)
定向广播 类型是为了尽可能快的连接,俗称回连包。
这种报文包含两个地址:广播者的地址和发起者的地址。
发起者 收到发给自己的定向广播报文之后,可以立即发送 连接请求作为回应。
定向广播类型有特殊的时序要求。完整的广播时间必须每3.75ms重复一次。这一要求使得扫描设备只需扫描3.75ms 便可以收到定向广播设备的消息。
当然,如此快的发送会让报文充斥着广播信道,进而导致该区域内的其他设备无法进行广播。因此,定向广播不可以持续1.28s以上的时间。如果主机没有主动要求停止,或者连接没有建立,控制器都会自动停止广播。一旦到了1.28s,主机便只能使用间隔长得多的 可连接非定向广播 让其他设备来连接。
当使用定向广播时,设备不能被 主动扫描。此外,定向广播报文的净荷中也不能带有其他附加数据,该净荷只能包含两个必须的地址。
3、不可连接的非定向广播 (ADV_NONCONN_IND)
仅仅发送广播数据,而不想被扫描或者连接。
这也是唯一可用于只有发射机 而没有接收机设备的广播类型。
不可连接设备不会进入 连接态,因此,它只能根据主机的要求在广播态和就绪态之间切换。
常用于 BLE Mesh、Beacon项目。
4、可扫描的非定向广播 (ADV_SCAN_IND)
又称可发现广播,这种广播不能用于发起连接,但允许其他设备扫描该广播设备。
这意味着该设备可以被发现,既可以发送广播数据,也可以响应扫描 发送扫描回应数据,但不能建立连接。
这是一种适用于广播数据的广播形式,动态数据可以包含与广播数据之中,而静态数据可以包含于扫描响应数据之中。