Signal Quality value with LTE modems

Dan Williams dcbw at redhat.com
Tue Mar 12 17:49:55 UTC 2019


On Tue, 2019-03-12 at 08:31 +0100, Sven Schwermer wrote:
> Hi,
> 
> I’m wondering what factors into the Signal Quality value for LTE
> modems. My suspicion is that only the “Signal” field of the +CIND 

ModemManager, by default, asks the modem what it thinks it's signal
quality is via CIND. That gives a number 0-5, and MM reports that as a
percentage.

ETSI 27.007 says for the "signal" CIND indicator:

"signal" signal quality (0-5)

so if the modem isn't presenting something useful here, I'm not sure
why it's implementing this indicator in the first place :)

Random question, what does +CSQ report? MM uses +CIND because it gives
async notifications, which +CSQ does not. CSQ is usually tied to RSSI
though, which still isn't as useful for LTE.

> message is used, but if I understood the manual for the ublox LARA-
> R211 correctly, that’s a poor quantity to use for this purpose as it
> only represents the RSSI. A better quantity would be the RSRP (and/or
> SNR). On my modem I’m getting a Signal Quality value between 0 and
> 20%, but the RSRP is better than -100dBm. On Android (
> https://android.googlesource.com/platform/frameworks/base/+/master/telephony/java/android/telephony/CellSignalStrengthLte.java#160
> ) this would have resulted in 2 out of 4 bars, i.e. ~60%.
> 
> I’m using ModemManager 1.8.2. What’s the best way of dealing with
> this? Should I use the signal API and do the conversion to a
> percentage/bar count myself?

You can use the Signal interface of ModemManager to pull out all lower-
level values from the modem. "mmcli -m X --signal-setup=<rate in
seconds>" starts and refreshes the signal values and "mmcli -m X --
signal-get" gets the current signal values.

While this is supported for many modems, for some modems we either
don't have the AT or other commands that report things like RSRP or
ECIO, or it hasn't been implemented for those devices. It looks like
the ModemManager 'ublox' plugin has support for extended signal
reporting through the ETSI 27.007 "+CESQ" command, assuming the R211
supports it.

Give the --signal-* stuff a try and see if that works for you. It's
also available via the D-Bus interface which gives you event
notifications on changes, if you're writing a custom app. If it doesn't
work for the R211 let us know and we can possibly debug further.

Dan



More information about the ModemManager-devel mailing list