1、文档简介
本文档基于XR806的SDK,介绍了BLE Mesh模块接口函数的功能、使用说明及使用示例,以指导读者使用XR806 BLE Mesh模块提供的接口进行应用开发。
2、概述
2.1 背景说明
XR806 通过 Zephyr 协议栈提供 BLE Mesh 功能的支持,提供 API 供用户进行调用。API 所提供的功能主要 有 Provisioner 的 Provisioning 功能、Node 的 Friend、Relay、LPN 功能等。 2.2 规格特性 XR806 BLE Mesh 功能基于 Zephyr V2.5.0 提供的开源 Bluetooth Mesh 协议栈进行二次开发。
XR806 BLE Mesh 主要规格表:
模块
场景
规格描述
Mesh
Node
支持通过 PB-ADV 和 PB-GATT 方式配网,支持 Proxy、Friend、Low Power Node、Relay 功能,支持 config cli/srv model,支持 health cli/srv model,支 持 on/off cli/srv model
Provisioner
支持 PB-ADV 方式配网,支持 config cli model,支持 health cli model,支持 on/off cli model
2.3 文件位置
XR806 BLE Mesh 接口 API 由 BLE Host 协议栈提供,其代码位置如表 2-2 所示。
3、技术说明
3.1 模块框架
XR806 BLE Mesh 模块的系统层次如下图 3-1 所示,是基于 BLE 模块的一个模块。 XR806 BLE Mesh 接口位于 BLE Mesh 模块的上层,是 BLE Mesh 协议提供给用户开发的接口。用户通过调 用 BLE Mesh API,即可使用 BLE Mesh 相关功能。
4、应用说明
4.1 配置说明
启用 BLE Mesh 功能需要使能 BLE Mesh 的相关配置,通过工程配置即可启用,如表 4-1 所示。需要注意 的是启用 Mesh 功能需要同时开启 BLE 的 Pripheral 和 Central 功能。
BLE 功能使能
设置说明: 此项配置用于在 SDK 中启用 BLE 功能。
设置方法:
1.编译之前执行命令“make menuconfig”,进入 BLE 功能项下,将以下功能项 打开:
BLE Controller
Ble Host
Peripheral Role support
Central Role support
2.进入 BLE Host 功能项下,将以下功能项打开:
Bluetooth Mesh support
4.2 接口说明
XR806 BLE Mesh 提供了各种功能的接口,主要功能涵括了初始化、配网、CDB(Configuration Database)、 模型配置等。但需要注意的是,应用可使用的接口还取决于 Kconfig 选项,因为大多数 BLE Mesh 功能都 是在编译时已经确定好的。例如,任何与 Provisioner 相关的 API 都需要配置 CONFIG_BT_MESH_PROVISIONER 宏,其在 menuconfig 中对应的选项为 Provisioner support。