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.