找回密码
 立即注册

微信扫码登录

查看: 287|回复: 4

关于zb_factoryReset()接口的问题

[复制链接]

7

主题

10

回帖

91

积分

注册会员

积分
91
发表于 2024-9-30 11:07:57 | 显示全部楼层 |阅读模式
大家好,

     zb_factoryReset()这个接口是恢复出厂设置,它会把所有的nv擦除,如果我想保留我自己的nv需要怎么,或者说我只需要leave 当前网络,我暂时没有找到相应的接口,zb_nlmeLeaveReq(&leaveReq)我尝试用这个接口似乎没有实现,希望得到你们的帮助,谢谢

27

主题

90

回帖

371

积分

版主

积分
371
发表于 2024-10-8 16:02:33 | 显示全部楼层

nv_sts_t nv_resetToFactoryNew(void){
#if NV_ENABLE
        if(!nv_facrotyNewRstFlagCheck()){
                nv_facrotyNewRstFlagSet();
        }

        foreach(i, NV_MAX_MODULS){
                if(i != NV_MODULE_NWK_FRAME_COUNT &&
                   i != NV_MODULE_APP){ //keep app area
                        nv_resetModule(i);
                }
        }

        nv_facrotyNewRstFlagClear();
#endif
        return NV_SUCC;
}

7

主题

10

回帖

91

积分

注册会员

积分
91
 楼主| 发表于 2024-10-11 21:38:24 | 显示全部楼层
你好,这接口似乎没有先发出leave 命令,是否有接口提供leave,而不删除用户的nv数据接口?

27

主题

90

回帖

371

积分

版主

积分
371
发表于 2024-10-12 12:08:40 | 显示全部楼层
本帖最后由 TL_YB 于 2024-10-12 12:11 编辑
haiou 发表于 2024-10-11 21:38
你好,这接口似乎没有先发出leave 命令,是否有接口提供leave,而不删除用户的nv数据接口? ...

调用zb_factoryReset()后,协议栈底层会先广播leave,然后自动调用nv_resetToFactoryNew()擦除NV信息。
按照上面的修改,就不会擦除APP区域的信息。(如果你的信息存储在APP区域,执行factory new操作,你的信息将会保留)

7

主题

10

回帖

91

积分

注册会员

积分
91
 楼主| 发表于 2024-10-13 11:31:12 | 显示全部楼层
好的,非常感谢
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Telink forum ( 沪ICP备17008231号-1 )

GMT+8, 2024-10-30 09:23 , Processed in 0.085313 second(s), 18 queries .

Powered by Telink 隐私政策

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

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