lmic/radio.c: Fix RSSI and SNR calculation
This commit is contained in:
parent
c963dbe1c6
commit
48734bca63
@ -790,8 +790,12 @@ void radio_irq_handler (u1_t dio) {
|
||||
// now read the FIFO
|
||||
readBuf(RegFifo, LMIC.frame, LMIC.dataLen);
|
||||
// read rx quality parameters
|
||||
LMIC.snr = readReg(LORARegPktSnrValue); // SNR [dB] * 4
|
||||
LMIC.rssi = readReg(LORARegPktRssiValue) - 125 + 64; // RSSI [dBm] (-196...+63)
|
||||
//LMIC.snr = readReg(LORARegPktSnrValue); // SNR [dB] * 4
|
||||
LMIC.snr = readReg(LORARegPktSnrValue) / 4;
|
||||
//LMIC.rssi = readReg(LORARegPktRssiValue) - 125 + 64; // RSSI [dBm] (-196...+63)
|
||||
LMIC.rssi = readReg(LORARegPktRssiValue) - 157; // RFI_HF for 868 and 915MHZ band
|
||||
if (LMIC.snr < 0)
|
||||
LMIC.rssi += LMIC.snr;
|
||||
} else if( flags & IRQ_LORA_RXTOUT_MASK ) {
|
||||
// indicate timeout
|
||||
LMIC.dataLen = 0;
|
||||
|
Loading…
Reference in New Issue
Block a user