How many byte or char in each frame RAK3172 at AT mode?

Hi community,
I use AT mode for RAK3172, with a frame under 20 digits, it sends good, but send fail in case 30 or 50 digits.
This is the flow in my code:

Disable_receive(); //AT+PRECV=0
Send_data(); //AT+PSEND=
delay(1000);
Enable_recieve(); //AT+PRECV=65534

How many byte or char in each frame RAK3172 at AT mode?

Thank you.

In P2P mode the LoRa transceiver can send a payload of 253 bytes.

You say "in AT mode", so I guess you are controlling the RAK3172 from a host MCU.
Is there any Serial buffer limit on the host MCU?

1 Like

Thank you.
I use esp32, so I think 253 bytes is no problem.
Maybe I’m wrong in processing data when converting from byte-array to char*

Is there a way I can set the input as byte array when transmitting and receive as byte array on the other side?
Because my current data is in array format, I am having to convert to String for transmission and split into byte array on the receiving side. This process costs me a bit more because I have to add β€œ*” characters to separate the bytes in the String.
I use the syntax AT+PSEND=<…>

Sorry, when using AT commands, the only way to send data is using the hex-string.

Why are you adding β€œ" characters? AT+PSEND does only accept a plain hex string. A "” should not be in the command AT+PSEND=xxxxxx

Can you share the code lines where you convert your array to a hex string?

Oh, I figured out the problem. I gave the string as String instead of Hex-String. So I need to remove non-HEX characters.
I’ll also fix the HEX codes as 2 characters, because for values below 16 it’s only one character, I thought I’d add a β€œ0” before that to make it easier to split the string on the receiving side.