Bug 93392

Summary: workarounds required to use U301/CMO6008/16d8:6008 USB CDMA modem with modern Linux kernel and ModemMamager
Product: ModemManager Reporter: Wladimir Mutel <mwg>
Component: generalAssignee: ModemManager bug user <modemmanager>
Status: RESOLVED MOVED QA Contact:
Severity: normal    
Priority: medium    
Version: 1.4   
Hardware: x86-64 (AMD64)   
OS: Linux (All)   
URL: https://bugs.launchpad.net/ubuntu/+source/modemmanager/+bug/1525392
Whiteboard:
i915 platform: i915 features:
Attachments: ModemManager debug log
NetworkManager debug log

Description Wladimir Mutel 2015-12-15 20:41:29 UTC
Dear maintainers,

I created Ubuntu bug at https://bugs.launchpad.net/ubuntu/+source/modemmanager/+bug/1525392 where you can find most of my findings on this topic. In short, to use this quite old modem (with firmware from y.2008), you need to blacklist qmi_wwan and cdc_wdm modules from loading into [modern] Linux kernel. Else, if these modules are loaded, ModemManager recognizes this modem as something new with QMI interface, and then complains about too small versions of some QMI services ('nas' and 'dms'). The same modem works well in usb/option mode under Ubuntu 12.04, but stops working under Ubuntu 14.04 and Debian 8.2 until you blacklist these modules. I am not sure where this should be fixed, at Linux kernel level or at ModemManager's, but in my view, subjecting a plain Linux user to blacklist new modules to keep compatibility with older modem is just unpleasant experience.

Please direct me to contact with appropriate Linux kernel developers if you see this way as more reasonable. Or is it reasonable to support older QMI nas/dms versions in ModemManager ?
Comment 1 Aleksander Morgado 2015-12-16 07:15:13 UTC
> Please direct me to contact with appropriate Linux kernel developers if you
> see this way as more reasonable. Or is it reasonable to support older QMI
> nas/dms versions in ModemManager ?

Could you get us ModemManager debug logs to see why MM doesn't like the device? FYI, old QMI versions should be totally supported; if for some reason a given method is not available we just log about it and keep on. The core functionality required to get the modem connected should be available even in very old QMI service versions.

To get debug logs, see:
http://www.freedesktop.org/wiki/Software/ModemManager/Debugging/
Comment 2 Wladimir Mutel 2015-12-16 09:32:01 UTC
Dear Aleksander,

Most of debugging logs taken from MM&NM I attached to the referred Launchpad ticket (I can copy them here if you need, I just think they are easily reviewable in Launchpad). MM first complains about low nas&dms versions, then reports 'DeviceUnsupported' and 'QMI operation failed: Transaction timed out'

One fresh addition from today : I had to apply the same workaround to enable operation of another HUAWEI CDMA modem with USB ids 12d1:140c. Same symptoms and same workaround (only a bit different versions of nas/dms services)

That's all on Debian 8.2 with kernel 3.16.x and MM 1.4.0-1
Comment 3 Wladimir Mutel 2015-12-16 09:35:48 UTC
(exact model is printed on its sticker as Huawei EC167)
Comment 4 Aleksander Morgado 2015-12-16 09:58:09 UTC
> 
> Most of debugging logs taken from MM&NM I attached to the referred Launchpad
> ticket (I can copy them here if you need, I just think they are easily
> reviewable in Launchpad). MM first complains about low nas&dms versions,
> then reports 'DeviceUnsupported' and 'QMI operation failed: Transaction
> timed out'
> 

No, there are no debug logs in Launchpad either, I had already checked that. We would need the debug logs to see what are the contents of the QMI messages being sent and to detect which one got timed out.

> One fresh addition from today : I had to apply the same workaround to enable
> operation of another HUAWEI CDMA modem with USB ids 12d1:140c. Same symptoms
> and same workaround (only a bit different versions of nas/dms services)
> 
> That's all on Debian 8.2 with kernel 3.16.x and MM 1.4.0-1

Would it be possible to test with the latest 1.4.12 stable release? That 1.4.0 is >1 year old.
Comment 5 Wladimir Mutel 2015-12-16 20:32:00 UTC
Created attachment 120551 [details]
ModemManager debug log
Comment 6 Wladimir Mutel 2015-12-16 20:32:59 UTC
Created attachment 120552 [details]
NetworkManager debug log
Comment 7 Wladimir Mutel 2015-12-16 20:39:52 UTC
Dear Aleksander,

I collected some debug logs as described in 'Debugging' wiki page and attached their gzipped texts.

These logs were collected from fairly up-to-date Ubuntu Xenial testing system, with kernel 4.4.0-040400rc5-generic, network-manager 1.0.4-0ubuntu7 and modemmanager 1.4.12-1ubuntu1. I had 'U301' modem plugged in, with modules qmi_wwan and cdc_wdm allowed to load (not blacklisted). 

Please review and respond. Unfortunately tomorrow I need to return this modem back, but I will try to get some similar modems in my hands to give further info on this case.
Comment 8 Wladimir Mutel 2015-12-16 21:40:02 UTC
(and btw, yes, the modem was not working same as with older kernel/mm/nm. blacklisting - did not test)
Comment 9 GitLab Migration User 2018-06-10 09:05:36 UTC
-- GitLab Migration Automatic Message --

This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity.

You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/mobile-broadband/ModemManager/issues/69.

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.