Bluetooth MESH探究 --- (4) BLE core spec之链路层信道与状态

1、信道种类

BLE也定义了40个物理信道,各个信道的中心频率间隔2MHz。在物理层定义的40个信道中,有三个广播信道,其余37个是数据信道。广播信道用于寻找设备、建立连接以及广播消息。数据信道用于在建立连接的设备之间收发数据。物理信道0、12以及39(分别位于总带宽的两边以及中间)映射为链路层信道37、38以及39。其余物理信道与链路层逻辑信道之间的映射关系如下图所示(图片来源于BLE协议规范):

Bluetooth MESH探究 --- (4) BLE core spec之链路层信道与状态


2、链路层状态

在链路层,BLE设备有两种角色:

(1) Master role:主设备,在通信建立的过程中起主导作用,发起连接建立。

(2) Slave role:从设备,在通信建立的过程中发送广播消息的设备会作为从设备。

 

链路层的状态有如下几种:

(1) Standby:在此状态下链路层不收发任何数据包,任何其它状态都可以转换为该状态。

(2) Advertising:链路层在此状态下将会发送广播消息,或者处于侦听广播响应消息。

(3) Scanning:在这种状态下,链路层会扫描是否有广播消息。

(4) Initiating:链路层在这种状态会侦听广播信道消息,链路层也会响应广播消息从而启动连接建立。

(5) Connection:设备建立连接之后就进入connection状态。

 

上述各个状态之间的转移图如下(图片来源于BLE协议规范):

Bluetooth MESH探究 --- (4) BLE core spec之链路层信道与状态

(1) 对于主设备而言,它的状态转移路径为:standby->initiating->connection->standby;

(2) 对于从设备而言,状态转移路径为:standby->advertising->connection->standby;

(3) 对于scanning状态,主要用于如下场景:当一个设备在收到advertise消息之后,如果想要获取关于该advertiser更多的信息,会进入scanning状态。