EM7430: Couldn't establish data connection with mbim interface

I’m having issues about Sierra Wireless AirPrime EM7430 module on an ARM aarch64 platform.
I want to set up a simple data connection and I found following instruction.

https://techship.com/faq/how-to-set-up-a-simple-data-connection-over-the-mbim-interface-using-libmbim-and-driver-cdc-mbim-in-linux/

But in my environment, Even if I follow the steps,
I get the following ProviderNotVisible error and the connection does not succeed.

# mbim-network /dev/cdc-wdm0 start

Loading profile at /etc/mbim-network.conf...
    APN: soracom.io
    APN auth protocol: PAP
    APN user: xxxx
    APN password: xxxx
    mbim-proxy: yes
Querying subscriber ready status 'mbimcli -d /dev/cdc-wdm0 --query-subscriber-ready-status --no-close --device-open-proxy'...
[/dev/cdc-wdm0] Subscriber ready status retrieved: 
                Ready state: 'initialized' 
                Subscriber ID: '44010313xxxxxxx' 
                SIM ICCID: '898110002312xxxxxxx' 
                Ready info: 'none' 
                Telephone numbers: (1) '0701062xxxx' [/dev/cdc-wdm0] 
                Session not closed: TRID: '4'
Saving state at /tmp/mbim-network-state-cdc-wdm0... (TRID: 4)

Querying registration state 'mbimcli -d /dev/cdc-wdm0 --query-registration-state --no-open=4 --no-close --device-open-proxy'...
[/dev/cdc-wdm0] Registration status: Network error: 'unknown' 
                Register state: 'searching' 
                Register mode: 'automatic' 
                Available data classes: 'unknown' 
                Current cellular class: 'gsm' 
                Provider ID: 'unknown' 
                Provider name: 'unknown' 
                Roaming text: 'unknown' 
                Registration flags: 'packet-service-automatic-attach' [/dev/cdc-wdm0] Session not closed: TRID: '6'
Saving state at /tmp/mbim-network-state-cdc-wdm0... (TRID: 6)

Attaching to packet service with 'mbimcli -d /dev/cdc-wdm0 --attach-packet-service --no-open=6 --no-close --device-open-proxy'...
error: operation failed: ProviderNotVisible
Saving state at /tmp/mbim-network-state-cdc-wdm0... (TRID: 8)

Starting network with 'mbimcli -d /dev/cdc-wdm0 --connect=apn='soracom.io',auth='PAP',username='xxxx',password='xxxx' --no-open=8 --no-close --device-open-proxy'...
error: operation failed: NotRegistered
Network start failed
[/dev/cdc-wdm0] Session not closed: TRID: '10'
Saving state at /tmp/mbim-network-state-cdc-wdm0... (TRID: 10)

What does *ProviderNotVisible* mean?
How to fix this problem? Thanks!

Hi @shinichiro.adachi

According to your log, I noticed that you are trying to establish data connection over mbim interface with a PDP connection authentication.

Before you start network connection with mbim, you can try to set PDP connection authentication with your APN and make sure that the device connect to network successfully.

About setting PDP connection authentication, from “AirPrime EM-MC74xx AT Command Reference r4” there are no AT command to configure the username and password on APN, but you can workaround follow the topic AT command to setup username and password on EM7565

After that, you can start network connection with mbim.

Thanks.

Hi ,@Donald

Thank you for your reply.

Before you start network connection with mbim, you can try to set PDP connection authentication
with your APN and make sure that the device connect to network successfully.

I checked the “QCPDPP” command that you suggested for the AT command to set username and passwd to the APN,
but it did not return an OK response at all.

# ubloxLTECommand -f "/dev/ttyUSB2" "AT$QCPDPP="
res = 1
# ubloxLTECommand -f "/dev/ttyUSB2" "AT$QCPDPP=?"
res = 1
# ubloxLTECommand -f "/dev/ttyUSB2" "AT$QCPDPP?"
res = 1

According to 「2130616 Extended AT Commands v8.pdf」,
there is no EM/MC7430 listed in "Table1-1 Supported AirPrime modules ".

The APN connection information can be found in /etc/mbim-network.conf.
Information is also passed to the mbimcli command during the mbim-network sequence.
Do I still need to set it up in advance?

Hi @shinichiro.adachi

You can check your SIM was locked by SIM PIN or not, make sure that the SIM was unlocked SIM PIN and try to set username and passwd to the APN again.

From the log

Attaching to packet service with 'mbimcli -d /dev/cdc-wdm0 --attach-packet-service --no-open=6 --no-close --device-open-proxy'...
error: operation failed: ProviderNotVisible
Saving state at /tmp/mbim-network-state-cdc-wdm0... (TRID: 8)

Starting network with 'mbimcli -d /dev/cdc-wdm0 --connect=apn='soracom.io',auth='PAP',username='xxxx',password='xxxx' --no-open=8 --no-close --device-open-proxy'...
error: operation failed: NotRegistered

Before starting network, the device try to attach to network but its not successfull.
So, I think you must be make the device atttach to network first.
Beside that, the device should be upgrade to latest FW.

Thanks.

Hi, @Donald

You can check your SIM was locked by SIM PIN or not,
make sure that the SIM was unlocked SIM PIN and try to set username and passwd to the APN again.

I think SIM doesn’t locked.
This is because other platforms can be connected without any processing such as unlocking.
And I confirmed it with the following command in EM7430.

# qmicli -d /dev/cdc-wdm0 --uim-get-card-status
[/dev/cdc-wdm0] Successfully got card status
Provisioning applications:
        Primary GW:   slot '1', application '1'
        Primary 1X:   session doesn't exist
        Secondary GW: session doesn't exist
        Secondary 1X: session doesn't exist
Slot [1]:
        Card state: 'present'
        UPIN state: 'not-initialized'
                UPIN retries: '0'
                UPUK retries: '0'
        Application [1]:
                Application type:  'usim (2)'
                Application state: 'ready'
                Application ID:
                        A0:00:00:00:87:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx
                Personalization state: 'ready'
                UPIN replaces PIN1: 'no'
                PIN1 state: 'disabled'
                        PIN1 retries: '3'
                        PUK1 retries: '10'
                PIN2 state: 'enabled-not-verified'
                        PIN2 retries: '3'
                        PUK2 retries: '10'
Slot [2]:
        Card state: 'absent'
        UPIN state: 'not-initialized'
                UPIN retries: '0'
                UPUK retries: '0'

Before starting network, the device try to attach to network but its not successfull.

I see. But Is it really support QCPDPP command by EM7430?
There is no QCPDPP words in “4117727 AirPrime EM-MC74xx AT Command Reference r4.pdf”,
and QCPDPP’s AT Help Command also doesn’t return OK.

Beside that, the device should be upgrade to latest FW.

The device has already been upgraded to the latest FW as shown below.

# ubloxLTECommand -f "/dev/ttyUSB2" "ATI"
ATI
Manufacturer: Sierra Wireless, Incorporated
Model: EM7430
Revision: SWI9X30C_02.36.00.00 r8395 CARMD-EV-FRMWR2 2020/10/28 06:33:51

Hi @shinichiro.adachi,

AT command “AT$QCPDPP” is non-documented in document “4117727 AirPrime EM-MC74xx AT Command Reference r4.pdf”. But we can try this command to check the network connection ability of module to network having username/password. Syntax description can be found in the following document:
https://source.sierrawireless.com/resources/airprime/minicard/2130616_ap_mcsl_umts_lte_extended_at_command_ref/#sthash.zi0iug9i.dpbs

You have just tried successfully when registering network having username/password on my EM7430 module. You can refer this log:

16:22:27.959 on 13-May-2021> ati3
16:35:13.604 on 13-May-2021> 
16:35:13.617 on 13-May-2021> Manufacturer: Sierra Wireless, Incorporated
16:35:13.617 on 13-May-2021> Model: EM7430
16:35:13.617 on 13-May-2021> Revision: SWI9X30C_02.36.00.00 r8395 CARMD-EV-FRMWR2 2020/10/28 06:33:51
16:35:13.617 on 13-May-2021> IMEI: 001027009999999
16:35:13.617 on 13-May-2021> IMEI SV: 22
16:35:13.617 on 13-May-2021> FSN: LR946577900410
16:35:13.617 on 13-May-2021> +GCAP: +CGSM
16:35:13.617 on 13-May-2021> 
16:35:13.617 on 13-May-2021> 
16:35:13.617 on 13-May-2021> OK
16:35:13.617 on 13-May-2021> at+gmm
16:35:18.519 on 13-May-2021> 
16:35:18.519 on 13-May-2021> EM7430
16:35:18.519 on 13-May-2021> 
16:35:18.519 on 13-May-2021> OK
16:35:18.519 on 13-May-2021> at+cgdcont?
16:35:23.752 on 13-May-2021> 
16:35:23.752 on 13-May-2021> +CGDCONT: 1,"IPV4V6","myAPN","0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0",0,0,0,0
16:35:23.752 on 13-May-2021> 
16:35:23.752 on 13-May-2021> OK
16:35:23.752 on 13-May-2021> AT$QCPDPP?
16:35:28.413 on 13-May-2021> 
16:35:28.413 on 13-May-2021> $QCPDPP: 1,1,"my username"
16:35:28.413 on 13-May-2021> 
16:35:28.413 on 13-May-2021> OK
16:35:28.413 on 13-May-2021> at!gstatus?
16:35:32.639 on 13-May-2021> 
16:35:32.639 on 13-May-2021> !GSTATUS: 
16:35:32.639 on 13-May-2021> Current Time:  1045		Temperature: 24
16:35:32.639 on 13-May-2021> Reset Counter: 5		Mode:        ONLINE         
16:35:32.639 on 13-May-2021> System mode:   LTE        	PS state:    Attached     
16:35:32.639 on 13-May-2021> LTE band:      B28    		LTE bw:      10 MHz  
16:35:32.639 on 13-May-2021> LTE Rx chan:   9300		LTE Tx chan: 27300
16:35:32.639 on 13-May-2021> LTE CA state:  NOT ASSIGNED
16:35:32.639 on 13-May-2021> EMM state:     Registered     	Normal Service 
16:35:32.639 on 13-May-2021> RRC state:     RRC Idle       
16:35:32.639 on 13-May-2021> IMS reg state: No Srv  		
16:35:32.639 on 13-May-2021> 
16:35:32.639 on 13-May-2021> PCC RxM RSSI:  -67		RSRP (dBm):  -87
16:35:32.639 on 13-May-2021> PCC RxD RSSI:  -98		RSRP (dBm):  -135
16:35:32.639 on 13-May-2021> Tx Power:      --		TAC:         0001 (1)
16:35:32.639 on 13-May-2021> RSRQ (dB):     -3.4		Cell ID:     01A2D101 (27447553)
16:35:32.639 on 13-May-2021> SINR (dB):     29.0
16:35:32.639 on 13-May-2021> 
16:35:32.639 on 13-May-2021> 
16:35:32.639 on 13-May-2021> OK
16:35:32.639 on 13-May-2021> at+cops?
16:35:35.751 on 13-May-2021> 
16:35:35.751 on 13-May-2021> +cops: 0,0,"",7
16:35:35.751 on 13-May-2021> 
16:35:35.751 on 13-May-2021> OK

Can you try this command again and send me the result?

Thanks,