Re: [Telit LE910C1-EU] ModemManager crashes when establishing online connection

2023-05-09 Thread Christian Schneider

Hi, thanks for your answer.
Explicitly specifying the ip-type helps for me.
Since you mentioned main, I checked the version I'm using (1.18.12) and 
noticed it isn't the latest, so I will try a newer version, and see what 
happens.


BR, Christian

Am 04.05.23 um 09:00 schrieb Daniele Palmas:

Hello,

Il giorno mer 3 mag 2023 alle ore 15:12 Christian Schneider
 ha scritto:


Hello,
I have a Telit LE910C1-EU modem. It is recognized and calls/SMS work,
but when I establish an online connection, eg. with
mmcli -m 0 --simple-connect "apn=internet.telekom"
ModemManager crashes. The error message including a few lines before are:

ModemManager[2838]:  [modem0] unhandled PDP type in CGDCONT=?
reply: 'PPP'
ModemManager[2838]:  [modem0] unknown +CGDCONT format details for
PDP type 'none', using defaults: minimum 1, maximum 2147483646
ModemManager[2838]:  [modem0] context definition format: minimum
1, maximum 2147483646
ModemManager[2838]:  [modem0] set profile state (2/8): list before
ModemManager[2838]:  [modem0/ttyUSB2/at] device open count is 5
(open)
ModemManager[2838]:  [modem0/ttyUSB2/at] device open count is 4
(close)
ModemManager[2838]:  [modem0/ttyUSB2/at] --> 'AT#PSNT?'
ModemManager[2838]:  [modem0/ttyUSB2/at] <-- '#PSNT:
0,4OK'
ModemManager[2838]:  [modem0] access technology changed (unknown
-> lte)
ModemManager[2838]:  [modem0] periodic signal quality and access
technology checks scheduled
ModemManager[2838]:  [modem0/ttyUSB2/at] device open count is 3
(close)
ModemManager[2838]:  [modem0/ttyUSB2/at] --> 'AT+CGDCONT?'
ModemManager[2838]:  [modem0/ttyUSB2/at] <-- '+CGDCONT:
1,"IPV4V6","","",0,0,0,0+CGDCONT:
2,"IPV4V6","ims","",0,0,0,0+CGDCONT:
3,"IPV4V6","sos","",0,0,0,1OK'
ModemManager[2838]:  [modem0] set profile state (3/8): select
profile (best)
ModemManager[2838]:  [modem0] found unused profile 4 (<2147483646)
ModemManager[2838]:  [modem0] set profile state (4/8): check
activated profile
ModemManager[2838]:  [modem0] checking if profile with id '4' is
already activated...
ModemManager[2838]:  [modem0/ttyUSB2/at] device open count is 4
(open)
ModemManager[2838]:  [modem0/ttyUSB2/at] device open count is 3
(close)
ModemManager[2838]:  [modem0/ttyUSB2/at] --> 'AT+CGACT?'
ModemManager[2838]:  [modem0/ttyUSB2/at] <-- '+CGACT:
1,1+CGACT: 2,0+CGACT: 3,0OK'
ModemManager[2838]:  [modem0] profile '4' is not activated:
Profile '4' not found in CGACT? response
ModemManager[2838]:  [modem0] set profile state (6/8): store profile
**
ERROR:../../ModemManager-1.18.12/src/mm-broadband-modem.c:10677:modem_3gpp_profile_manager_store_profile:
assertion failed: (ip_type != MM_BEARER_IP_FAMILY_NONE)
Aborted

mm seems to have trouble with this Profile stuff, but not sure if this
is directly related to the crash.


With main I can't replicate the issue: when not declaring the ip-type,
MM by default is using "IP", e.g.

$ sudo mmcli -m 0 --simple-connect "apn=web.omnitel.it"
successfully connected the modem

ModemManager[725461]:  [1683183155.578330] [modem0] set profile
state (2/8): list before
ModemManager[725461]:  [1683183155.578357] [ttyUSB1/at] device
open count is 4 (open)
ModemManager[725461]:  [1683183155.578391] [ttyUSB1/at] device
open count is 3 (close)
ModemManager[725461]:  [1683183155.578428] [ttyUSB1/at] -->
'AT+CGDCONT?'
ModemManager[725461]:  [1683183155.619178] [ttyUSB1/at] <--
'+CGDCONT: 1,"IPV4V6","","",0,0,0,0+CGDCONT:
2,"IP","mobile.vodafone.it","",0,0,0,0OK'
ModemManager[725461]:  [1683183155.619435] [modem0] set profile
state (3/8): select profile (best)
ModemManager[725461]:  [1683183155.619479] [modem0] found unused
profile 3 (<24)
ModemManager[725461]:  [1683183155.619500] [modem0] set profile
state (4/8): check activated profile
ModemManager[725461]:  [1683183155.619542] [modem0] checking if
profile with id '3' is already activated...
ModemManager[725461]:  [1683183155.619583] [ttyUSB1/at] device
open count is 4 (open)
ModemManager[725461]:  [1683183155.619636] [ttyUSB1/at] device
open count is 3 (close)
ModemManager[725461]:  [1683183155.619690] [ttyUSB1/at] --> 'AT+CGACT?'
ModemManager[725461]:  [1683183155.660510] [ttyUSB1/at] <--
'+CGACT: 1,1+CGACT: 2,0OK'
ModemManager[725461]:  [1683183155.660768] [modem0] profile '-1'
is not activated: Profile '3' not found in CGACT? response
ModemManager[725461]:  [1683183155.660810] [modem0] set profile
state (6/8): store profile
ModemManager[725461]:  [1683183155.660843] [modem0] storing
profile '3': apn 'web.omnitel.it', ip type 'ipv4'
ModemManager[725461]:  [1683183155.660893] [ttyUSB1/at] device
open count is 4 (open)
ModemManager[725461]:  [1683183155.660948] [ttyUSB1/at] device
open count is 3 (close)
ModemManager[725461]:  [1683183155.661010] [ttyUSB1/at] -->
'AT+CGDCONT=3,"IP","web.omnitel.it"'
ModemManager[725461]:  [1683183155.837506] [ttyUSB1/at] <--
'OK'
ModemManager[725461]:  [1683183155.837684] [modem0] stored profile '-1'
ModemManager[725461]:  [1683183155.837721] [modem0] set profile
state (7/8): list after
ModemManager[725461]:  [168318

Re: SIM Application toolkit commands

2023-05-09 Thread Aleksander Morgado
Hey,

> The Twilio Super SIM will send a Proactive Command NAA Initialization and 
> Full File Change Notification to the terminal on the IMSI change. Some 
> modems, like the Quectel BG95 or EC25 will send a URC if
> +QUSIM: 1
> if it is a USIM and
> +QUSIM: 0
> if it's a regular SIM
> no idea about other modems however.
>

You mean the +QUSIM URC is sent to the host whenever the Full File
Change Notification is received by the terminal on the IMSI change?
i.e. no need to STK supported by the host in this case, right?

> I can arrange to get you a SIM for testing if needed as this is an area I'm 
> interested in as well. I can also provide a SIMtrace2 pcap (or raw APDUs if 
> preferred) capture of the communications between the terminal and the SIM if 
> that would be helpful.
>

How do you instruct the SIM to switch IMSI?

-- 
Aleksander


Re: [Telit LE910C1-EU] ModemManager crashes when establishing online connection

2023-05-09 Thread Aleksander Morgado
Hey

> Explicitly specifying the ip-type helps for me.
> Since you mentioned main, I checked the version I'm using (1.18.12) and
> noticed it isn't the latest, so I will try a newer version, and see what
> happens.

Please retry with git main or with MM 1.20 and report back whether
this issue is fixed or not. Thanks!

-- 
Aleksander


Re: Understanding Default Bearers and PDP Contexts

2023-05-09 Thread Aleksander Morgado
Hey!

>
> Should a bearer of type MM_BEARER_TYPE_DEFAULT correspond 1-1 with a
> modem PDP context?
>
> Said another way, if I have a default bearer with APN B, should `mmcli
> -m 0 --3gpp-profile-list` and `AT+CGDCONT` show a profile/PDP context
> with APN B?
>

They're related but not fully the same. The bearer objects exposed by
MM represent the "independent connections" that have been or may be
triggered with MM. The bearer objects contain settings (e.g.
user-provided settings) as well as state (once it's connected). The
existence of such a bearer object exposed by MM in DBus does NOT mean
a corresponding context is configured in the modem, at least not if
the bearer object is disconnected. Once the bearer object is
connected, there should be a corresponding context configured in the
modem. In fact, the bearer connection sequence involves configuring a
context first and then connecting that context.

> If there isn't a direct correspondence then the rest of this message can
> be ignored. Pessimistically dumping more information here in case this
> is a bug, and for searchability should another find themselves as
> confused as I am.
>
> Configuration Info:
> - Modem: Quectel EG95-NAXD, FW version EG95NAXDGAR07A01M1G
> - Location: US
> - Carrier: AT&T
> - Platform: Yocto Linux (kirkstone)
> - ModemManager version: 1.18.6
> - NetworkManager version: 1.36.2
>
> Problem Description:
> My goal is verifying that traffic is being sent directly to a private
> APN without flowing through the PDN addressed by the initial-attach APN.
>

Ah, nice one.

> My intuition says that this should be possible, and that there would be
> a correspondence between default bearers and PDP contexts. A source [1]
> for which I have no sense of reputation quotes:
>
> > According to 3GPP TS 23.401 [82], there is a 1 to 1 mapping between
> > active EPS bearer context and active PDP context
>
> Reading through 3GPP TS 23.401 version 18.1.0 [2] I haven't been able to
> verify that claim.
>
> In NetworkManager, I have a connection config with
> `[gsm]\napn="m2m.com.attz"` (well, goal is a different APN, but this
> suffices for example). I can see that this creates bearer 1, and
> generating traffic will augment stats on `mmcli -b 1`. However,
> `AT+CGDCONT` and `AT+CGREG` indicate that there isn't a PDP context
> defined with `m2m.com.attz` as APN, and that the active PDP context is
> using the APN of the default-attach bearer 0, `broadband`.
>
> #+begin_quote
> # mmcli -m 0
>   ---
>   General  |path: /org/freedesktop/ModemManager1/Modem/0
>|   device id: 
>   ---
>   Hardware |manufacturer: QUALCOMM INCORPORATED
>|   model: QUECTEL Mobile Broadband Module
>|   firmware revision: EG95NAXDGAR07A01M1G
>|  carrier config: VoLTE-ATT
>| carrier config revision: 0501033C
>|h/w revision: 1
>|   supported: gsm-umts, lte
>| current: gsm-umts, lte
>|equipment id: 
>   ---
>   System   |  device: 
> /sys/devices/platform/bus@5b00/5b0e.usb/ci_hdrc.1/usb1/1-1
>| drivers: option, qmi_wwan
>|  plugin: quectel
>|primary port: cdc-wdm0
>|   ports: cdc-wdm0 (qmi), ttyUSB0 (qcdm), ttyUSB2 
> (at), wwan0 (net)
>   ---
>   Status   |lock: sim-pin2
>|  unlock retries: sim-pin (3), sim-puk (10), sim-pin2 
> (3), sim-puk2 (10)
>|   state: connected
>| power state: on
>| access tech: lte
>|  signal quality: 67% (cached)
>   ---
>   Modes|   supported: allowed: 3g; preferred: none
>|  allowed: 4g; preferred: none
>|  allowed: 3g, 4g; preferred: 4g
>|  allowed: 3g, 4g; preferred: 3g
>| current: allowed: 2g, 3g, 4g; preferred: 4g
>   ---
>   Bands|   supported: utran-4, utran-5, utran-2, eutran-2, 
> eutran-4, eutran-5,
>|  eutran-12, eutran-13, eutran-25, 
> eutran-26
>| current: utran-4, utran-5, utran-2, eutran-2, 
> eutran-4, eutran-5,
>|  eutran-12, eutran-13, eutran-25, 
> eutran-26
>   ---
>   IP   |   supported: ipv4, ipv6, ipv4v6
>   ---
>   3GPP |imei: 
>|   enabled locks: fixed-dialing

Re: SIM Application toolkit commands

2023-05-09 Thread Amol Lad

>> The Twilio Super SIM will send a Proactive Command NAA Initialization and 
>> Full File Change Notification to the terminal on the IMSI change. Some 
>> modems, like the Quectel BG95 or EC25 will send a URC if
>> +QUSIM: 1
>> if it is a USIM and
>> +QUSIM: 0
>> if it's a regular SIM
>> no idea about other modems however.
>>

> You mean the +QUSIM URC is sent to the host whenever the Full File
> Change Notification is received by the terminal on the IMSI change?
> i.e. no need to STK supported by the host in this case, right?

>> I can arrange to get you a SIM for testing if needed as this is an area I'm 
>> interested in as well. I can also provide a SIMtrace2 pcap (or raw APDUs if 
>> preferred) capture of the communications between the terminal and the SIM if 
>> that would be helpful.
>>

> How do you instruct the SIM to switch IMSI?

One way is mentioned here:
https://www.twilio.com/docs/iot/supersim/super-sim-multi-imsi-applet#force-a-switch-to-the-next-imsi




--
Aleksander