Part Number:CC2652R
syscfg配置如图:
zstack_bdbSetAttributesReq_t zstack_bdbSetAttrReq;
zstack_bdbSetAttrReq.bdbScanDuration = BDB_SCAN_DURATION;
zstack_bdbSetAttrReq.has_bdbScanDuration = TRUE;
Zstackapi_bdbSetAttributesReq(appServiceTaskId, &zstack_bdbSetAttrReq);
BDB_SCAN_DURATION值改为0x0D,通过抓包发现信道扫描时间并没有改变,只是发送2条beacon request,就不在发送,请问如何更改信道扫描时间?
Kevin Qiu1:
默认的扫面时间是0x04,在 bdb_interface.h修改宏定义的值
//Default values for BDB attributes#define BDB_DEFAULT_COMMISSIONING_GROUP_ID 0xFFFF#define BDB_DEFAULT_JOIN_USES_INSTALL_CODE_KEY FALSE#define BDB_DEFAULT_PRIMARY_CHANNEL_SET DEFAULT_CHANLIST //BDB specification default is: 0x02108800#define BDB_DEFAULT_SCAN_DURATION 0x04#define BDB_DEFAULT_SECONDARY_CHANNEL_SET SECONDARY_CHANLIST //BDB specification default is: (0x07FFF800 ^ 0x02108800)#define BDB_DEFAULT_TC_LINK_KEY_EXCHANGE_METHOD BDB_TC_LINK_KEY_EXCHANGE_APS_KEY#define BDB_DEFAULT_TC_NODE_JOIN_TIMEOUT 0x0F#define BDB_DEFAULT_TC_REQUIRE_KEY_EXCHANGE FALSE
,
qq81679:
除了修改BDB_DEFAULT_SCAN_DURATION值外,还有其他方法修改信道扫描时间吗?
,
qq81679:
目前发现在扫描时间内只发送一次beacon request,如何修改发送beacon request次数?
,
Kevin Qiu1:
扫描时间是在初始化中设置的,修改成功不就好了,再怎么改还是在初始化中完成
会在各个信道广播beacon request,查询哪个网络允许加入,没有加入网络时应该还能看到beacon request
,
qq81679:
只设置一个信道。
节点没有加入网络,就会停止发送beacon request,不会持续发送beacon request。
怎么设置可以让节点持续发送beacon?
,
Kevin Qiu1:
zigbee3.0的协议栈中使用Commissioning来加入网络,加入过程(network steering)可以通过 bdb_StartCommissioning(BDB_COMMISSIONING_MODE_NWK_STEERING) 重新启动。
想发送多个beacon request ,多次调用bdb_StartCommissioning就可以了
如果使用例程,通过按BUTTON1开始bdb_StartCommissioning,每按一次就会发一次beacon request