找回密码
 立即注册

微信扫码登录

查看: 636|回复: 1

[BLE Mesh] 私有Fast provision 功能如何不经过上位机启动?

[复制链接]

13

主题

9

回帖

155

积分

荣耀黄金

积分
155
发表于 2025-2-18 09:54:19 | 显示全部楼层 |阅读模式
Information
说明:   建议参照本版块置顶帖内容输入必要信息
芯片型号: TLSR8258
SDK及版本: tc_ble_mesh-V4.1.0.1
本帖最后由 cqian 于 2025-2-18 16:03 编辑

SDK手册“私有的批量组⽹模式,即在默认key的network⾥⾯,增加vendor命令,⽐如VD_MESH_RESET_NETWORK等,向0xffff 的⽬标地址发送network key,app key,iv index (只需要发送⼀次,整个⽹络都可以同时接收),然后根据mac的不同,逐⼀分配unicastaddress。”

我通过调用start_fast_provision_state_machine()函数,使用mesh_bulk_cmd(&hci_data, hci_data_len)添加APPKEY_A,并且将void mesh_fast_prov_proc()里#if (__PROJECT_MESH_PRO__)改成#if 1//(__PROJECT_MESH_PRO__)启动这个功能,经测试可以实现快速组网,想请教是否会有什么隐患?

发送的第一条命令按代码看应该是SendOpParaDebug_vendor(ADR_ALL_NODES, 0, VD_MESH_RESET_NETWORK, (u8 *)&delay_ms, 2, 0, 0);,这条命令是如何让未配网设备即使没有在这个网络里也可以处理这条vendor消息?是“设备在未组网时,会有一个默认key,所以在未组网时,网关给未组网的节点发命令也是可控的”这个原因吗?这个默认key是指NETKEY_A和APPKEY_A吗?

以及,具体测试时发现未配网设备无法收到VD_MESH_RESET_NETWORK这条命令,未配网设备收到的第一条命令是VD_MESH_ADDR_GET??

image.png

请指教,感谢。



5

主题

211

回帖

721

积分

版主

积分
721
发表于 2025-2-18 16:19:03 | 显示全部楼层
网关工程可以的,网关工程有定义宏__PROJECT_MESH_PRO__的。
2. SendOpParaDebug_vendor(ADR_ALL_NODES, 0, VD_MESH_RESET_NETWORK, (u8 *)&delay_ms, 2, 0, 0);是网关发送的,用的是当前网络的key,目的是让网关和已配网节点暂时回到默认网络。 之后的消息都是通过默认key(即NETKEY A和APPKEY A)加解密的。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Telink forum ( 沪ICP备17008231号-1 )

GMT+8, 2025-4-5 00:03 , Processed in 0.091398 second(s), 24 queries .

Powered by Telink 隐私政策

泰凌微电子版权所有 © 。保留所有权利。 2024

快速回复 返回顶部 返回列表