I need to measure the quality of an NB-IoT signal. Is it possible to obtain RSRP, RSSI RSRQ or SINR using GNU Radio?
1 Answer
RSRP, RSSI, RSRQ
That's an actual average power. Sure, you can measure that after you've
- Calibrated your SDR receiver hardware – most hardware is not calibrated towards any specific reference power (or voltage or current), but just proportional. "1" means "this is the maximum value my ADC can give me"; to which physical on-the-air power depends on the gain of everything from antenna over cable over LNA, mixer, filter, ADC… So. You need to use a calibrated reference feeding a known power into your SDR receiver at the same frequency, gain and bandwidth settings, and then compare that to the values you observe to get a calibration factor. It's easy if you write it down! Just an unknown factor between "amplitude in" and "amplitude seen in digital" that you need to make known.
- Written a demodulator (including synchronization!) for NB-IoT, which is LTE-style OFDM frames.
Then, you can just throw the RSRP etc formulas at it (would have to look it up); they're just formulas based on observed powers in pilots etc.
SINR
This you can do without calibration: Build a working demodulator, demodulate, then "re-modulate" the same data, apply the inverse of your equalizer (easy, because that's point-wise multiplication in frequency domain, fyeah OFDM!), and then compare the power in that (which all still a digital baseband signal!) with the digital power you observed. The ratio is a decision-based estimate for the SINR, and is a pretty good estimate as long as you can correctly demodulate and decide, i.e. for higher SNRs.
For lower SNRs, you'd still do the synchronization and OFDM demodulation, but then would probably go for moment-based estimation on the symbols following modulaitons (mostly: PSKs) where that's possible, or just work out an estimate solely based on the pilot symbols.