Reasons for ERROR96 in LoRa module

LoRa modules such as RAK4200 often have the advantages of ease of use, compactness, long transmission distance, and ultra-low power consumption. It is a very good long-distance wireless data transmission solution and is suitable for various applications that require remote data collection and low power consumption. , It follows the LoRaWAN 1.0.2 protocol, and also supports LoRa point-to-point communication function, which can help users quickly establish their own private long-distance LoRa network.

 

In actual use, when LoRa modules such as RAK4200 receive data, an error message may appear: ERROR 96.

This article introduces the root cause of this kind of error. If you encounter this kind of error, you can compare and row one by one to find out the real cause of the problem.

If you want to understand the secondary development of the LoRa module, please refer to the " Introduction to the LoRa Module Secondary Development ", if you want to understand the coverage of the LoRaWAN gateway, please refer to the article "The coverage of the LoRaWAN gateway in the urban environment ", if you want to understand the network capacity of the LoRaWAN gateway For calculation, please refer to " How to calculate the network capacity of the LoRaWAN gateway "

 

RX window when uploading data in LoRaWAN Class A mode
Figure 1 RX window when uploading data in LoRaWAN Class A mode

 

As shown in Figure 1, in the Class A mode of the LoRaWAN protocol, when a node uploads a data packet, there will be 2 RX windows immediately behind the TX window. For example, the TX window length is 1s, the RX1 window length is 1s, and then the RX2 window.

 

If ERROR 96 appears, it means that the RX2 window has timed out. There is only one situation that can cause the error of ERROR 96: when the LoRa node sends a confirmation upload packet, it will wait for the ACK confirmation packet, if it still does not receive the ACK confirmation packet until the RX2 window is closed , The error message of ERROR 96 will appear.

 

There are many possible reasons why the LoRa node has waited until the RX2 window is closed and failed to receive the ACK confirmation packet, as listed below:

1. If the LoRaWAN gateway does not receive the uplink data packet sent by the LoRa node, naturally there will be no downlink ACK behavior. Reasons such as wireless interference, poor signal or frequency mismatch can all cause this kind of packet loss.

2. The LoRaWAN gateway received the uplink data packet and forwarded it to the NS (the built-in server of the gateway), but when the NS processed the data packet, it found that there was a problem or there was a problem in the NS itself, which caused it to not generate an ACK and send it, the LoRa node naturally You won’t receive an ACK anymore.

3. The LoRaWAN gateway receives the uplink data packet and forwards it to the NS. The NS also successfully generates an ACK and sends it to the gateway, but the gateway fails to send the ACK from the LoRa radio frequency air interface due to business congestion or its own reasons.

4. The LoRaWAN gateway receives the uplink data packet and forwards it to the NS. The NS also successfully generates an ACK and sends it to the gateway. The gateway also successfully sends the ACK to the air interface through the LoRa radio frequency, but the LoRa node does not receive it, wireless interference, signal Poor, frequency mismatch, etc. will cause this kind of packet loss.

5. The LoRaWAN gateway receives the uplink data packet and forwards it to the NS. The NS also successfully generates an ACK and sends it to the gateway. The gateway also successfully sends the ACK to the air interface through the LoRa radio frequency, and the radio frequency end of the LoRa node also successfully receives the radio Signal, but when the bottom layer of the LoRa node is processing the received message, the parsing check finds that the message is wrong (for example, the signal is deformed and the data is distorted or the ACK message body is assembled incorrectly), and then the message is discarded , The upper layer program will also regard it as not receiving ACK.

 

Therefore, when we have ERROR 96, we can troubleshoot as follows:

1. Check whether the LoRaWAN gateway can receive the data sent by the LoRa node;

2. Check whether there is a problem with the data packet itself;

3. Check whether the built-in NS server of the LoRaWAN gateway can generate ACK and send it normally;

4. Check whether the entire network is congested;

5. Check whether the LoRa node can normally receive the data issued by the LoRaWAN gateway.

 

If the equipped LoRaWAN gateway has a more friendly operation and maintenance interface, such as the WebUI of the LoRaWAN gateway RAK7249 of Ricolink, you can view the status of all nodes associated with the gateway.

 

Schematic diagram of WebUI of RAK Huilian LoRaWAN gateway RAK7249
Figure 2 Schematic diagram of WebUI of RAK Huilian LoRaWAN gateway RAK7249

 

Figure 2 is a schematic diagram of the operation and maintenance interface provided by RAK Huilian's LoRaWAN gateway RAK7249. It can be seen that it can check whether the LoRa network is congested, the status of the package, etc., with the help of this operation and maintenance information, you can better discover LoRaWAN The status of the network can better troubleshoot and solve problems. A good operation and maintenance interface of the LoRaWAN gateway can help us better operate our IoT solutions.

 

This article introduces several reasons that cause ERROR 96 in the LoRa module, and how to troubleshoot.

Guess you like

Origin blog.csdn.net/RAKwireless/article/details/107178400