如题,使用LWNS可靠单播通信时,时间长了(一两天)会出现通信不了的情况,就是已经发出去或者对方已经发出来了,但是就是接收不到的情况,没有找到规律。找不到头绪,请问有没有解决办法?
使用的哪个mac层协议,如果是csma mac的话,可以手动在固定时间关闭再打开接收。温度校准也需要打开。
你好,使用的是lwns_adapter_blemesh_mac.c
能否提供邮箱或是联系方式以提供更多信息来帮助debug。
我的邮箱是709037434@QQ.com
已联系。
@TECH_JW您好:
使用csma mac层协议能否实现:
1、CH579M使用RF-PHY(2.4g),一个CH579M作为主机设置为RX模式,多个CH579M作为从机设置为TX模式;
2、实现定时(间隔n秒)多个从机(最多32个设备)同时给一个主机发送数据;
3、主机和从机都需要做到低功耗;
您好,如果主机一直常供电处于RX模式,使用lwns的csma mac层协议理论上能够实现多个从机发包时避免碰撞。
如果主机也要做低功耗的话,要做好时间同步,且功耗需要实际具体测试评估。
如果不做收发切换,就要做好主从机之间的精确时间同步,确保n秒后所有设备同时唤醒并处于相应的工作模式。这样收发模式既定,通信窗口由代码协商指定,丢包率自行调整。
如果做收发切换,做好时间同步的粗调,经过n秒睡眠之后,主机唤醒默认处于TX模式并轮询从机,每询问一个节点就切换为RX等待应答,判断超时。及时唤醒的从机处于RX模式接收主机的轮询并先行通信,通信完后做好时间同步就休眠。从机超时没有,轮询一圈后再次轮询还是超时就上报状态,这样采用轮询机制就不用做避免碰撞。这样可靠性更有保障,但如果多个从机一直在等待轮询期间处于工作模式,这期间的功耗就浪费了。
低功耗涉及到处于接收模式的时长,和丢包率之间是要有取舍的,又要功耗低,又要丢包率低就太勉强了。
@TECH_JW谢谢您,我试试。