Sierra/ZTE LTE modem gives no signal quality in LTE mode (only in 3G/2G mode)

Bug #1060831 reported by Marius B. Kotsbak on 2012-10-03
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
ModemManager
Fix Committed
Undecided
Unassigned
modemmanager (Ubuntu)
High
Unassigned

Bug Description

In LTE mode, the sierra modem (MC7710) gives no indication of signal quality in nm-applet. It looks like icon "gsm-3g-none.svg". I suspect this is caused by this in the modemmanager debug log when connected:

modem-manager[25672]: <debug> [1349256755.558392] [mm-at-serial-port.c:334] debug_log(): (ttyUSB3): --> 'AT*CNTI=0<CR>'
modem-manager[25672]: <debug> [1349256755.579056] [mm-at-serial-port.c:334] debug_log(): (ttyUSB3): <-- '<CR><LF>*CNTI: 0,LTE<CR><LF><CR><LF>OK<CR><LF>'
modem-manager[25672]: <debug> [1349256758.802283] [mm-at-serial-port.c:334] debug_log(): (ttyUSB3): --> 'AT+CIND?<CR>'
modem-manager[25672]: <debug> [1349256758.821538] [mm-at-serial-port.c:334] debug_log(): (ttyUSB3): <-- '<CR><LF>+CIND: 5,0,1,1,0,0,1,0<CR><LF><CR><LF>OK<CR><LF>'

Seems like the signal quality is the second number:

Oct 1 19:23:39 marius-T1005 ModemManager[22170]: <debug> [1349112219.280233] [mm-at-serial-port.c:392] debug_log():
(ttyUSB3): <-- '<CR><LF>+CIND: ("battchg",(0-5)),("signal",(0-5)),("service",(0-1)),("call",(0-1)),("roam",(0-1)),("s
msfull",(0-1)),("GPRS coverage",(0-1)),("callsetup",(0-3))<CR><LF><CR><LF>OK<CR><LF>'
Oct 1 19:23:39 marius-T1005 ModemManager[22170]: <debug> [1349112219.280871] [mm-broadband-modem.c:1704] cind_format
_check_ready(): Modem supports signal quality indications via CIND at index '2'(min: 0, max: 5)

which is reported as zero. The signal is good (I measure download rate of 37 mbits/s), and in 3G/2G mode I get the correct signal quality indication.

Could it be that MM should not use +CIND but instead +CSQ?

ProblemType: Bug
DistroRelease: Ubuntu 12.10
Package: network-manager-gnome 0.9.6.2-0ubuntu5
Uname: Linux 3.6.0-030600rc6-generic i686
ApportVersion: 2.6.1-0ubuntu1
Architecture: i386
Date: Wed Oct 3 11:19:55 2012
EcryptfsInUse: Yes
IpRoute:
 default via 89.9.192.92 dev wwan0 proto static
 89.9.192.0/24 dev wwan0 proto kernel scope link src 89.9.192.92 metric 7
 169.254.0.0/16 dev wwan0 scope link metric 1000
NetworkManager.state:
 [main]
 NetworkingEnabled=true
 WirelessEnabled=false
 WWANEnabled=true
 WimaxEnabled=true
ProcEnviron:
 LANGUAGE=nb_NO:nb:no_NO:no:nn_NO:nn:en
 TERM=xterm
 PATH=(custom, no user)
 LANG=nb_NO.UTF-8
 SHELL=/bin/bash
RfKill:
 0: phy0: Wireless LAN
  Soft blocked: yes
  Hard blocked: no
SourcePackage: network-manager-applet
UpgradeStatus: Upgraded to quantal on 2012-08-31 (32 days ago)
nmcli-dev:
 DEVICE TYPE STATE DBUS-PATH
 wwan0 gsm connected /org/freedesktop/NetworkManager/Devices/2
 eth0 802-3-ethernet unavailable /org/freedesktop/NetworkManager/Devices/1
 wlan0 802-11-wireless unavailable /org/freedesktop/NetworkManager/Devices/0
nmcli-nm:
 RUNNING VERSION STATE NET-ENABLED WIFI-HARDWARE WIFI WWAN-HARDWARE WWAN
 running 0.9.7.0 connected enabled enabled disabled enabled enabled

Marius B. Kotsbak (mariusko) wrote :
tags: added: apport-collected
description: updated

apport information

description: updated
Changed in network-manager-applet (Ubuntu):
status: New → Invalid

It seems like CIND is preferred over CSQ (in mm-broadband-modem.c):

       if (MM_BROADBAND_MODEM (self)->priv->modem_cind_supported)
            signal_quality_cind (ctx);
        else
            signal_quality_csq (ctx);

but it seems like that is not smart in the Sierra case.

Marius B. Kotsbak (mariusko) wrote :

This is the real signal quality on the same location:

!GSTATUS:
Current Time: 3525 Temperature: 51
Bootup Time: 1 Mode: ONLINE
System mode: LTE PS state: Attached
LTE band: B7 LTE bw: 20 MHz
LTE Rx chan: 2850 LTE Tx chan: 20850
EMM state: Registered Normal Service
EMM connection:RRC Connected

RSSI (dBm): -82 Tx Power:
RSRP (dBm): -105 TAC: 0901 (2305)
RSRQ (dB): -7 Cell ID: 0212D90A (34789642)
SINR (dB): 13.0

+CSQ: 16,99

summary: - Sierra LTE modem gives no signal quality in LTE mode (only in 3G/2G
+ Sierra/ZTE LTE modem gives no signal quality in LTE mode (only in 3G/2G
mode)
Changed in modemmanager (Ubuntu):
status: New → Triaged
importance: Undecided → High
Marius B. Kotsbak (mariusko) wrote :

Same problem for a ZTE modem in LTE mode:

modem-manager[29629]: <debug> [1349262318.552754] [mm-at-serial-port.c:334] debug_log(): (ttyUSB3): --> 'AT+ZPAS?<CR>'
modem-manager[29629]: <debug> [1349262318.568652] [mm-at-serial-port.c:334] debug_log(): (ttyUSB3): <-- '<CR><LF>+ZPAS: "4G","PS_ONLY"<CR><LF><CR><LF>OK<CR><LF>'
modem-manager[29629]: <debug> [1349262321.803912] [mm-at-serial-port.c:334] debug_log(): (ttyUSB3): --> 'AT+CIND?<CR>'
modem-manager[29629]: <debug> [1349262321.827096] [mm-at-serial-port.c:334] debug_log(): (ttyUSB3): <-- '<CR><LF>+CIND: 5,0,1,1,0,0,1,2<CR><LF><CR><LF>OK<CR><LF>'

giving signal quality 0 even though it is quite good signal.

Weird... is this happening for every LTE modem out there?

We could have a new property in MMBroadbandModem specifying that +CSQ is always preferred over +CIND for signal quality updates (talking about git master here), so that plugins can set it when that happens.

Or, if the issue is really more generic and happens with most LTE modems out there, we could force using +CSQ when in LTE.

Marius B. Kotsbak (mariusko) wrote :

Well, those two modems have in common that they are both using Qualcomm chipsets (supporting QMI protocol), so it might just be a bug there.

I think there is such property in place, at least in the MM_06 branch. The question is just when we want to change the default. I am not sure if the indication in my modems are worse using CSQ than CIND in 3G mode (although CSQ seems more fine grained). Maybe we can detect when the CSQ value is bogous (e.g. "+CSQ: 99, 99") instead and only then use CIND?

On 10/03/2012 02:19 PM, Marius Kotsbak wrote:
> Well, those two modems have in common that they are both using Qualcomm
> chipsets (supporting QMI protocol), so it might just be a bug there.
>
> I think there is such property in place, at least in the MM_06 branch.
> The question is just when we want to change the default. I am not sure
> if the indication in my modems are worse using CSQ than CIND in 3G mode
> (although CSQ seems more fine grained). Maybe we can detect when the CSQ
> value is bogous (e.g. "+CSQ: 99, 99") instead and only then use CIND?
>

Do we get the proper values through QMI?

--
Aleksander

Marius B. Kotsbak (mariusko) wrote :

Yes:

marius@marius-T1005:~$ qmicli -d /dev/cdc-wdm0 --nas-get-signal-strength
[/dev/cdc-wdm0] Successfully got signal strength
Current:
    Network 'umts': '-104 dBm'
RSSI:
    Network 'umts': '-104 dBm'
ECIO:
    Network 'umts': '-13,5 dBm'

I assume it is nothing like CIND giving 0-5 signal level in QMI?

Marius B. Kotsbak (mariusko) wrote :

Another question is if the value in +CSQ has the same unit/range in 3G vs LTE mode.

+CSQ is usually defined as a value between 1 and 31; plus 99 for unknown. ModemManager scales this value to the expected [0,100] range.

The signal strength reported with QMI is based on RSSI, which we then convert to the same [0,100] range.

Marius B. Kotsbak (mariusko) wrote :

That means we can solve this by only changing the method to CIND when CSQ returns 99, and else use CSQ?

Not really, no. What I'm not sure is why CIND is preferred over CSQ by default.

Marius B. Kotsbak (mariusko) wrote :

See bug #682282 and the corresponding upstream bug report. That is why the default was changed.

Marius B. Kotsbak (mariusko) wrote :
Changed in network-manager-applet:
status: New → Fix Committed
affects: network-manager-applet → modemmanager
Changed in modemmanager (Ubuntu):
status: Triaged → In Progress

Got it; it's in my bzr branch locally, going to upload shortly.

Launchpad Janitor (janitor) wrote :

This bug was fixed in the package modemmanager - 0.6.0.0-0ubuntu4

---------------
modemmanager (0.6.0.0-0ubuntu4) quantal; urgency=low

  * debian/patches/git_fall_back_to_csq_cind_8bd6903.patch: fallback to +CSQ if
    +CIND reports a signal level of 0. (LP: #1060831)
  * debian/patches/git_move_cind_process_func_1dee45e.patch: moving the CIND
    processing function down a bit to make the above change cleaner. Cherry-pick
    from upstream.
  * debian/patches/ericsson_h5321gw_usbids.patch: Add another known USB ID for
    the Ericsson H5321gw. (LP: #1057956)
 -- Mathieu Trudel-Lapierre <email address hidden> Thu, 04 Oct 2012 16:38:54 -0400

Changed in modemmanager (Ubuntu):
status: In Progress → Fix Released
Marius B. Kotsbak (mariusko) wrote :

Works now, thanks!

no longer affects: network-manager-applet (Ubuntu)
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.