微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > TI Zigbee设计交流 > 协调器与休眠设备如何通信

协调器与休眠设备如何通信

时间:10-02 整理:3721RD 点击:

Hi,

我用协调器与外部传感器通信时,遇到如下问题:

1.外部设备开启了PM3的休眠,只有其监测到某一行为,才会开启无线功能,上报状态,并在一定时间内请求数据,然后就进入PM3

2.协调器无法预估END_DEV什么时候能够醒来,现在遇到消息无法通知到END_DEV。

查看相关接口,发现有一个gw_sleepy_device_packet_pending指令,即当end_dev唤醒后,会通知到应用程序,这里请教各位道友:

如果我有消息需要通知到end_dev,是否只能监测到gw_sleepy_device_packet_ind消息后,才能发送消息?如果外部发送多个消息,协调器是否需要建立一个消息队列,在监测到唤醒指示后,从队列中手动去发送?

是否有其他更便捷的方法?而不需要自己去写一个消息队列维护

无法实现,必须的休眠的终端设备通过中断自我唤醒。

PM2状态下 高速晶振不运行,RF已经关闭了,只能由外部中断和定时器进行唤醒,不能通过无线方式进行唤醒了。

PM3,我觉得更是无法远程唤醒了。。如果做产品需要低功耗,又要在休眠一段后唤醒,可以定时唤醒,定时休眠。

消息处理上,是否Z-stack能够自动处理POLL形式的数据包?而不是用户程序自动维护?要设置什么参数吗?

主要想问问:

协调器如何发送一条让end_dev采用poll获取的消息?

即如何让协调器发送的消息能够自动缓存,等待end_dev发送data_request时,在发送给协调器?

@Jt Tom, 这个自动缓存的功能现在就有的。默认缓存的时间是7.5s,如果在7.5s内节点还没有data request,这个数据就会被删除掉。

你好,谢谢你的解答,

请问这个时间在哪里能修改呢?

我的应用需要的超时时间,长达30分钟,因为外部设备会30分钟主动上报一次。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top