我在Z-Stack的源代码和API手册中看到很多跟Discover相关的函数。看了API中的说明,但具体也不知道它的操作效果和流程是怎么样的。
比如在ZCL API的文档中,
zcl_SendDiscoverCmd()
zcl_SendDiscoverRspCmd()
Discover的动作是必须的吗?可以不Discover,直接发送cmd给该设备吗?
zcl_SendDiscoverRspCmd()是Z-Stack完成的,还是需要开发者开发的时候自己调用呢?
同理,在
zcl_Send ConfigReportCmd()
zcl_ SendConfigReportRspCmd( )
中,Rsp需要开发者自己读取 ConfigReportCmd命令后,并调用ConfigReportRspCmd函数吗?
miffy:
Discover不是必须的,只是用在哪些不知对方是谁的情况下,比如你是philips,他是小米,你们想实现组网并控制对方,那你就得先Discover一下对方有哪些机构可以控制,诸如开关、水龙头、马桶等等….
如果两边都是自己开发的产品,那根本不用发现,发现啥呢?大家都是知根知底,给指定的Cluster发数据就完事了
Viki Shi:
楼上正解,对方互相知道的情况下,并不需要discover