Receiver sensitivity limited to -105dBm - how to improve?

I am in the process of updating one of my products to replace a TI transceiver with a SX1280 to extend the range of my system.

I am using the LoRa modem as I only need a low bit rate and longer range. I have a basic peer to peer system setup to test different bit rates.

Whatever settings I try to achieve the lowest receiver sensitivities in the spec sheet, I cant get better than -105dBm. I have taken the system to test away from the sources of RF noise, the results do not change. Also I have tried the higher power receiver mode, this doesn’t improve matters.

What am I missing? Any advice would be much appreciated.


Could you tell me more about the hardware and the radio settings that you are using please ?


One more question, how do you measure the rssi ? with which function ?

I would tend to ignore the RSSI at the limit of reception, its the SNR that in practice is a more practical indication of the limit of reception.

I have tested the SX1280 at up to 89km, BW406khz & SF12. At the point reception was dropping out the receiver was reporting RSSI -110dBm, SNR -20dB.

On another ocaision, 85km, slightly different setup, reception was dropping out at a reported RSSI of -112dBm SNR -23db.

I am use the SX1280 c code driver, adapted to run on a PIC24F. The hardware is designed in house and I have used the Johanson Technology matched filter which is optimised for the SX1280. I followed their PCB reference design.

Signal level values are pulled from the SX1280 using SX1280GetPacketStatus which is part of the driver. A PacketStatus_t structure is returned with info on signal levels and crc status etc…

These are the settings

modulationParams.PacketType = PACKET_TYPE_LORA;
modulationParams.Params.LoRa.SpreadingFactor = LORA_SF12;
modulationParams.Params.LoRa.Bandwidth = LORA_BW_0400;
modulationParams.Params.LoRa.CodingRate = LORA_CR_LI_4_5;

I will double check the SNR. I have a LAMBDA80C-24D from RF solutions, I can compare it with the SNR achieved by that off the shelf module. Thanks for the advice on the SNR, I will focus on this more. The good news is that my early tests are showing that this chip is proving to be a significant upgrade over the existing one I am using by TI.

My application is rather unusual, my product communicates inside gas filled pipelines (using them like a wave guide). Ranges are limited to the 100’s of meters so I have many repeaters. I have developed my own networking stack to build a linear network to allow for many 100’s of hops with all nodes battery powered.

The lowest CRC value I have seen coming from the SX1280 registers is circa -115dBm.

Do note that as per the datasheet to arrive at the ‘real’ RSSI you are supposed to reduce it by the SNR value when SNR is below 0.

So the SNR value may give you a clues as to what is happening.

Hi Matt,

The RSSI will permit you to measure the power of the LoRa signal down to the noise floor of the channel. Then as the LoRa signal goes below the noise floor (negative SNR) you can subtract the SNR from the RSSI to give you the signal power. However, this is not a reliable way to determine what signal power your radio is receiving.

The problem with relying on the signal power reported by the receiver is that it will not tell you if there are any other sources of loss in your RF chain. (For example an impedance mismatch or a de-tuned antenna). To reliably measure the receiver performance - and the only way to be sure what signal power you are receiving - is to inject a known, calibrated signal power at the input.

As an aside, your application should work well provided the diameter of the pipe is larger than the wavelength of the 2.4 GHz wave (in ‘permittivity’ of the gas). We’ve seen 2.4 GHz outperform lower frequency systems in similar environments.

Thanks, Tim