【平头哥蓝牙Mesh网关开发套件试用体验】测试网关+PHY6220蓝牙mess 智能灯

简介: 蓝牙 MESH 智能灯,是智能家居系统中最基础的设施。通过设置智能灯的模型属性,能够实现轻松、高效地控制灯的状态。

作者:云霄一天


平头哥蓝牙 Mesh SDK 是基于低功耗蓝牙芯片 PHY6212 /PHY6220提供的软件开发套件。该开发套件以 YoC 平台为基础,对蓝牙 MESH 协议栈做了深度优化和整合,为开发者提供了通用的 MESH 组件,涵盖了 SIG MESH Model 和私有 Model 以及丰富的芯片外设驱动。蓝牙 Mesh SDK 实现。


蓝牙mesh网关+PHY6220子模块蓝牙mess

1.jpg


Mesh 网络拓扑:

2.jpg


上图是一个 Mesh 灯控网络的拓扑,以此为例,介绍一下 Mesh 网络的构成。按照功能来划分,Mesh 设备可以分为两类,一种是 Provisioner,一种是 Node节点。


Provisioner 负责组建 Mesh 网络,主要功能有发现未入网设备,将未入网的设备加入Mesh 网络,配置入网设备的特性,比如 Relay 特性,Friend 特性,Proxy 特性等。在上图中,Provisioner 可以是蓝牙开发板,也可以是一个手机,但是当前不支持两个 Mesh 网络中同时存在手机 Provisioner 和蓝牙开发板 Provisioner 的情况。当一个设备加入特定的 Mesh 网络后,该设备成为 Mesh 网络的 Node 节点。


在上图中,节点有 Light 灯控节点和 Switch 开关节点两种。这两种节点默认都支持Relay 特性和 Proxy 特性。Relay 特性打开的情况下,节点会转发来自别的节点的Mesh 消息。Proxy 特性打开的情况下,节点会支持手机接入 Mesh 网络。


蓝牙 Mesh SDK: 总体分为四个层次,自下而上分别为 SoC 蓝牙芯片层,Kernel 内核层,Service 服务层和 BT Applications 蓝牙应用层。  

3.jpg


打开CDK  New IoT Project>> PHY6220 芯片>> PHY6220开发板>> mesh_light_node_demo ,官方 demo 工程,可以修改蓝牙名称:

4.jpg

应用入口函数 app_main(),主要实现如下功能:

  • 板级初始化
  • MESH 灯 Model 定义
  • Mesh 节点初始化,注册 Model 事件回调处理函数 代码分析:
<!--StartFragment-->
<span class="fontstyle0">/* </span><span class="fontstyle2">定义设备名称,使用手机 </span><span class="fontstyle0">APP </span><span class="fontstyle2">扫描时可以看到该名称 </span><span class="fontstyle0">*/
#define DEVICE_NAME "YoC Light"
/* </span><span class="fontstyle2">定义设备 </span><span class="fontstyle0">UUID */
#define LIGHT_DEV_UUID {0xcf, 0xa0, 0xe3, 0x7e, 0x17, 0xd9, 0x11, 0xe8, 0x86,
0xd1, 0x5f, 0x1c, 0xe2, 0x8a, 0xde, 0x02}
node_config_t g_node_param = {
/* </span><span class="fontstyle2">设置当前为设备节点 </span><span class="fontstyle0">*/
.role = NODE,
/* </span><span class="fontstyle2">设置节点的 </span><span class="fontstyle0">UUID */
.dev_uuid = LIGHT_DEV_UUID,
/* </span><span class="fontstyle2">设置节点的 </span><span class="fontstyle0">Device Name */
.dev_name = DEVICE_NAME,
/* </span><span class="fontstyle2">注册 </span><span class="fontstyle0">Model </span><span class="fontstyle2">的事件处理回调函数 </span><span class="fontstyle0">*/
.user_model_cb = app_event_cb,</span>
<!--EndFragment-->


下载:

5.jpg6.jpg


编译烧录两个子模块   下载Nordic 第三方:nRF mesh apk downloadv3.1.6 安卓版,附上下载链接   http://www.downcc.com/soft/530807.html


nrf mesh :配网过程如下:

7.png8.png9.png10.png11.png


配网:

12.jpg


蓝⽛MESH⽹关开发板:烧写如下程序: ble_mesh_gateway_node_sdk\solutions\mesh_light_node_demo 测试视频: https://v.youku.com/v_show/id_XNTgxMzA0MjQ5Ng==


本文源自:平头哥芯片开放社区

欢迎关注公众号:芯片开放社区(ID:OCC_THEAD),查看更多应用实战文章。

相关文章
|
4月前
|
人工智能 安全 API
20 万奖金池就位!Higress AI 网关开发挑战赛参赛指南
本次赛事共设三大赛题方向,参赛者可以任选一个方向参赛。本文是对每个赛题方向的参赛指南。
476 41
|
存储 安全 PHP
【100天精通Python】Day48:Python Web开发_WSGI网络服务器网关接口与使用
【100天精通Python】Day48:Python Web开发_WSGI网络服务器网关接口与使用
264 0
|
监控 Cloud Native 安全
基于 API 网关践行 API First 开发实践
API First 开发模式的核心在于:以 API 为先,将其视为“头等公民”,在构建应用、服务及集成之前,应优先定义并设计 API 及其配套。API First 作为一种相对较新的开发模式,它已逐渐流行并获得业内的广泛认可。
649 154
|
XML 开发框架 负载均衡
带你读《Apache Dubbo微服务开发从入门到精通》——三、 网关(1)
带你读《Apache Dubbo微服务开发从入门到精通》——三、 网关(1)
476 84
|
JSON Dubbo Java
带你读《Apache Dubbo微服务开发从入门到精通》——三、 网关(2)
带你读《Apache Dubbo微服务开发从入门到精通》——三、 网关(2)
270 66
|
Dubbo 应用服务中间件 Apache
带你读《Apache Dubbo微服务开发从入门到精通》——三、 网关(4)
带你读《Apache Dubbo微服务开发从入门到精通》——三、 网关(4)
415 90
|
开发框架 负载均衡 Dubbo
带你读《Apache Dubbo微服务开发从入门到精通》——三、 网关(3)
带你读《Apache Dubbo微服务开发从入门到精通》——三、 网关(3)
291 60
|
移动开发 Shell 测试技术
Realtek蓝牙Android10.0移植结束后的基本测试和常见问题分析
Realtek蓝牙Android10.0移植结束后的基本测试和常见问题分析
|
监控 Java API
基于Spring-Cloud-Gateway开发API网关的思路
基于Spring-Cloud-Gateway开发API网关的思路
564 0
|
Ubuntu API 数据库
kong网关插件开发初探
kong插件开发初探
951 0