Using qmicli with a Sierra Wireless EM7455

Friedrich Romstedt friedrichromstedt at gmail.com
Tue Jun 23 04:33:18 UTC 2020


Hello Aleksander,

Am Mo., 22. Juni 2020 um 09:25 Uhr schrieb Aleksander Morgado
<aleksander at aleksander.es>:
>
> What kernel version are you using? Being it Arch Linux, I would assume
> it's newer than 4.5, but we should confirm that first. EM7455 requires
> raw-ip support in the kernel, so the kernel must be newer than 4.5.
>
> Also, what libqmi version are you using?

The kernel is linux-5.7.4; libqmi is 1.24.41; libmbim, since it seems
to matter, is 1.22.0.

> > My resources for the proceeding I am reporting about here are: I
> > started out at [1]
> > https://wiki.archlinux.org/index.php/ThinkPad_mobile_Internet. I then
> > tried to follow step-by-step the commands in the script mentioned in
> > [1]: [2] https://github.com/penguin2716/qmi_setup. Googling for my
> > error message I ended up with during following [2] led me to [3]
> > https://lists.freedesktop.org/archives/libqmi-devel/2017-March/002193.html
> > and [4] https://bugzilla.redhat.com/show_bug.cgi?id=1379406. After
> > this the libqmi-devel mailing list came to my attention, so I am
> > asking now here for advice. I am not using any front-end tool; I would
> > like to use qmicli and qmi-network directly.
>
> Could you please let us know what your error message is? Please don't
> make me click all those links to try to guess what your issue is ;)

This was just the summary; the exact error message was:

> The call of `qmicli` in the abovementioned list failed with:
>
> error: couldn't set operating mode: QMI protocol error (60): 'InvalidTransition'

where the "call of qmicli in the abovementioned list" was:

$ qmicli -d /dev/cdc-wdm0 --dms-set-operating-mode online

> > [...]
> > $ ifconfig <dev> up
>
> You shouldn't do this. You should better not ifup the network
> interface until after the network has been started, because otherwise
> it may not allow you to change the net interface to raw-ip in the
> kernel.

Okay, my resource [2] (https://github.com/penguin2716/qmi_setup) did so.

> > $ qmicli -d /dev/cdc-wdm0 --dms-set-operating-mode online
>
> I would advice to always use the "-p" option when running qmicli
> commands, and also configure PROXY=yes in the qmi-network profile
> you're using. But for your initial assessment it may not be strictly
> necessary.

Why should I do so?

> > [/dev/cdc-wdm0] Operating mode retrieved:
> >     Mode: 'low-power'
> >     Reason: 'unknown'
> >     HW restricted: 'no'
>
> Ok, if the modem was in low-power mode and it didn't allow you to put
> it into online mode, please run:
> $ sudo qmicli -d /dev/cdc-wdm0 --dms-set-fcc-authentication

Okay.

> > In the desperate situation I found myself in I attempted to run `$
> > qmi-network /dev/cdc-wdm0 start` even though the device wasn't in the
> > 'online' mode.  This resulted in output:
>
> Nah, don't even try that.

Agreed.

> > Loading profile at /etc/qmi-network.conf...
> >     APN: internet.telekom
> >     APN user: telekom
> >     APN password: telekom
> >     qmi-proxy: no
> > Checking data format with 'qmicli -d /dev/cdc-wdm0 --wda-get-data-format '...
> > Device link layer protocol retrieved: raw-ip
> > Getting expected data format with 'qmicli -d /dev/cdc-wdm0
> > --get-expected-data-format'...
> > error: cannot get expected data format: Expected data format not
> > retrieved properly: Failed to open file
> > '/sys/class/net/wwp0s20f0u5i12/qmi/raw_ip': No such file or directory
> > [19 Jun 2020, 16:15:15] -Warning ** [/dev/cdc-wdm0] MBIM device wasn't
> > explicitly closed
>
> Ohhhhhhhh! Your EM7455 is running in MBIM mode, not in QMI mode!
> Time to switch to mbimcli and mbim-network :D Please try with those.
> Until now you have been running QMI commands "over MBIM", which is why
> you didn't notice major problems. Now you can also ignore all the
> comments above regarding the raw-ip requirement, that is a QMI thing
> only.

Should I send further messages to libmbim-devel at lists.freedesktop.org then?

> The problem getting online is legit though, you may still need the
> qmicli --dms-set-fcc-authentication run BEFORE mbimcli
> --set-radio-state=on.

> please switch to using the MBIM tools and see if you get more success
> on your testing :)

Okay.

I obtained some useful results; logs of all commands run are attached.
The network was started successfully, however with a line containing
the phrase 'Network error', a line which I do not really understand.
It states, amongst other things:

`Available data classes: 'lte' Current cellular class: 'gsm'`

The SIM is an LTE one.

After having run `mbim-network`, I tried to start `dhcpcd` on the
device, which failed by timeout (log is contained in the archive as
well, together with the Journal log).

Maybe the output of the call `$ mbim-network /dev/cdc-wdm0 start`
makes more sense to you than to me?

The IDs etc. running "xxx..." have been x-ed out by me.

Friedrich
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 2020-06-22_1821 Friedrich.tar.gz
Type: application/gzip
Size: 2107 bytes
Desc: not available
URL: <https://lists.freedesktop.org/archives/libqmi-devel/attachments/20200623/03002341/attachment.gz>


More information about the libqmi-devel mailing list