Hi TI大牛:
我开发HA时(Z-Stack HA 1.2.2a.44539)遇到bind问题:
如附件抓包数据。我将一个light switch设备的Ep5 bind到另一个On/Off设备的3个Ep上(Ep3/Ep4/Ep5),bindresponse都是Success,但是按下按键发出的toggle命令却只有1条,而且DstEndPoint也在变化,时而为Ep5,时而为Ep3。
单步调试,bindTable里有3个Bind数据;但是依然只发出1条toggle;
1. 将light switch Ep5和On/Off设备的Ep5绑定;
2. 测试,按下light switch的Ep5按键发出toggle正常;
3. 将light switch Ep5和On/Off设备的Ep4绑定;
4. 测试,按下light switch的Ep5按键发出两条toggle,Ep5–>Ep5,Ep5–>Ep4;
5. 将light switch Ep5和On/Off设备的Ep3绑定;
6. 测试,按下light switch的Ep5按键应该发出3条toggle,但是只有发出Ep5–>Ep4的toggle;
7.再按下light switch的Ep5按键此时依然只发出一条toggle指令,但是变成了发出Ep5–>Ep3的toggle;
感谢。
VV:
底层的处理有可能是找到对应的endpoint就结束了,不会同时找好几个。
像这种可能需要用group address方式,需要测试下。
Bird:
回复 VV:
这种现象却是概率性出现的,并不是每次都只发出一条toggle,有时候又能够发出3条。有什么解决方案?客户又需要这种bind功能。
Bird:
回复 VV:
VV大神:
从抓包看,Nwk Sequence是准备好的。如下图,发出一条toggle的NwkSeq是77,下一条toggle的NwkSeq就是80了。
而MacSeq却和DataRequst连续,如下图,第一条toggle的MacSeq是110,DataRequest的MacSeq是111。会不会是DataRequest把另外两条toggle的事件冲突了??
hongjun xiong:
这是用的什么抓包工具