@CurlyWurly I was struggling with the same issue about the rssi value.
LMIC, RadioHead, HopeRF, and Semtech all use different values.
The semtech datasheet says this.
RSSI[dBm] = -157 + Rssi (using HF output port, SNR >= 0)
RSSI[dBm] = -164 + Rssi (using LF output port, SNR >= 0)
(see section 5.5.5 for details)
and in section 5.5.5
The constants, -157 and -164, may vary with the front-end setup of the SX1276/77/78/79 (LnaBoost =1 or 0,presence of an external LNA, mismatch at the LNA input…). It is recommended to adjust these values with a single-point
calibration procedure to increase RSSI accuracy.
So with LnaBoost enabled I used this function int16_t rssi = (readReg(RegPktRssiValue) - 157);
and for the snr value float snr = ((int8_t)readReg(RegPktSnrValue)) * 0.25;
But I am not 100% sure.