【经验】基于Silicon Labs蓝牙Mesh SoC EFR32BG的BT Mesh light Demo流程介绍
SILICON LABS的蓝牙mesh无线SoC EFR32BG在目前的蓝牙Mesh市场中占据了主要优势,协议栈稳定性高、大规模网络测试的数据通信质量比较好,受到客户好评。越来越多的开发者在选择蓝牙Mesh方案的时候都会首选Silicon Labs的EFR32BG。为了帮助初步接触Silicon Labs蓝牙mesh协议栈的开发者,对于Silicon Labs提供的BT Mesh Light Demo,本文将进行详细解读。
系统初始化:在while(1)之前的部分是对协议栈进行初始化操作,根据应用中所包含模型、feature的不同而选择性初始化,比如支持vendor模型,就需要加入vendor_init。等待系统启动完成。
系统启动事件:gecko_evt_system_boot_id
事件处理:
如果有按键在按着,则恢复出厂,否则初始化节点:gecko_cmd_mesh_node_init()->result;等待初始化完成。
Node初始化完成事件:gecko_evt_mesh_node_initialized_id
事件处理:
初始化节点的Generic Server处理:result = gecko_cmd_mesh_generic_server_init()->result;
通过事件参数,获取节点现在的网络状态,如果已经入网,则进行状态初始化,读取之前保存的状态,然后发布出来。如果未入网,则发送unprovisioned beacon:gecko_cmd_mesh_node_start_unprov_beaconing(0x3); // enable ADV and GATT provisioning bearer
等待Provisioner的连接。
Provisioner发现了设备并启动了Provision的流程事件:gecko_evt_mesh_node_provisioning_started_id
事件处理:
以250ms的间隔闪烁Led:gecko_cmd_hardware_set_soft_timer(32768 / 4, TIMER_ID_PROVISIONING, 0);
以定时器事件完成,每250ms触发一次TIMER_ID_PROVISIONING事件,进行LED的闪烁:
case TIMER_ID_PROVISIONING:
// toggle LED to indicate the provisioning state
if (!init_done) {
LEDS_SetState(LED_STATE_PROV);
}
等待Provision流程的完成。
接下来进入Provision完成事件:gecko_evt_mesh_node_provisioned_id:
事件处理:停止LED闪烁:gecko_cmd_hardware_set_soft_timer(0, TIMER_ID_PROVISIONING, 0);
初始化灯的状态:lightbulb_state_init();
初始化包括:申请Model的内存
mesh_lib_init(malloc, free, NUMBER_OF_MESH_LIB_MODELS);
初始化朋友节点功能:
res = gecko_cmd_mesh_friend_init()->result;
读取之前保存的Model state。
初始化模型,主要是将Model的函数处理进行注册:onoff_request、onoff_change
并将现在的state发布出去。
然后就是等待Provisioner的操作,建议先看下Provision的流程,依次会产生事件:
gecko_evt_mesh_node_key_added_id
gecko_evt_mesh_node_model_config_changed_id:
不需要处理。
收到client(开关)的state改变(开关灯、亮度)的信息触发事件:
gecko_evt_mesh_generic_server_client_request_id
根据消息类型,对led进行操作:
mesh_generic_request_on_off
mesh_generic_request_on_power_up等。
主要依靠之前注册的callback进行led操作。
状态改变的事件触发,gecko_evt_mesh_generic_server_state_changed_id:目前尚无处理。
- |
- +1 赞 0
- 收藏
- 评论 0
本文由Song提供,版权归世强硬创平台所有,非经授权,任何媒体、网站或个人不得转载,授权转载时须注明“来源:世强硬创平台”。
相关推荐
【经验】Silicon Labs的蓝牙SoC EFR32BG22如何进行在线的OTA升级?
Silicon Labs的蓝牙SOC EFR32BG目前已经能够支持到蓝牙5.2,工艺升级后的EFR32BG22的功耗能够达到接收4.1mA,0dbm发射功耗3.6mA,休眠功耗低至1.4uA,如此低的功耗,能够大幅延长蓝牙设备的电池续航时间。本文介绍蓝牙SoC EFR32BG22如何进行在线的OTA升级。
设计经验 发布时间 : 2020-06-07
【经验】EFR32BG系列蓝牙SoC之低功耗测试操作指导
很多的蓝牙设备都是电池供电的,因此对蓝牙SoC功耗水平测试与评估就非常有必要。Silicon Labs公司提供的蓝牙评估板底板,都带有电流功耗测试功能,搭配Simplicity studio v4开发平台的energy profile功耗测试上位机,非常容易测试出EFR32BG系列蓝牙SoC的功耗水平。我们详细介绍功耗测试需要的软件和硬件以及测试操作。本文就将具体进行说明。
设计经验 发布时间 : 2020-02-20
实测蓝牙Mesh 1.1的性能更新
蓝牙Mesh 1.1版本中引入了远程配置和无线设备固件更新(OTA DFU)的功能。在这篇技术博客中,我们通过广泛部署基于Silicon Labs(亦称“芯科科技”)的xG24和xG21无线SoC开发板的节点并组成网络,来分析在多个测试节点上进行的一系列实验结果,进一步探索蓝牙Mesh 1.1网络的性能,包括网络延迟、远程配置和OTA, DFU性能的详细测试设置和结果等实用数据。点击文末的阅读原文
设计经验 发布时间 : 2024-07-15
Silicon Labs(芯科科技) 物联网无线产品选型指南
目录- Company and product overview Bluetooth Modules proprietary wireless devices Wi-Fi Modules Mighty Gecko Modules Z-Wave Modules
型号- EBWT41U,ZDB5202,SLEXP8027A,EFR32FG13P233F512GM48,EFR32™,SLWSTK6061B,MGM12P,EZR32WG,EFR32FG13P231F512GM32,EFR32BG12P232F1024GM68,EFR32MG13P733F512GM48,EFR32BG13P532F512GM32,WT12,AMW007-E04,EFR32,WT32I,EZR32™,BGM121,BGM11S,WT11U,EFR32FG,EFR32FG14P233F256GM48,SLWSTK6062B,RBK-ZW500DEV-CON2,SLWSTK6120A,SLWSTK6063B,RBK-ZW500,EFR32BG12P132F1024GL125,SI4XXX,ZM5101,ZM5304,ZDB5101,ACC-UZB3-U-BRG,BGM111,EBWT11U,EFR32FG14P233F128GM48,ACC-UZB3-U-STA,MGM111,ZDB5304,SLWSTK6000B,SLWSTK6020B,WT32,SI10XX,SLWSTK6101C,EFR32MG13P632F512GM32,AMW037,EFR32FG12P433F1024GM48,DKWT32I-A,EFR32MG12P132F1024GL125,EFR32MG1P133F256GM48,BGM13S,EZR32HG,BGM13P,BGX13P,EZR32LG,MGM13P,WT41U,EFR32BG13P733F512GM48,BGX13S,SLWSTK6060B,MGM13S,SLWSTK6065B,WGM110,RBK-ZW500DEV-EMB2,EFR32BG12P433F1024GL125,EBWT12-A,ZM5202,AMW007,SLTB004A,EFR32MG14P733F256GM48
芯科科技支援新的蓝牙®网状网络功能增强和网络照明控制标准化配置文件
中国,北京 - 2023年9月21日 – 致力于以安全、智能无线连接技术,建立更互联世界的全球领导厂商Silicon Labs(亦称“芯科科技”,NASDAQ:SLAB),今日宣布其支持蓝牙技术联盟(Bluetooth SIG)针对蓝牙网状网络(Bluetooth Mesh)实现的新功能增强,以及他们新的网络照明控制(NLC)标准,该标准旨在为使用蓝牙网状网络的商业和工业照明提供一种统一标准。
原厂动态 发布时间 : 2024-07-25
【技术】蓝牙5与蓝牙MESH,增加蓝牙传输距离并将蓝牙设备进行组网通讯
Silicon Labs公司作为世界顶级的物联网芯片、软件、解决方案供应商,推出支持蓝牙5.0的SOC芯片EFR32BG系列和通过认证、集成天线、远距离传输、小封装的蓝牙模块BGM系列。Silicon Labs公公司针对蓝牙产品,提供整套完善的开发工具,蓝牙Mesh网络开发包,例程和手机APP代码。运用Silicon Labs公司提供的丰富资源,可以提高设计产品的稳定性,加快上市时间。
新技术 发布时间 : 2018-05-18
【经验】蓝牙SoC芯片EFR32BG系列BLE修改MAC地址的方法
当很多BLE设备一起使用或组网使用时,可以通过其MAC地址来区分不同的设备,这个地址是全球唯一有的,一般已固化在芯片中,无法修改,但用户可以配置不使用该MAC并使用自定义的符合 IEEE EUI64规则的MAC。在Silicon Labs蓝牙SoC芯片EFR32BG系列的BLE SDK中提供了方法,本文将进行详细说明讲解。
设计经验 发布时间 : 2020-05-16
【经验】低功耗蓝牙SoC芯片EFR32BG系列的UART串口通信参考代码与解析
EFR32BG是Silicon Labs公司的高性能低功耗蓝牙SoC芯片。支持蓝牙5.0、5.1协议和蓝牙Mesh协议,发射电流3.5mA@0dbm,接收电流仅有2.6mA。广泛用于智能门锁,蓝牙门禁系统,照明系统,智能家居;在开发EFR32BG蓝牙SoC的代码过程中,经常需要用到uart通信,本文详细介绍如何找到参考代码以及代码解析。
设计经验 发布时间 : 2020-02-10
思为无线发布低功耗、小体积、远距离蓝牙5.2数传模块BLE5201,发射功率最高6dBm
思为无线BLE5201蓝牙5.2数传模块具备超低发射和接收电流(发射功率为0dBm时3.6mA;接收2.6mA)和高性能、低功耗M33内核,可将纽扣电池的寿命延长至十年。目标应用包括蓝牙Mesh低功耗节点、智能门锁、个人医疗保健和健身设备。
产品 发布时间 : 2024-06-21
【经验】Silicon Labs 蓝牙SOC EFR32BG系列IADC与ADC的区别
Silicon Labs蓝牙SOC EFR32BG系列包括有EFR32BG12/13和EFR32BG21两个子系列,其中EFR32BG12/13采用的是Cortex-M4内核,EFR32BG21采用的是Cortex-M33内核,二者的内核不同,另外,EFR32BG12/13集成有IADC,EFR32BG21集成的是ADC,两个ADC还是有一些区别的,在使用时需要注意一下,本文介绍其区别。
设计经验 发布时间 : 2020-02-21
【经验】Silicon Labs 蓝牙Mesh SoC版Provisioner流程介绍
Silicon Labs的蓝牙Mesh SoC EFR32BG是目前市场上非常流行的蓝牙Mesh方案,该芯片支持BLE5.1的全部特性,支持BT Mesh 1.1的全部特性,具有技术上的先进性。在做蓝牙Mesh网关时,需要使用EFR32BG作为Provisioner,本文介绍下Silicon Labs SoC版Provisioner的流程。
设计经验 发布时间 : 2019-07-10
无线连接技术如何实现医疗物联网?
面向医疗物联网(IoMT)应用的新发展趋势, Silicon Labs(亦称“芯科科技”)高级产品营销经理Brian Blum提供本篇应用文章,进一步说明我们该如何利用物联网和连网健康设备来实现医疗物联网,以改善医疗保健、治疗和健康的体验,追求更健康的社会。
技术探讨 发布时间 : 2024-04-13
【经验】如何开启低功耗蓝牙SoC芯片EFR32BG系列参考代码soc-empty工程中的调试串口打印输出功能
EFR32BG是Silicon Labs公司的高性能低功耗蓝牙SoC芯片。支持蓝牙5.1协议和蓝牙Mesh协议,支持AOA定位功能,苹果HomeKit,支持多种硬件加密等。发射电流3.5mA@0dbm,接收电流仅有2.6mA。广泛用于智能门锁,蓝牙门禁系统,照明系统,智能家居。开发过程中,经常需要用到uart串口调试,本文详细介绍如何在soc-empty工程中开启调试串口。
设计经验 发布时间 : 2020-02-09
【经验】EFR32BG蓝牙SOC芯片如何用SimplicityStudio设置蓝牙绑定操作
EFR32BG是Silicon Labs公司的高性能低功耗蓝牙SOC芯片。Silicon Labs公司针对蓝牙产品,提供整套完善的开发工具,蓝牙Mesh网络开发包,例程和手机APP代码,可提高设计产品的稳定性,加快上市时间。本文主要是介绍一下如何使用Silicon Labs软件中的BGTOOL工具实现蓝牙的绑定的操作,实现蓝牙主从绑定操作的目的主要是下次链接可以快速配对。
设计经验 发布时间 : 2020-03-21
【IC】芯科科技具备丰富的蓝牙SoC和模块产品阵容,满足从家庭到商业网状网络的设计需求
藉由芯科科技的专业知识、软硬件产品组合以及以开发人员需求为中心的资源库,芯科科技至今已帮助行业部署了超过1亿个网状网络节点。针对蓝牙Mesh标准开发,芯科科技具备丰富的蓝牙SoC和模块产品阵容,包括BG21、BG22、BG24和BG27等系列,并制作了产品简介和选型指南以提供开发者参考评估。
产品 发布时间 : 2023-12-06
电子商城
品牌:SILICON LABS
品类:Wireless Gecko SoC
价格:¥8.1764
现货: 104,128
品牌:SILICON LABS
品类:Mighty Gecko Multi-Protocol Wireless SoC
价格:¥27.0929
现货: 90,767
品牌:SILICON LABS
品类:Wireless Gecko SoC
价格:¥10.4994
现货: 61,779
现货市场
品牌:SILICON LABS
品类:Switch Hall Effect Magnetic Position Sensor
价格:¥2.2924
现货:126,000
服务
根据用户的蓝牙模块,使用Bluetooth 蓝牙测试装置MT8852B,测试蓝牙1.0至5.1,包括传输速率、功率、频率、调制和接收机灵敏度,生成测试报告。支持到场/视频直播测试,资深专家全程指导。
实验室地址: 深圳 提交需求>
可定制变压器的常规尺寸从EE4.4到ETD49不等,温度范围:-40℃~150℃。自动化产品的起订数量:20KPCS,其它定制产品无起订量要求。
提交需求>
登录 | 立即注册
提交评论