1.单播/绑定/组播/广播,中单播和绑定是不是一样稳定?组合和广播相对稳定性会差一点?
2.绑定的话,如何去控制一组设备呢?假如环境中有多种设备需要分别控制,比如开关、插座、灯具,
他们都绑定到协调器的话,如何在控制的时候只控制一组?(比如控制灯的时候,开关插座不要被控制)
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
1.单播/绑定/组播/广播,中单播和绑定是不是一样稳定?组合和广播相对稳定性会差一点?
2.绑定的话,如何去控制一组设备呢?假如环境中有多种设备需要分别控制,比如开关、插座、灯具,
他们都绑定到协调器的话,如何在控制的时候只控制一组?(比如控制灯的时候,开关插座不要被控制)
1&2、终端是否收到,可以通过MAC ACK判断:
#define MAC_ACK_WAIT_DURATION 0x40 /* The maximum number of symbols to wait for an acknowledgment frame */
3、会,用户可以设置hold数据的时间及数量:
// 1-255 (0 -> 256) X RTG_TIMER_INTERVAL
// A known shortcoming is that when a message is enqueued as "hold" for a
// sleeping device, the timer tick may have counted down to 1, so that msg
// will not be held as long as expected. If NWK_INDIRECT_MSG_TIMEOUT is set to 1
// the hold time will vary randomly from 0 - CNT_RTG_TIMER ticks.
// So the hold time will vary within this interval:
// { (NWK_INDIRECT_MSG_TIMEOUT-1)*CNT_RTG_TIMER,
// NWK_INDIRECT_MSG_TIMEOUT*CNT_RTG_TIMER }
#define NWK_INDIRECT_CNT_RTG_TMR 1
// To hold msg for sleeping end devices for 30 secs:
// #define CNT_RTG_TIMER 1
// #define NWK_INDIRECT_MSG_TIMEOUT 30
// To hold msg for sleeping end devices for 30 mins:
// #define CNT_RTG_TIMER 60
// #define NWK_INDIRECT_MSG_TIMEOUT 30
// To hold msg for sleeping end devices for 30 days:
// #define CNT_RTG_TIMER 60
// #define NWK_INDIRECT_MSG_TIMEOUT (30 * 24 * 60)
// Maximum msgs to hold per associated device.
#define NWK_INDIRECT_MSG_MAX_PER 3
// Maximum total msgs to hold for all associated devices.
#define NWK_INDIRECT_MSG_MAX_ALL \
(NWK_MAX_DATABUFS_TOTAL - NWK_INDIRECT_MSG_MAX_PER)
zcl_SendReportCmd里會使能AF_ACK_REQUEST,如果沒收到AF_ACK_REQUEST,就會重发