【经验】Silicon Labs 蓝牙Mesh SoC版Provisioner流程介绍

2019-07-10 世强
蓝牙Mesh SoC,EFR32BG,Silicon Labs 蓝牙Mesh SoC,EFR32BG,Silicon Labs 蓝牙Mesh SoC,EFR32BG,Silicon Labs 蓝牙Mesh SoC,EFR32BG,Silicon Labs

SILICON LABS蓝牙Mesh SoC EFR32BG是目前市场上非常流行的蓝牙Mesh方案,该芯片支持BLE5.1的全部特性,支持BT Mesh 1.1的全部特性,具有技术上的先进性。在做蓝牙Mesh网关时,需要使用EFR32BG作为Provisioner,本文介绍下Silicon Labs SoC版Provisioner的流程。


初始化:

按需初始化,作为Provisioner,必须要有config client init

gecko_stack_init(&config);

  gecko_bgapi_class_dfu_init();

  gecko_bgapi_class_system_init();

  gecko_bgapi_class_le_gap_init();

  gecko_bgapi_class_le_connection_init();

  gecko_bgapi_class_gatt_init();

  gecko_bgapi_class_gatt_server_init();

  gecko_bgapi_class_hardware_init();

  gecko_bgapi_class_flash_init();

  gecko_bgapi_class_test_init();

  gecko_bgapi_class_sm_init();

  gecko_bgapi_class_mesh_vendor_model_init();

  mesh_native_bgapi_init();

  gecko_bgapi_class_mesh_config_client_init();

  gecko_initCoexHAL();//WIFI与蓝牙共存功能的初始化

 

1、系统初始化完成:

case gecko_evt_system_boot_id:

如果此时有任意按键按下,则恢复出厂,否则进行正常功能初始化。

对Provisioner功能进行初始化:gecko_cmd_mesh_prov_init();等待初始化完成事件。

2、Provisioner功能初始化完成:

   case gecko_evt_mesh_prov_initialized_id:

首先检查设备是否已经建立网络,如果未建立网络,则需要创建网络,创建网络就是创建networkkey:gecko_cmd_mesh_prov_create_network(0, (const uint8 *)"");

创建Appkey:gecko_cmd_mesh_prov_create_appkey(netkey_id, 0, (const uint8 *)"");

然后开始扫描Unprovisioned Device:gecko_cmd_mesh_prov_scan_unprov_beacons();

开始定时扫描按键:gecko_cmd_hardware_set_soft_timer(TIMER_MS_2_TIMERTICK(100), TIMER_ID_BUTTON_POLL, 0);(这个函数的意思是100ms后会产生一个gecko_evt_hardware_soft_timer_id的事件,该事件的参数就是TIMER_ID_BUTTON_POLL)

等待设备扫描结果。

3、Provisioner扫描到设备:gecko_evt_mesh_prov_unprov_beacon_id

获取信息,读取设备的DCD数据:

gecko_cmd_hardware_set_soft_timer(TIMER_MS_2_TIMERTICK(100), TIMER_ID_GET_DCD, 1);这个实际是一个定时器事件,最后的参数1,代表仅触发一次,0,代表重复触发。

这个函数表示100ms后。会触发id为TIMER_ID_GET_DCD的定时器事件。

4、定时器事件触发:gecko_evt_hardware_soft_timer_id

Id为TIMER_ID_GET_DCD: case TIMER_ID_GET_DCD:

开始读取dcd数据:gecko_cmd_mesh_config_client_get_dcd(netkey_id, provisionee_address, 0);

等待dcd数据。

 

5、DCD数据获得:gecko_evt_mesh_config_client_dcd_data_id

先保存起来,直到获取所有dcd数据,触发:

gecko_evt_mesh_config_client_dcd_data_end_id:事件。

 

6、DCD数据获取完成gecko_evt_mesh_config_client_dcd_data_end_id:

解析dcd数据,把设备包含的Element/Model解析出来:DCD_decode();

把开关、灯的Model解析出来准备绑定和设置订阅、发布:config_check();

在这里面把需要订阅和发布的参数首先保存起来,再集中处理:

config_pub_add(SWITCH_MODEL_ID, 0xFFFF, LIGHT_CTRL_GRP_ADDR);开关的Model发布到LIGHT_CTRL_GRP_ADDR地址。c config_sub_add(SWITCH_MODEL_ID, 0xFFFF, LIGHT_STATUS_GRP_ADDR);开关的Model订阅来自LIGHT_STATUS_GRP_ADDR的消息。

解析完成后,准备给设备发送AppKey:  trigger_next_state(TIMER_ID_APPKEY_ADD);

7、在定时器事件case TIMER_ID_APPKEY_ADD:中给设备发送AppKey:

gecko_cmd_mesh_config_client_add_appkey(netkey_id, provisionee_address, appkey_id, netkey_id);等待设备反馈收到AppKey。

8、收到设备的AppKey反馈:gecko_evt_mesh_config_client_appkey_status_id:

准备发起AppKey对Model的反馈:trigger_next_state(TIMER_ID_APPKEY_BIND);

 

在定时器的TIMER_ID_APPKEY_BIND定时器ID事件下,对将Model和AppKey进行绑定:

gecko_cmd_mesh_config_client_bind_model(netkey_id,

               provisionee_address,

               0, // element index

                  appkey_id,

                  vendor_id,

                  model_id);

等待绑定完成事件。

 

9、绑定完成事件触发:gecko_evt_mesh_config_client_binding_status_id

准备Model消息发布的配置:trigger_next_state(TIMER_ID_PUB_SET);

在TIMER_ID_PUB_SET事件下,将之前保存的待配置发布的列表中的model和address进行配置:gecko_cmd_mesh_config_client_set_model_pub(netkey_id,

               provisionee_address,

                  0, /* element index */

                  vendor_id,

                  model_id,

                  pub_address,

                  appkey_id,

                  0, /* friendship credential flag */

                  3, /* Publication time-to-live value */

                  0, /* period = NONE */

                  0, /* Publication retransmission count */

                  50  /* Publication retransmission interval */

       );

等待发布配置完成事件。

 

10、发布的配置完成的事件:gecko_evt_mesh_config_client_model_pub_status_id

准备进行订阅的配置:trigger_next_state(TIMER_ID_SUB_ADD);同订阅的流程一样。

11、再等待下一个unprovisioned Device,重复流程。


授权代理商:世强先进(深圳)科技股份有限公司
技术资料,数据手册,3D模型库,原理图,PCB封装文件,选型指南来源平台:世强硬创平台www.sekorm.com
现货商城,价格查询,交期查询,订货,现货采购,在线购买,样品申请渠道:世强硬创平台电子商城www.sekorm.com/supply/
概念,方案,设计,选型,BOM优化,FAE技术支持,样品,加工定制,测试,量产供应服务提供:世强硬创平台www.sekorm.com
集成电路,电子元件,电子材料,电气自动化,电机,仪器全品类供应:世强硬创平台www.sekorm.com
  • +1 赞 0
  • 收藏
  • 评论 0

本文由Song提供,版权归世强硬创平台所有,非经授权,任何媒体、网站或个人不得转载,授权转载时须注明“来源:世强硬创平台”。

相关研发服务和供应服务

评论

   |   

提交评论

全部评论(0

暂无评论

相关推荐

【经验】低功耗蓝牙SoC芯片EFR32BG系列的UART串口通信参考代码与解析

EFR32BG是Silicon Labs公司的高性能低功耗蓝牙SoC芯片。支持蓝牙5.0、5.1协议和蓝牙Mesh协议,发射电流3.5mA@0dbm,接收电流仅有2.6mA。广泛用于智能门锁,蓝牙门禁系统,照明系统,智能家居;在开发EFR32BG蓝牙SoC的代码过程中,经常需要用到uart通信,本文详细介绍如何找到参考代码以及代码解析。

2020-02-10 -  设计经验 代理服务 技术支持 采购服务

实测蓝牙Mesh 1.1的性能更新

蓝牙Mesh 1.1版本中引入了远程配置和无线设备固件更新(OTA DFU)的功能。在这篇技术博客中,我们通过广泛部署基于Silicon Labs(亦称“芯科科技”)的xG24和xG21无线SoC开发板的节点并组成网络,来分析在多个测试节点上进行的一系列实验结果,进一步探索蓝牙Mesh 1.1网络的性能,包括网络延迟、远程配置和OTA, DFU性能的详细测试设置和结果等实用数据。点击文末的阅读原文

2024-07-15 -  设计经验 代理服务 技术支持 采购服务

【经验】蓝牙MESH网关程序中的Vendor Model的OpCode的设置

在使用FR32BG21开发蓝牙MESH网关的程序时,我们有时需要使用Vendor Model功能,这时我们需要定义OpCode,在程序中我们可以查到默认定义了两个Opcode:0X00,0X01,这个定义与SIG标准有些冲突,这是什么原因?我们要如何定义OpCode?

2022-03-26 -  设计经验 代理服务 技术支持 采购服务

芯科科技针对蓝牙Mesh 1.1标准版本发布技术更新,增强安全性和系统可靠性,引入许多通信增强功能

芯科科技宣布针对最新的蓝牙Mesh 1.1标准版本发布技术更新,包括改进了安装和更新过程,增强安全性和系统可靠性,并引入许多通信增强功能。这些功能提升将在许多商业和工业应用中发挥作用,例如商业照明系统,有助于降低进入连接网络照明控制(NLC)系统的门槛。

2024-01-18 -  原厂动态 代理服务 技术支持 采购服务

Silicon Labs(芯科科技) 物联网无线产品选型指南

目录- Company and product overview    Bluetooth Modules    Bluetooth Modules Overview    Bluetooth Modules Bluetooth Low Energy Kits    Bluetooth Modules Blue Gecko Wireless Modules    Bluetooth Modules Bluetooth Xpress Modules    Bluetooth Modules Blue Gecko Wireless SoCs    Bluetooth Modules Bluetooth BR/EDR Kits    Bluetooth Modules Bluetooth BR/EDR Modules    proprietary wireless devices    proprietary wireless devices Proprietary Kits    Proprietary Wireless Sub-GHz and 2.4 GHz Dual Band Devices    Proprietary Wireless Sub-GHz Devices    Wi-Fi Modules    Wi-Fi Modules Wi-Fi Kits    Mighty Gecko Modules    Mighty Gecko Modules Mighty Gecko Development Kit    Mighty Gecko Modules Mighty Gecko Mesh Networking Wireless SoCs    Z-Wave Modules    Z-Wave Modules Z-Wave Reference Designs    Z-Wave Modules Z-Wave Development Kits   

型号- 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

SEPTEMBER 2018  - SILICON LABS  - 选型指南  - REV A 代理服务 技术支持 采购服务

芯科科技支援新的蓝牙®网状网络功能增强和网络照明控制标准化配置文件

中国,北京 - 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 -  新技术 代理服务 技术支持 采购服务

MGM13P无线Gecko模块产品介绍

描述- MGM13P是一款由Silicon Labs推出的802.15.4 Mesh和多种协议网络支持的单板模块解决方案,支持蓝牙5.0 LE,包括长距离、高吞吐量和常规BLE物理层。该模块基于EFR32MG13 Mighty Gecko SoC,提供强大的RF性能、低功耗、丰富的MCU外设、多个地区和国家的监管测试证书以及简化的开发体验,所有这些都在一个小型封装中实现。MGM13P适用于广泛的领域,包括物联网多协议终端设备和网关、智能家居、照明、计量、建筑自动化和安全、健康和福祉。

型号- MGM13P12F512GA-V2R,MGM13P12F512GE-V2,MGM13P02F512GE-V2R,MGM13P02F512GE-V2,MGM13P,MGM13P02F512GA-V2R,MGM13P12E,MGM13P02E,MGM13P12F512GE-V2R,MGM13P02F512GA-V2,MGM13P12F512GA-V2,MGM13P12A,MGM13P02A

May, 2024  - SILICON LABS  - 数据手册  - Rev. 1.5 代理服务 技术支持 采购服务

【经验】如何开启低功耗蓝牙SoC芯片EFR32BG系列参考代码soc-empty工程中的调试串口打印输出功能

EFR32BG是Silicon Labs公司的高性能低功耗蓝牙SoC芯片。支持蓝牙5.1协议和蓝牙Mesh协议,支持AOA定位功能,苹果HomeKit,支持多种硬件加密等。发射电流3.5mA@0dbm,接收电流仅有2.6mA。广泛用于智能门锁,蓝牙门禁系统,照明系统,智能家居。开发过程中,经常需要用到uart串口调试,本文详细介绍如何在soc-empty工程中开启调试串口。

2020-02-09 -  设计经验 代理服务 技术支持 采购服务

【技术】网状网络技术三分天下,蓝牙Mesh欲异军突起

随着2009年蓝牙低功耗(BluetoothLowEnergy)的切入,再到现在的蓝牙网状网络(Mesh),我们正看到并将看到有更多的新应用出现。早期,家庭/楼宇自动化、信标、照明和资产追踪/管理等组网应用主要采用Zigbee网络。然而,Zigbee需要设计路由器/网关,这对开发者形成负担,因此行业也进一步提出了基于IPv6的Thread网状网络标准,形成目前技术三分天下的局面。

2017-11-13 -  新技术 代理服务 技术支持 采购服务

思为无线发布低功耗、小体积、远距离蓝牙5.2数传模块BLE5201,发射功率最高6dBm

思为无线BLE5201蓝牙5.2数传模块具备超低发射和接收电流(发射功率为0dBm时3.6mA;接收2.6mA)和高性能、低功耗M33内核,可将纽扣电池的寿命延长至十年。目标应用包括蓝牙Mesh低功耗节点、智能门锁、个人医疗保健和健身设备。

2024-06-21 -  产品

【经验】Silicon Labs蓝牙SoC EFR32BG22调试接口锁定后如何解锁

Silicon Labs公司推出的蓝牙芯片EFR32BG22,支持最新的Bluetooth5.2标准及蓝牙MESH网络功能。具有同类最优的超低传输和接收功率和高性能、低功耗的组合提供业界领先的低功耗特性。使用EFR32BG22时,如果Jlink接口被锁定,需要在DOC下操作,本文介绍具体操作步骤。

2021-10-09 -  设计经验 代理服务 技术支持 采购服务

【经验】如何使用Simplicity Studio V5的蓝牙工程在EFR32BG22中导入外设串口功能?

Silicon Labs公司的蓝牙SoC产品EFR32BG22支持Bluetooth5.2标准及蓝牙MESH网络功能,有客户需要在Simplicity Studio V5中的蓝牙工程SOC-empty下导入串口的功能,实现串口调试功能,本文将带来具体实现步骤。

2021-03-29 -  设计经验 代理服务 技术支持 采购服务

“蓝牙开发流程”详解低功耗蓝牙5.4、蓝牙Mesh和定位服务开发步骤

SILICON LABS(芯科科技)致力于为客户提供最佳蓝牙解决方案。我们的蓝牙协议栈支持长距离、1M 和 2M PHY,使设备能够进行更远距离或更高速率的通信。该蓝牙协议栈还支持方向查找和其他定位服务,可实现室内导航、资产跟踪和接近检测等应用。此外,我们的蓝牙设备可在 SoC、NCP 和 RCP 模式下运行,这三种不同的集成和功能模式可提供成本、性能和灵活性之间的不同权衡。

2024-02-21 -  设计经验 代理服务 技术支持 采购服务
展开更多

电子商城

查看更多

品牌:SILICON LABS

品类:Wireless Gecko SoC

价格:¥8.1764

现货: 101,879

品牌:SILICON LABS

品类:Mighty Gecko Multi-Protocol Wireless SoC

价格:¥27.0929

现货: 90,767

品牌:SILICON LABS

品类:Wireless SoC

价格:¥31.7756

现货: 88,140

品牌:SILICON LABS

品类:Wireless SoC

价格:¥19.9760

现货: 84,417

品牌:SILICON LABS

品类:8 BIT MCU

价格:¥3.9026

现货: 83,555

品牌:SILICON LABS

品类:8 BIT MCU

价格:¥3.5305

现货: 80,365

品牌:SILICON LABS

品类:Wireless SoC

价格:¥35.3989

现货: 77,347

品牌:SILICON LABS

品类:8位MCU

价格:¥5.8534

现货: 71,919

品牌:SILICON LABS

品类:Transceiver

价格:¥15.8878

现货: 53,721

品牌:SILICON LABS

品类:Wireless Gecko SoC

价格:¥10.4994

现货: 50,699

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

现货市场

查看更多

品牌:SILICON LABS

品类:Switch Hall Effect Magnetic Position Sensor

价格:¥2.2924

现货:126,000

品牌:SILICON LABS

品类:Light Sensor

价格:¥20.3400

现货:28,003

品牌:SILICON LABS

品类:8位MCU

价格:¥4.9000

现货:12,000

品牌:SILICON LABS

品类:Mixed-Signal MCU

价格:¥10.1700

现货:10,000

品牌:SILICON LABS

品类:8 BIT MCU

价格:¥3.7900

现货:3,451

品牌:SILICON LABS

品类:Wireless SoC

价格:¥15.1400

现货:1,455

品牌:SILICON LABS

品类:Mixed-Signal MCU

价格:¥11.1200

现货:1,201

品牌:SILICON LABS

品类:8 BIT MCU

价格:¥16.8500

现货:550

品牌:SILICON LABS

品类:8位MCU

价格:¥56.0000

现货:550

品牌:SILICON LABS

品类:8位MCU

价格:¥5.1900

现货:396

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

服务

查看更多

语音/录音芯片定制

提供语音芯片、MP3芯片、录音芯片、音频蓝牙芯片等IC定制,语音时长:40秒~3小时(外挂flash),可以外挂TF卡或U盘扩容。

最小起订量: 1pcs 提交需求>

蓝牙资格认证(BQB)

提供蓝牙BLE芯片协议、蓝牙模块、蓝牙成品测试认证服务;测试内容分Host主机层,Controller控制器层,Profile应用层测试。支持到场/视频直播测试,资深专家全程指导。

实验室地址: 深圳 提交需求>

查看更多

授权代理品牌:接插件及结构件

查看更多

授权代理品牌:部件、组件及配件

查看更多

授权代理品牌:电源及模块

查看更多

授权代理品牌:电子材料

查看更多

授权代理品牌:仪器仪表及测试配组件

查看更多

授权代理品牌:电工工具及材料

查看更多

授权代理品牌:机械电子元件

查看更多

授权代理品牌:加工与定制

世强和原厂的技术专家将在一个工作日内解答,帮助您快速完成研发及采购。
我要提问

954668/400-830-1766(工作日 9:00-18:00)

service@sekorm.com

研发客服
商务客服
服务热线

联系我们

954668/400-830-1766(工作日 9:00-18:00)

service@sekorm.com

投诉与建议

E-mail:claim@sekorm.com

商务合作

E-mail:contact@sekorm.com

收藏
收藏当前页面