QUECTEL EC20/EC21. Several drivers supported, which one is better to use?
José
Joseddg92 at gmail.com
Thu Sep 8 08:31:12 UTC 2016
This is the output of those commands:
qmicli -d /dev/cdc-wdm0 --dms-read-user-data
[/dev/cdc-wdm0] User data read:
Size: '0' bytes
Contents:
qmicli -d /dev/cdc-wdm0 --dms-uim-get-state
error: couldn't get UIM state: QMI protocol error (94): 'NotSupported'
On Wed, Sep 7, 2016 at 6:32 PM, Dan Williams <dcbw at redhat.com> wrote:
> On Wed, 2016-09-07 at 17:05 +0200, José wrote:
>> Hi Dan,
>>
>> thanks for your answer.
>>
>> I compiled libqmi-1.12.6-r0.1.cortexa9hf_vfp_neon.rpm (notice that it
>> is an older version, it was just simpler on my environment) with the
>> change you proposed. After that, the command seems to work:
>>
>> # qmicli -d /dev/cdc-wdm0 --dms-get-operating-mode
>> [/dev/cdc-wdm0] Operating mode retrieved:
>> Mode: 'online'
>> HW restricted: 'no'
>>
>> So is the problem in the modem firmware reporting an older DMS that
>> what it is really using, or is it in libqmi?
>
> It depends. There are two options:
>
> 1) The device lies about its supported DMS version and it actually
> supports a newer DMS version, but mis-reports it. Firmware bug, but
> something we probably have to work around.
>
> 2) The command is actually supported in DMS 1.0 but the information we
> had indicated it's only supported in 1.1. libqmi bug, and we can fix
> this.
>
> To figure this out, let's modify an existing message that clearly isn't
> supported in very early DMS versions. So change the version in
> data/qmi-service-dms.json for the "Read User Data" and "UIM Get State"
> messages to "1.0" and rebuild/reinstall.
>
> Then, what is the result of:
>
> qmicli -d /dev/cdc-wdm0 --dms-read-user-data
> qmicli -d /dev/cdc-wdm0 --dms-uim-get-state
>
> Dan
>
>> However, ModemManager still does not work because of the other
>> message
>> (I recompiled it against the patched libqmi library):
>>
>> ModemManager[710]: <warn> couldn't load Supported Bands: 'QMI
>> operation failed: Cannot send message: QMI service 'dms' version
>> '1.3'
>> required, got version '1.0''
>> ModemManager[710]: <warn> Modem couldn't be initialized: Couldn't
>> check unlock status: Couldn't get SIM lock status after 6 retries
>> ModemManager[710]: <info> Modem: state changed (unknown -> failed)
>>
>> Will this allow a similar fix?
>>
>> On Wed, Sep 7, 2016 at 4:29 PM, Dan Williams <dcbw at redhat.com> wrote:
>> >
>> > On Wed, 2016-09-07 at 15:33 +0200, José wrote:
>> > >
>> > > Maybe I was wrong. I am trying now with the last versions but it
>> > > is
>> > > still not working:
>> > >
>> > > ModemManager 1.6.0
>> > > libqmi-1.16.0-r0.4.cortexa9hf_vfp_neon
>> > >
>> > > The problem is still reproducible:
>> > Interesting; even though it's a recent device, it's still
>> > advertising
>> > DMS 1.0.
>> >
>> > It may be that Get Operating Mode was present in DMS 1.0 and we
>> > simply
>> > don't have any examples of that. So you could try to modify libqmi
>> > and
>> > see if that works.
>> >
>> > Look in data/qmi-service-dms.json and look for "Get Operating
>> > Mode".
>> > Change the "1.1" there to "1.0", rebuild, and reinstall
>> > libqmi. Then
>> > see if you can run "qmicli -d /dev/cdc-wdm0 --dms-get-operating-
>> > mode".
>> > Does that work?
>> >
>> > Dan
>> >
>> > >
>> > > ModemManager[995]: <info> ModemManager (version 1.6.0) starting
>> > > in
>> > > system bus...
>> > > ModemManager[995]: [/dev/cdc-wdm0] Opening device with flags
>> > > 'version-info, proxy'...
>> > > ModemManager[995]: cannot connect to proxy: Could not connect:
>> > > Connection refused
>> > > ModemManager[995]: spawning new qmi-proxy (try 1)...
>> > > ModemManager[995]: [/dev/cdc-wdm0] Checking version info (10
>> > > retries)...
>> > > ModemManager[995]: [/dev/cdc-wdm0] QMI Device supports 25
>> > > services:
>> > > ModemManager[995]: [/dev/cdc-wdm0] ctl (1.5)
>> > > ModemManager[995]: [/dev/cdc-wdm0] wds (1.67)
>> > > ModemManager[995]: [/dev/cdc-wdm0] dms (1.0)
>> > > ModemManager[995]: [/dev/cdc-wdm0] nas (1.25)
>> > > ModemManager[995]: [/dev/cdc-wdm0] qos (1.12)
>> > > ModemManager[995]: [/dev/cdc-wdm0] wms (1.10)
>> > > ModemManager[995]: [/dev/cdc-wdm0] auth (1.3)
>> > > ModemManager[995]: [/dev/cdc-wdm0] at (1.2)
>> > > ModemManager[995]: [/dev/cdc-wdm0] voice (2.1)
>> > > ModemManager[995]: [/dev/cdc-wdm0] cat2 (2.24)
>> > > ModemManager[995]: [/dev/cdc-wdm0] uim (1.46)
>> > > ModemManager[995]: [/dev/cdc-wdm0] pbm (1.4)
>> > > ModemManager[995]: [/dev/cdc-wdm0] test (1.0)
>> > > ModemManager[995]: [/dev/cdc-wdm0] loc (2.0)
>> > > ModemManager[995]: [/dev/cdc-wdm0] sar (1.0)
>> > > ModemManager[995]: [/dev/cdc-wdm0] ts (1.0)
>> > > ModemManager[995]: [/dev/cdc-wdm0] tmd (1.0)
>> > > ModemManager[995]: [/dev/cdc-wdm0] wda (1.16)
>> > > ModemManager[995]: [/dev/cdc-wdm0] csvt (1.1)
>> > > ModemManager[995]: [/dev/cdc-wdm0] coex (1.0)
>> > > ModemManager[995]: [/dev/cdc-wdm0] pdc (1.0)
>> > > ModemManager[995]: [/dev/cdc-wdm0] rfrpe (1.0)
>> > > ModemManager[995]: [/dev/cdc-wdm0] dsd (1.0)
>> > > ModemManager[995]: [/dev/cdc-wdm0] unknown [0x30] (1.0)
>> > > ModemManager[995]: [/dev/cdc-wdm0] unknown [0x36] (1.0)
>> > > ModemManager[995]: <info> Creating modem with plugin 'Generic'
>> > > and
>> > > '2' ports
>> > > ModemManager[995]: <info> Modem for device at
>> > > '/sys/devices/soc0/soc.0/2100000.aips-
>> > > bus/2184200.usb/ci_hdrc.1/usb1/1-1/1-1.3'
>> > > successfully created
>> > > ModemManager[995]: [/dev/cdc-wdm0] Opening device with flags
>> > > 'version-info, proxy'...
>> > > ModemManager[995]: [/dev/cdc-wdm0] Checking version info (10
>> > > retries)...
>> > > ModemManager[995]: [/dev/cdc-wdm0] QMI Device supports 25
>> > > services:
>> > > ModemManager[995]: [/dev/cdc-wdm0] ctl (1.5)
>> > > ModemManager[995]: [/dev/cdc-wdm0] wds (1.67)
>> > > ModemManager[995]: [/dev/cdc-wdm0] dms (1.0)
>> > > ModemManager[995]: [/dev/cdc-wdm0] nas (1.25)
>> > > ModemManager[995]: [/dev/cdc-wdm0] qos (1.12)
>> > > ModemManager[995]: [/dev/cdc-wdm0] wms (1.10)
>> > > ModemManager[995]: [/dev/cdc-wdm0] auth (1.3)
>> > > ModemManager[995]: [/dev/cdc-wdm0] at (1.2)
>> > > ModemManager[995]: [/dev/cdc-wdm0] voice (2.1)
>> > > ModemManager[995]: [/dev/cdc-wdm0] cat2 (2.24)
>> > > ModemManager[995]: [/dev/cdc-wdm0] uim (1.46)
>> > > ModemManager[995]: [/dev/cdc-wdm0] pbm (1.4)
>> > > ModemManager[995]: [/dev/cdc-wdm0] test (1.0)
>> > > ModemManager[995]: [/dev/cdc-wdm0] loc (2.0)
>> > > ModemManager[995]: [/dev/cdc-wdm0] sar (1.0)
>> > > ModemManager[995]: [/dev/cdc-wdm0] ts (1.0)
>> > > ModemManager[995]: [/dev/cdc-wdm0] tmd (1.0)
>> > > ModemManager[995]: [/dev/cdc-wdm0] wda (1.16)
>> > > ModemManager[995]: [/dev/cdc-wdm0] csvt (1.1)
>> > > ModemManager[995]: [/dev/cdc-wdm0] coex (1.0)
>> > > ModemManager[995]: [/dev/cdc-wdm0] pdc (1.0)
>> > > ModemManager[995]: [/dev/cdc-wdm0] rfrpe (1.0)
>> > > ModemManager[995]: [/dev/cdc-wdm0] dsd (1.0)
>> > > ModemManager[995]: [/dev/cdc-wdm0] unknown [0x30] (1.0)
>> > > ModemManager[995]: [/dev/cdc-wdm0] unknown [0x36] (1.0)
>> > > ModemManager[995]: [/dev/cdc-wdm0] Reading expected data format
>> > > from:
>> > > /sys/class/net/wwan0/qmi/raw_ip
>> > > ModemManager[995]: [/dev/cdc-wdm0] Opening device with flags
>> > > 'version-info, net-802-3, net-no-qos-header, proxy'...
>> > > ModemManager[995]: [/dev/cdc-wdm0] Checking version info (10
>> > > retries)...
>> > > ModemManager[995]: [/dev/cdc-wdm0] QMI Device supports 25
>> > > services:
>> > > ModemManager[995]: [/dev/cdc-wdm0] ctl (1.5)
>> > > ModemManager[995]: [/dev/cdc-wdm0] wds (1.67)
>> > > ModemManager[995]: [/dev/cdc-wdm0] dms (1.0)
>> > > ModemManager[995]: [/dev/cdc-wdm0] nas (1.25)
>> > > ModemManager[995]: [/dev/cdc-wdm0] qos (1.12)
>> > > ModemManager[995]: [/dev/cdc-wdm0] wms (1.10)
>> > > ModemManager[995]: [/dev/cdc-wdm0] auth (1.3)
>> > > ModemManager[995]: [/dev/cdc-wdm0] at (1.2)
>> > > ModemManager[995]: [/dev/cdc-wdm0] voice (2.1)
>> > > ModemManager[995]: [/dev/cdc-wdm0] cat2 (2.24)
>> > > ModemManager[995]: [/dev/cdc-wdm0] uim (1.46)
>> > > ModemManager[995]: [/dev/cdc-wdm0] pbm (1.4)
>> > > ModemManager[995]: [/dev/cdc-wdm0] test (1.0)
>> > > ModemManager[995]: [/dev/cdc-wdm0] loc (2.0)
>> > > ModemManager[995]: [/dev/cdc-wdm0] sar (1.0)
>> > > ModemManager[995]: [/dev/cdc-wdm0] ts (1.0)
>> > > ModemManager[995]: [/dev/cdc-wdm0] tmd (1.0)
>> > > ModemManager[995]: [/dev/cdc-wdm0] wda (1.16)
>> > > ModemManager[995]: [/dev/cdc-wdm0] csvt (1.1)
>> > > ModemManager[995]: [/dev/cdc-wdm0] coex (1.0)
>> > > ModemManager[995]: [/dev/cdc-wdm0] pdc (1.0)
>> > > ModemManager[995]: [/dev/cdc-wdm0] rfrpe (1.0)
>> > > ModemManager[995]: [/dev/cdc-wdm0] dsd (1.0)
>> > > ModemManager[995]: [/dev/cdc-wdm0] unknown [0x30] (1.0)
>> > > ModemManager[995]: [/dev/cdc-wdm0] unknown [0x36] (1.0)
>> > > ModemManager[995]: [/dev/cdc-wdm0] Setting network port data
>> > > format...
>> > > ModemManager[995]: [/dev/cdc-wdm0] Network port data format
>> > > operation
>> > > finished
>> > > ModemManager[995]: [/dev/cdc-wdm0] Allocating new client ID...
>> > > ModemManager[995]: [/dev/cdc-wdm0] Registered 'dms' (version 1.0)
>> > > client with ID '2'
>> > > ModemManager[995]: [/dev/cdc-wdm0] Allocating new client ID...
>> > > ModemManager[995]: [/dev/cdc-wdm0] Registered 'nas' (version
>> > > 1.25)
>> > > client with ID '3'
>> > > ModemManager[995]: [/dev/cdc-wdm0] Allocating new client ID...
>> > > ModemManager[995]: [/dev/cdc-wdm0] Registered 'wms' (version
>> > > 1.10)
>> > > client with ID '1'
>> > > ModemManager[995]: [/dev/cdc-wdm0] Allocating new client ID...
>> > > ModemManager[995]: [/dev/cdc-wdm0] Registered 'uim' (version
>> > > 1.46)
>> > > client with ID '1'
>> > > ModemManager[995]: <warn> couldn't load Supported Bands: 'QMI
>> > > operation failed: Cannot send message: QMI service 'dms' version
>> > > '1.3'
>> > > required, got version '1.0''
>> > > ModemManager[995]: <warn> couldn't load Power State: 'QMI
>> > > operation
>> > > failed: Cannot send message: QMI service 'dms' version '1.1'
>> > > required,
>> > > got version '1.0''
>> > > ModemManager[995]: <warn> Modem couldn't be initialized:
>> > > Couldn't
>> > > check unlock status: Couldn't get SIM lock status after 6 retries
>> > > ModemManager[995]: <info> Modem: state changed (unknown ->
>> > > failed)
>> > >
>> > >
>> > > The firmware on the modem is pretty new:
>> > >
>> > > Hardware | manufacturer: 'QUALCOMM INCORPORATED'
>> > > | model: '0'
>> > > | revision: 'EC21EFAR02A02M4G 1 [Mar 21 2016
>> > > 11:00:00]'
>> > > | supported: 'gsm-umts
>> > > | lte
>> > > | gsm-umts, lte'
>> > > | current: 'gsm-umts, lte'
>> > > | equipment id: '861108030008592'
>> > >
>> > >
>> > > Could you provide any help?
>> > >
>> > > Thanks
>> > >
>> > > On Wed, Sep 7, 2016 at 11:31 AM, José <Joseddg92 at gmail.com>
>> > > wrote:
>> > > >
>> > > >
>> > > > Hi Thomas,
>> > > >
>> > > > thanks for the advice! The EC20 is workign fine. For the EC21,
>> > > > I
>> > > > get
>> > > > the following error:
>> > > >
>> > > > 'QMI operation failed: Cannot send message: QMI service 'dms'
>> > > > version
>> > > > '1.1' required, got version '1.0''
>> > > >
>> > > > I suspect that can be fixed but just upgrading ModemManager or
>> > > > libqmi
>> > > > (or maybe both). Is that correct?
>> > > >
>> > > > On Tue, Sep 6, 2016 at 9:51 PM, Thomas Schäfer <tschaefer at t-onl
>> > > > ine.
>> > > > de> wrote:
>> > > > >
>> > > > >
>> > > > > Am Dienstag, 6. September 2016, 17:57:45 schrieb José:
>> > > > > >
>> > > > > >
>> > > > > > Hi,
>> > > > > >
>> > > > > > I am planning to test ModemManager with QUECTEL EC20 and
>> > > > > > EC21
>> > > > > > cellular
>> > > > > > modems. These modems support the following drivers:
>> > > > > > * USB Serial (option.c)
>> > > > > > * CDC ACM
>> > > > > > * GobiNet
>> > > > > > * QMI WWAN
>> > > > > >
>> > > > > > What is the best approach for trying to use ModemManager?
>> > > > > QMI WWAN, option.c
>> > > > >
>> > > > >
>> > > > > >
>> > > > > >
>> > > > > > Should I
>> > > > > > enable all drivers?
>> > > > > No.
>> > > > >
>> > > > >
>> > > > > >
>> > > > > >
>> > > > > >
>> > > > > > Could you recommend which one of those to enable? Thanks
>> > > > > https://sigquit.wordpress.com/2014/06/11/qmiwwan-or-gobinet/
>> > > > >
>> > > > >
>> > > > >
>> > > > > I think this blog is still valid.
>> > > > >
>> > > > >
>> > > > > Thomas
>> > > _______________________________________________
>> > > ModemManager-devel mailing list
>> > > ModemManager-devel at lists.freedesktop.org
>> > > https://lists.freedesktop.org/mailman/listinfo/modemmanager-devel
More information about the ModemManager-devel
mailing list