基于On Semiconductor NCH-RSL10的蓝芽5.0 MESH灯控方案

RSL10是On Semiconductor推出的一款多重协定蓝芽5.0 认证的SoC。产品特点是超低功耗及小型化尺寸,能为您的IoT应用带来系统大小及电池寿命的优化。RSL10支持输入电压的范围为1.1V~3.3V,且无须外部零件,适用于最低1.2V电池的应用。RSL10具备双核心结构及2.4GHz收发器,提供支持蓝芽低能耗和2.4GHz自定义协议的灵活应用。

CAT4238是一款高效率的DC-DC升压LED驱动器,提供准确的恒定电流来驱动LED。CAT4238可在1MHz固定频率下运行,因此可结合价格较低的外部陶瓷电容器和电感器使用。CAT4238可支持最高5.5V的输入电压及最高40mA的LED电流,适用于电池供电的应用。

Mesh 是蓝芽官方组织(SIG)推出的蓝芽 BLE 组网的规范,通过 BLE 作为载体,制作了一套星形网状的拓朴类型的多对多的组织。每一台设备都可以与网路中的其他设备进行通信,设备间的通信以消息的形式传递,一台设备可以将某一台设备发来的消息中继到另一台设备,这样就可以拓展点到点的通信范围,这个范围远超过一个单独蓝芽设备无线电所覆盖的范围。

      蓝芽Mesh 模型定义了如下类型,本方案会用到Generic onoff client及generic onoff server两种模型;

     BLE Mesh功能之应用须有一开通配置装置(Provisioner)作为开通Mesh网路设备,可将某未开通配置设备转化为Mesh网路节点(Provisioning),在此方案中是以手机安装RSL10 Mesh APP作为Provisioner。代理节点(Proxy)可让不支援Mesh特性的手机,通过GATT与Proxy沟通,代理节点可将手机的意图翻译成MESH网路理解的涵义,可允许没有集成BLE Mesh协议的BLE设备与Mesh网路中的任何节点进行通信。本方案中的CLN即是Mesh网路的代理节点,手机可透过CLN来控制SRV3的灯号。

     修改方案范例程式app_mesh.h中的MESH_APP可以修改BLE模型,MESH_APP_SA_GATT_CLIENT表示此Device是设定为Client node , MESH_APP_SA_GATT_SERVER_FRIEND则是设定Server Node ; 

Server Node我们会另外增加GPIO3做LED开关控制,需要再Initial时就设定LED ON,以及APP控制灯号时控制GPIO3,需修改以下程式


编辑完成后烧录到EVB即可参照视频的方式完成RSL10 Mesh灯号控制的设定;






场景应用图

sceneryUrl