|
|
information
| 说明: |
建议参照本版块置顶帖内容输入必要信息 |
| 芯片型号: |
TLSR8258 |
| SDK及版本: |
telink_zigbee_sdk-3.7.2.0 |
你好,
我在跑TLSR8258的sampleContactSensor例程,在sampleSensor_zclCheckInStart中我把绑定的判断去掉,直接向sampleGW发pollCtrl_checkIn, 然后sampleGW回复continue in normal operation,不修改poll rate。我发现一段时间后终端sampleContactSensor不再发出zcl poll checkin,也收不到网关发过来的zcl poll checkin RSP。但MAC层的data request还在发。请问这是为什么?
void sampleSensor_zclCheckInStart(void)
{
// if (!zb_bindingTblSearched(ZCL_CLUSTER_GEN_POLL_CONTROL, SAMPLE_SENSOR_ENDPOINT)) {
zcl_pollCtrlAttr_t *pPollCtrlAttr = zcl_pollCtrlAttrGet();
if (!zclCheckInTimerEvt) {
printf("!zclCheckInTimerEvt\r\n");
zclCheckInTimerEvt = TL_ZB_TIMER_SCHEDULE(sampleSensor_zclCheckInTimerCb, NULL, pPollCtrlAttr->chkInInterval * POLL_RATE_QUARTERSECONDS);
if (pPollCtrlAttr->chkInInterval) {
printf("pPollCtrlAttr->chkInInterval\r\n");
sampleSensor_zclCheckInCmdSend();
}
}
// }
}
void sampleSensor_zclCheckInCmdSend(void)
{
epInfo_t dstEpInfo;
TL_SETSTRUCTCONTENT(dstEpInfo, 0);
dstEpInfo.dstAddrMode = APS_SHORT_DSTADDR_WITHEP;
dstEpInfo.dstEp = SAMPLE_SENSOR_ENDPOINT;
dstEpInfo.dstAddr.shortAddr = 0x0000;
dstEpInfo.profileId = HA_PROFILE_ID;
printf("sampleSensor_zclCheckInCmdSend\r\n");
zcl_pollCtrl_checkInCmd(SAMPLE_SENSOR_ENDPOINT, &dstEpInfo, TRUE);
}
|
-
|