Send Error 87 with 7204 and 5205

I have updated the firmware on a couple of 7204’s and a couple of 5205’s. The 7204s worked without any problems prior to their firmware being upgraded, and the 7204s were new. Now they all have multiple retries when joining using OTAA, and once they join they do not send data. The error message is ‘[LoRa]: send error 87’. Cannot find any reference to this error message on the forum. Have searched the github code and cannot find any reference to this error message. Does anyone have an idea what this message is indicating?

cheers

Hi @ArawataBill,

For the latest firmware of RAK IoT modules/products, we’ve used an unified set of error values which is defined in a struct here:
https://doc.rakwireless.com/developer-tools/developer-tools/-

As you see, “87” is “RUI_LORA_STATUS_LENGTH_ERROR” which means that the length of the sending packet is too long so that it can not be sent out.

About this issue, can you share me the log?

Where do I find the log? I got this error message from the serial port tool while running at commands.

Yes, i need all of the output from the serial port tool.

Hi Fomi

This is what I get when send the at+join command. A couple of things that may be different to your standard user are that I am using AS923 and am in the Southern Hemisphere so have -ve latitude.

Also I have already sent in a request but could you set me up with access to the RUI compiler. Many thanks.

Wake up.

OTAA:

DevEui:60C5A8FFFE6D0051

AppEui:00137A1000000000

AppKey:5A6967426565416C6C69616E63653039

OTAA Join Start…

OK

[LoRa]:Join retry Cnt:1

[LoRa]:Join retry Cnt:2

[LoRa]:Joined Successed!

Start Search Satellite(about 100 seconds) …

GPS data:latitude: -45.858559, longitude: 170.522955, altitude: 177.1m

Battery Voltage = 3.800 V

BME680 sensor data:

Humidity:43.193 %RH

Temperature:21.50 degree

Pressure:989.26 hPa

Gas_resistance: 12796 ohms

LIS3DH sensor data:ACC_X: 12mg, ACC_Y: 6mg, ACC_Z: -1004mg

[LoRa]: send error 87

Go to Sleep.

please send this command :

at+get_config=lora:status

at+version

and share me the log.
Can you tell me which server you are using?

Hi @ArawataBill,

I’ve just sent the compiler account to you.

About the issue, as Nicholas said, please use that AT commands to get some more details.
I think maybe RAK5205 communicates with LoRa Gateway using a low payload DR like SF12, and the payload of this DR can not send all sensors’s data successfully because the length is too long.
Just show us the details so that we can confirm it.

I won’t be back at my desk till this evening when I can run those commands but the version should be 3.0.0.11 H

I am starting to wonder if the Gateway is the issue. I am using the new RAK micro Gateway with the AS923 template. Would that cause such a problem?

You can use the following AT commands to set your RAK5205:

at+set_config=lora:adr:0
at+set_config=lora:dr:5

then try to send again and show me the log on serial port.

See log below. First did a restart to show error message, then ran commands and did a restart again but still got the error message.

at+set_config=device:restart

Wake up.

at+set_config=device:restart

OK,restart …

Do you mean the node keeps restarting? No instructions were received?

I sent the at+set_config=device:restart command to restart the node to make sure the error message was still there then I ran the two commands that Fomi Tong asked me to run, then I ran the restart command again to see if the error messages were still there and they were

sorry.I can’t see the content of the screenshot you sent. Can you send it once.

The screenshot was just showing the commands that Fomi Tong asked me to run in a previous email

I just saw that most of the info was cut off from my previous reply so here is the log again (appears that replying by email is a bit unreliable) == >

See log below. First did a restart to show error message, then ran commands and did a restart again but still got the error message.

at+set_config=device:restart

Wake up.

at+set_config=device:restart

OK,restart …

========================================================


| ___ / _ \ | | / / | | | (_) | |

| |/ / /\ | |/ / | | | |_ _ __ ___| | ___ ___ ___

| /| _ || \ | |/| | | '__/ _ \ |/ _ / __/ __|

| |\ | | | || |\ \ \ /\ / | | | __/ | /_ _ \

_| __| |/_| _/ / /||| ___||_||/__/

========================================================


RAK5205 Version:3.0.0.11.H


========================================================

Selected LoRaWAN 1.0.2 Region: AS923

BME680 init success.

LIS3DH init OK.

GPS Init OK.GPS timeout:100s

autosend_interval: 300s

Initialization OK,Current work_mode:LoRaWAN, join_mode:OTAA, Class: A

OTAA Join Start…

[LoRa]:Join retry Cnt:1

[LoRa]:Join retry Cnt:2

[LoRa]:Join retry Cnt:3

[LoRa]:Joined Successed!

Start Search Satellite(about 100 seconds) …

GPS data:latitude: -45.848523, longitude: 170.512635, altitude: 78.6m

Battery Voltage = 3.798 V

BME680 sensor data:

Humidity:45.437 %RH

Temperature:21.59 degree

Pressure:992.47 hPa

Gas_resistance: 13203 ohms

LIS3DH sensor data:ACC_X: 11mg, ACC_Y: 11mg, ACC_Z: -1004mg

[LoRa]: send error 87

Go to Sleep.

Wake up.

RAN COMMANDS AT THIS POINT

at+set_config=lora:adr:0
at+set_config=lora:dr:5

OK

OK

OK

at+set_config=device:restart

OK,restart …

========================================================


| ___ / _ \ | | / / | | | (_) | |

| |/ / /\ | |/ / | | | |_ _ __ ___| | ___ ___ ___

| /| _ || \ | |/| | | '__/ _ \ |/ _ / __/ __|

| |\ | | | || |\ \ \ /\ / | | | __/ | /_ _ \

_| __| |/_| _/ / /||| ___||_||/__/

========================================================


RAK5205 Version:3.0.0.11.H


========================================================

Selected LoRaWAN 1.0.2 Region: AS923

BME680 init success.

LIS3DH init OK.

GPS Init OK.GPS timeout:100s

autosend_interval: 300s

Initialization OK,Current work_mode:LoRaWAN, join_mode:OTAA, Class: A

OTAA Join Start…

[LoRa]:Join retry Cnt:1

[LoRa]:Join retry Cnt:2

[LoRa]:Join retry Cnt:3

[LoRa]:Joined Successed!

Start Search Satellite(about 100 seconds) …

GPS data:latitude: -45.848576, longitude: 170.512693, altitude: 145.4m

Battery Voltage = 3.805 V

BME680 sensor data:

Humidity:44.864 %RH

Temperature:23.56 degree

Pressure:992.47 hPa

Gas_resistance: 16572 ohms

LIS3DH sensor data:ACC_X: 12mg, ACC_Y: 12mg, ACC_Z: -1003mg

[LoRa]: send error 87

Go to Sleep.

at+get_config=lora:status

Wake up.

at+get_config=lora:status

OK.


==============LoRaWAN Status List================

Work Mode: LoRaWAN

Region: AS923

Send_interval: 300s

Auto send status: true.

Send_interval work at sleep

Join_mode: OTAA

DevEui: 60C5A8FFFE6D0051

AppEui: 00137A1000000000

AppKey: 5A6967426565416C6C69616E63653039

Class: A

Joined Network:true

IsConfirm: false

AdrEnable: false

EnableRepeaterSupport: false

RX2_CHANNEL_FREQUENCY: 923200000, RX2_CHANNEL_DR:2

RX_WINDOW_DURATION: 3000ms

RECEIVE_DELAY_1: 1000ms

RECEIVE_DELAY_2: 2000ms

JOIN_ACCEPT_DELAY_1: 5000ms

JOIN_ACCEPT_DELAY_2: 6000ms

Current Datarate: 2

Primeval Datarate: 2

ChannelsTxPower: 0

UpLinkCounter: 0

DownLinkCounter: 0

===================List End======================


I am having the exact same error (send error 87) with my 5205 and the 3.0.11H firmware. Since I can’t configure the LoRa packets, I am not sure how the packet can be too long.

Going to go back to 3.0.10H and to see if that works…

Just to confirm, the 3.0.10H version works fine. I wasn’t able to get the firmware to update w/o reinstalling the bootloader, but that is a different issue.

Looking forward to 3.0.12H… -:slight_smile:

image
When you send this command, this is what you get.You’d better check if the last command was sent successfully.
image

Hi!You can follow the instructions to upgrade.
Get_Start_with_RAK5205_WisTrio.pdf