关于HomeAutomation中endpoint的疑惑
HomeAutomation实验中,
switch和light都调用了zclHA_Init(),EP号分别是12和13;之后又都调用了afRegister(),testEP号都是20。疑问:1、testEP注册了是做什么用的?2、为什么switch和light要注册两个不同的EP,在其他实验中(如sampleAPP、GenericAPP)EP号都是相同的。
你好,
在协议栈里面zclSampleLight_SimpleDesc定义的Endpoint和sampleLight_TestEp定义的Endpoint值是一样的,所以在第二次注册的时候就不会再起作用了。
做这个test ep的目的在于,希望能够把sys level的消息都传到App task上来。
以前的例程中EP相同只是程序开发人员,恰好把两个EP弄成一样了。其实在实际的产品中EP不一样很正常的,ZigBee协议规定只要是1-240之间挑一个就可以了
我去掉了TEST_ENDPOINT后入不了网,这是怎么回事
安全使能,但是并没有使能TC_LINK_JOIN
VV你好,
zclSampleLight_SimpleDesc定义的Endpoint = 13和sampleLight_TestEp定义的Endpoint = 20,并不一样;并且zclHA_Init( &zclSampleLight_SimpleDesc )调用中注册的epDesc->task_id = &zcl_TaskID,而afRegister( &sampleLight_TestEp )调用中注册的task_id = &zclSampleLight_TaskID。
我是否可以理解为调用zclHA_Init( &zclSampleLight_SimpleDesc )是为了将与SAMPLELIGHT_ENDPOINT = 13有关的所以消息先发送到ZCL;调用afRegister( &sampleLight_TestEp ) 是为了把与sampleLight_TestEp(Endpoint = 20)有关的sys level的消息传到App task来,这两个Endpoint并没有直接关系。(不知道理解的对不对)。
例程中的sampleLight_TestEp端点描述与“灯控功能”有联系吗?因为实验我将//afRegister( &sampleLight_TestEp )这个注册“//”注销掉,发现对整个功能没有影响,任然可以组网并完成灯控功能。
HomeAutomation endpoint 相关文章: