RAK3172 issues with P2P mode

Hi,

RUI_3.4.11_RAK3172-E
While testing P2P mode encountered with several issues.

  1. I saw this topic, but need to add that If module is already configured in in P2P continuous RX mode via AT+PRECV=65534 it returns AT_BUSY_ERROR if one tries to send this exactly command again. Not very convenient.
  2. In addition, AT+PRECV=? command doesn’t work and returns AT_ERROR.
  3. If module is in P2P continuous RX mode and P2P setup command (like AT+P2P=868800000:7:125:0:8:10) is sent, the module stops receiving data from air, even if configuration parameters are the same and while it is obviously in RX mode (as I can see by returns AT_BUSY_ERROR for AT+PRECV=65534 and AT+PSEND).
    Only reentering P2P RX mode (as described above through zero: AT+PRECV=0 and AT+PRECV=65534) helps and module starts receiving again.

p.s. Also by the way there is no ATDFU command: ‘ATDFU: Command not found!!’

Welcome to RAK forum @lukegluke ,

I acknowledge items #1 and #2. There are some room of improvements on that implementation.

On #3, maybe you can share me the sequence of commands you sent on both TX and RX? I tried replicating it but AT+PRECV=65534 works fine on my setup.

In my tests I’m using one RAK3172 module as receiver and WisNodeLoraV1.1 dev board with RAK811 module as sender. Here are logs of RX and TX:

RAK3172 RX log
>>at+ver=?
AT+VER=RUI_3.4.11_RAK3172-E
OK
>>at+nwm=0


RAKwireless RAK3172-E Example
------------------------------------------------------
RAK3172-H Version:RUI_3.4.11_RAK3172-E 20220810
Current Work Mode: LoRa P2P.
>>AT+P2P=868800000:7:125:0:8:10
OK
>>AT+PRECV=0
OK
>>AT+PRECV=65534
OK

#Time1. In this moment I send packet from TX side.
And I can send any more data, everything is receiving correctly.

+EVT:RXP2P:-23:13:303130

While module is still in continues RX mode, try to re set old parameters (or setting new ones, it doesn’t matter)

>>AT+P2P=868800000:7:125:0:8:10
OK

#Time2. I send packets from TX side, but nothing is receiving.

And only after reentering RAK3172 in RX mode

>>AT+PRECV=0
OK
>>AT+PRECV=65534
OK

receiving starts work again.
#Time3. I send packet from TX side

+EVT:RXP2P:-23:12:303130

RAK811 TX log
>>at+version
OK V3.0.0.13.H.T3
>>at+set_config=lora:work_mode:1
UART1 work mode: RUI_UART_NORAMAL
Current work_mode:P2P
Initialization OK 
>>at+set_config=lorap2p:transfer_mode:2
OK 
>>at+set_config=lorap2p:868800000:7:0:1:8:10
OK

#Time1. Send packet

>>at+send=lorap2p:303130
OK 

#Time2. Send packets

>>at+send=lorap2p:303130
OK 
>>at+send=lorap2p:303130
OK 

#Time3. Send packet

>>at+send=lorap2p:303130
OK 

And just in case, I’m quite sure that the issue is on RX side RAK3172 and don’t related anyhow to TX side and RAK811 and should be reproducible with two RAK3172 modules.

Thank you for the details @lukegluke . It is definitely clear and I can confirm that I can duplicate your experience. I will issue a ticket to improve this firmware behavior.