QMI connection EC25-E module

Hi, I’m trying to configure an internet connection with EC25-E module and qmi protocol on a jetson Nano.

I’m using this linux version:

root@belabox:/# uname -a
Linux belabox 4.9.299-belabox #4 SMP PREEMPT Sun Jun 4 23:39:47 BST 2023 aarch64 aarch64 aarch64 GNU/Linux

The module is well detected when it’s plugged (USB - Bus 001 Device 004):

root@belabox:/# lsusb
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 004: ID 2c7c:0125
Bus 001 Device 002: ID 1a40:0801 Terminus Technology Inc.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

The linux image I use don’t implement the qmi_wwan driver so I installed the quectel qmi_wwan_q driver following to the documentation. It seems to be correctly implemented as you can see here:

root@belabox:/# lsusb -t
/:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=tegra-xusb/4p, 5000M
/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=tegra-xusb/5p, 480M
    |__ Port 3: Dev 2, If 0, Class=Hub, Driver=hub/4p, 480M
        |__ Port 1: Dev 4, If 0, Class=Vendor Specific Class, Driver=option, 480M
        |__ Port 1: Dev 4, If 1, Class=Vendor Specific Class, Driver=option, 480M
        |__ Port 1: Dev 4, If 2, Class=Vendor Specific Class, Driver=option, 480M
        |__ Port 1: Dev 4, If 3, Class=Vendor Specific Class, Driver=option, 480M
        |__ Port 1: Dev 4, If 4, Class=Vendor Specific Class, Driver=qmi_wwan_q, 480M

With the modem manager, I can see the modem:

root@belabox:/# mmcli -L
    /org/freedesktop/ModemManager1/Modem/1 [Quectel] EC25

And here is some details about the modem:

root@belabox:/# mmcli -m 1
  --------------------------------
  General  |            dbus path: /org/freedesktop/ModemManager1/Modem/1
           |            device id: 88598c5b2f7c869bbd744022….
  --------------------------------
  Hardware |         manufacturer: Quectel
           |                model: EC25
           |             revision: EC25EFAR06A04M4G
           |            supported: gsm-umts, lte
           |              current: gsm-umts, lte
           |         equipment id: 862348057226573
  --------------------------------
  System   |               device: /sys/devices/70090000.xusb/usb1/1-3/1-3.1
           |              drivers: qmi_wwan_q, option1
           |               plugin: Generic
           |         primary port: ttyUSB2
           |                ports: ttyUSB0 (qcdm), ttyUSB2 (at), ttyUSB3 (at), wwan0 (net)
  --------------------------------
  Status   |       unlock retries: sim-pin (3), sim-pin2 (3), sim-puk (10), sim-puk2 (10)
           |                state: connected
           |          power state: on
           |          access tech: lte
           |       signal quality: 80% (recent)
  --------------------------------
  Modes    |            supported: allowed: 2g, 3g, 4g; preferred: none
           |              current: allowed: 2g, 3g, 4g; preferred: none
  --------------------------------
  IP       |            supported: ipv4, ipv6, ipv4v6
  --------------------------------
  3GPP     |                 imei: 8623480….
           |        enabled locks: sim
           |          operator id: 20810
           |        operator name: F SFR
           |         registration: home
  --------------------------------
  3GPP EPS | ue mode of operation: csps-2
  --------------------------------
  SIM      |            dbus path: /org/freedesktop/ModemManager1/SIM/1
  --------------------------------
  Bearer   |            dbus path: /org/freedesktop/ModemManager1/Bearer/1

Note that the wwan0 (net) has been added since I installed the qmi_wwan_q driver. (Before, only ttyUSB0, ttyUSB2 and ttyUSB3 were present). It seems to be missing a cdc-wdm0 (qmi) port?

I checked the usbnet configuration of the modem

AT COMMAND TEST – AT+QCFG=”usbnet”?
root@belabox:/# busybox microcom /dev/ttyUSB2
+CIEV: 1,5
+QCFG: "usbnet",0

The network manager returns the following devices:

root@belabox:/# nmcli device
DEVICE   TYPE      STATE      CONNECTION
l4tbr0   bridge    unmanaged  --
dummy0   dummy     unmanaged  --
eth0     ethernet  unmanaged  --
rndis0   ethernet  unmanaged  --
usb0     ethernet  unmanaged  --
ttyUSB2  gsm       unmanaged  --
lo       loopback  unmanaged  --

Only the ttyUSB2 is available.
I added a configuration file ttyUSB2.conf to change the state of ttyUSB2 device

[keyfile]
unmanaged-devices=none

I could have a connection using this port but it creates as expected a PPP connection.

What do you suggest to have the qmi connection working?

Thank you!

Hi @Frederic
If you compile the QMI_wwan driver, I can send you the Quectel_QConnectManager dial-up tool, and directly use the tool to dial up and connect to the network.

qmi_wwan_q could not be recoginzed by the ModemManager and libqmi.