BLE Mesh (9) —— Mesh beacons
前面说的都是在 node 已经入 mesh 网以后的行为,那么一个 node 是怎么入 mesh 网的呢?这里就要分为两个部分来介绍了,一边是,自报家门希望入网的节点,另一边是把这个希望入网的节点拉入伙的设备;
这里我们称,自报家门的节点的行为叫做 Mesh beacons;
另一边,将自报家门节点拉入网络的这个叫做 Provisioner;
本章先讨论 Mesh beacons;
当一个 node 希望加入 mesh 网络,那么首先它需要在空口中通过 ADV 呼喊,并根据指定的格式报告他的自身情况;
1、格式
这个格式直接承载在 ADV 上,也就是 【Length】 +【AD Type】 + 【Payload】 的格式;
其中的 Len 代表了 Payload 的长度;
Type 是 AD Type,这里的 AD Type 指定是 «Mesh Beacon» AD Type 这个是值是多少呢?查看蓝牙的官方网站:
https://www.bluetooth.com/specifications/assigned-numbers/generic-access-profile/
可以发现它的值是 0x2B:
0x2B «Mesh Beacon» Mesh Profile Specification Section 3.9
接下来看 Beacon Type:
未入网的设备(node),我们称之为 Unprovisioned Device,所以这里,如果希望被加入 mesh 网络,那么需要设置成为 0x00
注意:Mesh beacon 的 ADV 需要的类型是 non-connectable and non-scannable undirected 类型,即,不可连接,不可扫描,非定向的 ADV
2、Unprovisioned Device beacon
一个希望入网的设备,需要按照第一节的介绍,发送 non-connectable and non-scannable undirected 类型的 ADV,同时 ADV 上承载的数据需要满足 1 中的要求;只有发送这样的 ADV,才能够被 Provisioner (能够邀请其他节点入网的那个 node)发现;那么先来看看这个 Unprovisioned Device beacon 的 Adertising Data Payload 组成(注意,这里只看 Adertising Data Payload 部分,因为前面的 Advertising Data Header 部分已经确定):
可以看到 octet 0 是 0x00,即 Beacon Type 的 Unprovisioned Device beacon 的表达值;
接着跟了一个设备的 Device UUID 用于标记当前 Advertising 的唯一设备号;
OOB Information 用于在加入 mesh 网络过程中指明可用的 OOB data:
OOB:Out of Band 带外的意思,就是不通过 LE 来传输东西,有些东西,比如 Key 这些;
URI Hash:是可选的部分;
当一个设备发出这种 Advertising 的呐喊的时候,Provisioner 识别后,便可以邀请它入网;
BLE Mesh (9) —— Mesh beacons相关推荐
- BLE Mesh (10) —— Mesh Provisioning
目录 1.Provisioning bearer layer 1.1.PB_ADV 1.2.Generic Provisioning layer 1.2.1.Generic Provisioning ...
- BLE 技术(八)--- BLE MESH 各层报文是如何设计的(上)?
文章目录 前言: 一.SIG MESH Bearer Layer 1.1 Advertising Bearer Layer 1.2 GATT Bearer Layer 二.SIG MESH Provi ...
- BLE 技术(九)--- SIG MESH Models 是如何设计的(下)?
文章目录 一.SIG Mesh Models Layer 1.1 MESH Model communication 1.2 MESH State transition 1.3 Overview of ...
- BLE Mesh (5) —— Lower Transport Layer
目录 1.字节序 2.Low Transport PDU 2.1.Unsegmented Access Message 2.2.Segmented Access Message 2.3.Unsegme ...
- service mesh(一)架构发展历史
service mesh(一)架构发展历史 文章目录 service mesh(一)架构发展历史 数据面和控制面 service mesh架构演变 istio sidecar模式 流量治理 熔断 限流 ...
- mesh(三角面片)数据解析
mesh(三角面片)简介 Mesh是多边形网格,是计算机图形学中用于各种不规律物体建模的一种数据结构.在多边形网格的面片中三角面片是被分割的最小单位,且表示比较简单.灵活并且拓扑描述方便,所以被广泛使 ...
- BLE 技术(三)--- 链路层七种状态与空口报文设计(Core_v5.2)
文章目录 一.LE Link Layer States 二.Link Layer Packet format 2.1 Advertising physical channel PDU 2.1.1 Pr ...
- 络达开发---自定义BLE服务(一):相关数据结构讲解
平台:AB1565M SDK版本:V2.11.0 开发环境:windows10 一.BLE服务相关的几个结构定义 理解Airoha的SDK对BLE的支持,就必须要理解下面这些结构的功能,因为定义BLE ...
- 络达开发---自定义BLE服务(二):功能实现
络达开发--自定义BLE服务(一) 一.目录和工程的配置 本文讲解如何在该SDK中添加用户自居定义的BLE服务.该服务的源码可以存放在自己希望的位置,但为符合工程目录的合理性,建议放在工程所在的目录下 ...
最新文章
- 一代传奇,“全球第一CEO”:杰克·韦尔奇逝世了!
- SAP SD交货单凭证流里的Confirmation of Service初探
- 《数学之美》第27章 期望最大化算法
- 小程序首页获取数据给数组赋值,实现加载更多,以及遇到的坑
- python画图中文显示_解决Linux系统中python matplotlib画图的中文显示问题
- 信息系统项目管理师-项目合同管理核心知识点思维脑图
- 「AI在左,营销在右」互动营销创意破圈,这事儿不难
- File类遍历(文件夹)目录功能
- 两数之和Python解法
- 电磁波考试中可以用计算机吗,计算机考试试题库带答案(8页)-原创力文档
- 几行代码撸了一天,源码到底该如何读?
- tab切换中的滚动条下拉分页带来的问题
- 思科服务器a设置dns信息,思科怎么配置dns服务器
- 【tcp】网络连接中的长连接和短连接是什么意思?
- 解决:ORA-06502: PL/SQL: numeric or value error: NULL index table key value
- 敏捷史话(一):用一半的时间做两倍的事——Scrum之父Jeff Sutherland的传奇人生
- CSS盒子模型——标准模型和IE模型的区别,如何设置标准模型、IE模型
- CSS - 让整个页面变成灰色(一行代码)
- Python数值运算操作符
- 文本框直接粘贴添加图片构想