BLE设备之间的通信方式

Posted someone-device

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了BLE设备之间的通信方式相关的知识,希望对你有一定的参考价值。

 

技术图片

 

1. BLE通信方式

在建立连接之前,BLE设备之间可以通过广播和扫描的方式进行通信,一旦建立连接,双方可以通过client/server模式通信(建立了链路层连接),因此对于BLE网络,有两种通信的方式:

  1. 使用广播方式通信:

  • 是一种无连接的方式
  • 是单向的,可以向任何人或者接收器发送数据。
  • 参与的角色是Broadcasting and Observing

2.  使用连接方式通信

  • 设备双方建立一个永久的连接,在两个设备之间周期性的交换数据,数据内容多样

  • 参与者是Master和slaver

本质上,连接只不过是两个设备之间可以交换数据的方式和数据的表现形式不一样而已,有了连接,使得数据传输的内容更加丰富,比如加密数据。

这两种通信方式,每一种都有优缺点。

2. 使用广播方式通信

技术图片

 

  • 广播方式的通信就是通过广播以及扫描响应的方式来通信,

  • 是一种无连接的方式,可以将数据发送到任何扫描设备或接收器,

  • 是单向的

     

 

使用广播方式通信没有任何安全措施,任何监听设备都能收到,因此它可能不适合于敏感数据。除非在广播数据中采用某种加密方法,这属于另当别论。

广播包和扫描响应数据包最大包括31个字节的有效载荷,(BLE 5.0增加了广播能力),因此使用广播通信,最多的数据只能是62个字节(advertisment以及scanresponse),所传递的信息会受到该大小的限制,

但另外一方面,如果双方只想传递少量的数据或者将信息传递给周围的多个设备,使用广播则是一个方便的选择。比如苹果的iBeacon,Google的Eddystone beacon,基于BLE广播的定位等等

 

3 使用连接(Connections)方式通信

技术图片

 

 

建立连接后,两个设备之间就可以周期性(connection events)的通信,两个设备的数据的发送和接收均是独立的,他们的角色不会对数据吞吐量或优先级有限制,从数据通信角度来看上,二者是独立的。

BLE 4.0标准中,一个Peripheral只能连接到一个central设备。

从蓝牙4.1开始,移除了对设备角色的限制,可能存在如下情况:

  •  一个设备同时是central和Peripheral角色

  • 一个central可以连接多个Peripheral

  •  一个Peripheral可以连接多个central

基于连接可以扩展更丰富的网络拓扑结构。

 

技术图片

以上是关于BLE设备之间的通信方式的主要内容,如果未能解决你的问题,请参考以下文章

BLE广告和信标

解密:Ble低功耗蓝牙和蓝牙mesh网络之间的关系

iOS8 - BLE 唤醒应用

iOS 与配对的 BLE 设备进行安全通信

WLT8016:BLE蓝牙的一些基本概念

ESP32学习笔记(29)——BLE iBeacon广播