用按键执行zclGeneral_SendOnOff_CmdToggle( SAMPLESW_ENDPOINT, &omgAddr, FALSE, 0 );
omgAddr初始化:(已知灯的短地址是0x0000)
omgAddr.addrMode = Addr16Bit;
omgAddr.addr.shortAddr = 0x0000 //已知
omgAddr.panId = 0xAABB; //已知
omgAddr.endPoint=SAMPLESW_ENDPOINT;
是否就可以直接控制灯的开关;
测试了没办法控制灯,(zclSampleSw_DstAddr,原版程序里面的参数)
如果是两个设备绑定了,按键执行zclGeneral_SendOnOff_CmdToggle( SAMPLESW_ENDPOINT, &zclSampleSw_DstAddr, FALSE, 0 );
就可以控制灯的开关;
为啥直接用短地址,不绑定情况,就不行呢?
源码是Z-Stack Home 1.2.2a.44539\Projects\zstack\HomeAutomation下面的SampleLight和SampleSwitch这两个工程
都是官网下载的,就改了那个地址,其他都没变
短地址重新烧个程序就变了,把灯改成协调器,开关改成终端
求解。。。。
VV:
对方使用的end point和设置的目的end point一样吗?
你用空中抓包比较下就知道了。