在non-beacon sensor的poll request是:collector是否有数据发送?
我可以理解为:collector如何要发送数据给sensor,必须要收到sensor的polling?
polling如果对功耗有影响,修改polling时间周期?
我现在是polling 6S,sensor的时间会6秒打印一次。M3根本没有睡眠
Viki Shi:
poll request是sensor定时发给collector来询问是否有消息的,如果设置太频繁,会增加功耗
user5322468:
回复 Viki Shi:
你所说的消息是指(collector发给sensor的,sensor发送的polling ,collector 只回复了ACK)。
collector如果要发送消息给sensor,sensor必须发送polling,才会收到?(如果是这样子,collector 发送给sensor的数据,只能是polling的倍数?)
YiKai Chen:
回复 user5322468:
sensor发送的polling ,collector 回复ACK中會帶collector有沒有消息给sensor,如果有sensor RX會打開久一些來接收collector的消息;collector 发送给sensor的数据,不必是polling的倍数,sensor沒有作polling前,数据會存在collector等sesnor作polling,但是timeout時間到了的話数据會被移除
user5322468:
回复 YiKai Chen:
collector回复ACK会带有木有消息给sensor,这个状态我可以改动吗?
数据會存在collector等sesnor作polling,这个timeout是collector中的这个值吗?这个数据保存是多条还是单条?
ApiMac_mlmeSetReqUint16(ApiMac_attribute_transactionPersistenceTime,INDIRECT_PERSISTENT_TIME);
YiKai Chen:
回复 user5322468:
collector回复ACK会带有木有消息给sensor,这个状态我可以改动吗?不行
数据會存在collector等sesnor作polling,这个timeout是collector中的这个值吗?这个数据保存是多条还是单条?timeout是collector中INDIRECT_PERSISTENT_TIME定義的,数据保存是多条
你可以參考一下 這個帖子
user5322468:
回复 YiKai Chen:
non Beacon中sensor每次上传数据,collector都回复(内容自定义)。在考虑低功耗的情况下,我应该如何使用polling。
YiKai Chen:
回复 user5322468:
可以在sensor每次上传数据後調用sendPollReq來做polling
user5322468:
回复 YiKai Chen:
你好,测试了,每次sensor发送数据启动polling定时6s,收到了就关闭定时。当接入10个左右节点的时候,冲突就很大了。collector的回复sensor收不到。我在sensor发送打印出来,每6S会重发一次,然后就一直反复操作。底层的这个重发,是没有ACK回复?重发后会自己打开polling吗
YiKai Chen:
回复 user5322468:
collector回复sensor如果是在收到sesnor数据後馬上發出,建議每次sensor发送数据启动polling定时為200ms,收到了就关闭定时
user5322468:
回复 YiKai Chen:
改为200ms还是一样,具体情况是:抓包信息,有数据发送并且回复了ACK。collector ,dataIndCB无断点进入。sensor打印信息一直在发送同样的数据,间隔很短。时间长了,collector会死机(串口无打印,灯全部熄灭)。