TIwilliam hill官网
直播中

王博

7年用户 199经验值
私信 关注

调试HA1.2,路由缓存其终端节点的数据,不等待节点的poll,就直接发送数据,导致数据发送失败,请问还有什么配置?

本帖最后由 一只耳朵怪 于 2018-5-24 09:36 编辑

请问:
在调试HA1.2过程中,终端节点通过一个路由设备加入网络,协调器下发命令读取终端设备的
Attribute,
数据下发到路由,但是不等待终端节点的poll,就直接发送数据,导致数据发送失败
路由缓存数据的时间设置30S,终端节点的poll Rate = 18S
#define NWK_MAX_DATABUFS_TOTAL 12
#define NWK_INDIRECT_MSG_MAX_PER 3
-DNWK_INDIRECT_MSG_tiMEOUT=30
请问还有什么配置?谢谢

回帖(3)

庄当甜

2018-5-22 02:36:04
Z-Stack Home 1.2里面,需要子设备在入网以后告诉父设备自己的poll rate是多少。
void ZDApp_AnnounceNewAddress( void )
[
#if defined ( ZIGBEEPRO )
// Turn off data request hold
APSME_HoldDataRequests( 0 );
#endif
ZDP_DeviceAnnce( NLME_GetShortAddr(), NLME_GetExtAddr(),
ZDO_Config_Node_Descriptor.CapabilityFlags, 0 );
#if defined ( ZIGBEEPRO )
// Setup the timeout
APSME_HoldDataRequests( ZDAPP_HOLD_DATA_REQUESTS_TIMEOUT );
#endif
if ( ZSTACK_END_DEVICE_BUILD )
[
if ( zgChildAgingEnable == TRUE )
[
uint8 coordExtAddr[Z_EXTADDR_LEN];
// Send the message to parent
NLME_GetCoordExtAddr( coordExtAddr );
NLME_SendEndDevTimeoutReq( NLME_GetCoordShortAddr(), coordExtAddr,
zgEndDeviceTimeoutValue,
zgEndDeviceConfiguration );
]
]
]
父设备在收到这个消息以后,就会把对该节点的timeout时间修改过来了。
举报

王博

2018-5-22 02:45:29
引用: 小Qhhui 发表于 2018-5-22 02:36
Z-Stack Home 1.2里面,需要子设备在入网以后告诉父设备自己的poll rate是多少。
void ZDApp_AnnounceNewAddress( void )
[

您好,
    目前我的配置中,zgChildAgingEnable = FALSE;
路由和终端都没有使用该功能。
终端节点直接通过协调器加入网络,向终端发送数据,在Data Request时,向其发送数据。
举报

王博

2018-5-22 03:03:01
引用: 小Qhhui 发表于 2018-5-22 02:36
Z-Stack Home 1.2里面,需要子设备在入网以后告诉父设备自己的poll rate是多少。
void ZDApp_AnnounceNewAddress( void )
[

childAging功能应该是路由或者协调器用于管理自己的关联表,及时删除在Timeoutvalue时间内无数据的终端节点,或者根据linkstatus的丢失值age删除路由节点?
举报

更多回帖

发帖
×
20
完善资料,
赚取积分