Hi Aleksander,

On Wed, Jul 22, 2020 at 3:47 PM Aleksander Morgado
<aleksan...@aleksander.es> wrote:
>
> Hey Giacinto!
>
> >
> > I need to set up the default LTE bearer settings: APN, type of APN,
> > authentication parameters, in the Cinterion plugin.
> >
> > And for this, I am going to add the two methods:
> >     void     (* set_initial_eps_bearer_settings)
> > (MMIfaceModem3gpp     *self, ..
> >     gboolean (* set_initial_eps_bearer_settings_finish)
> > (MMIfaceModem3gpp     *self, ..
> >
> > Is this the right way to do it? I see that nobody implemented it so
> > far. Is this called for mbim or qmi?
> >
>
> This is currently implemented for MBIM devices, because in MBIM
> devices there are explicit APIs to set them without needing to worry
> about what specific CID number we're touching.
>
> > I will have to run the following sequence:
> > -        go in AT+CFUN=4 (airplane mode with SIM connected). This is
> > necessary because the CID might be locked or not taken into account
> > immediately (in case there is an attach attempt ongoing).
> > -        set AT+CGDCONT for the right CID (normally 1)
> > -        set AT^SGAUTH for the same CID
> > -        go back to AT+CFUN=1.
> >
> > Is this ok to you?
>
> The requirement to run CFUN=4 before and CFUN=1 after seems very
> generic to me; at the end we're changing the APN settings used during
> LTE registration, so it is assumed the device needs to re-register. I
> say this because it may make sense to move that logic "up" to the
> Modem3gpp interface, so that the interface itself puts the modem in
> low-power mode before the change and puts it back into full-power mode
> after the change. But don't worry about that, this can be done later,
> if you do the CFUN=4/1 yourself in the cinterion plugin for now it's
> ok.
>

ok, I think that it should also be moved up, but this requires further
consideration.
For example in case of SIM hot swap: then the entire state should be
moved back to that point.

> >
> > Instead of CFUN=4/1 also COPS=2/0 could be used, but I prefer the former.
> >
>
> The only issue I see is the selection of the "right CID" in CGDCONT.
> As you said, it is normally 1, but as we've already found in the past
> it may be operator dependent; e.g. wasn't it CID=4 for Verizon?
>

Cinterion modules use CID=3 for VZW, CID=2 for T-Mobile Germany with
VoLTE, 1 in all other cases.
I intend to filter for this by querying the current VoLTE profile with
AT^SCFG="MEopMode/Prov/Cfg".
This would go between steps 1 and 2 above, but for the general
discussion I left this out as an implementation detail.

> I believe that other vendors use other approaches, even with separate
> APIs, e.g. the u-blox TOBY-L2 had specific commands for this IIRC.

I saw uBlox specifications, and they use CID=1 and CID=4 quite often.
It is not impossible that they also use a special API in some models.
Some XMM modems use CID=0 (as would be prescribed by the 3GPP 27.007).

For the rest, the great majority use CID=1, I believe because it is
the most common setting from the chipset makers.

>
> At this point, and given that it is everyday more common to have the
> requirement to change the initial LTE bearer settings, I wouldn't mind
> to have this logic with the "far from perfect" initial default of
> reconfiguring CID=1. I just got this very same requirement just
> yesterday debugging connectivity with an Orange Morocco SIM, so I'm
> sure there are users out there also requiring this kind of
> configuration.
>

Sound good.
Only I am not sure how you would do it in MM.
The modem is set to CFUN=1 as soon as it is mapped, and the APN and
other parameters have to be supplied via dbus, and so after the modem
has already attempted to attach.

Giacinto
_______________________________________________
ModemManager-devel mailing list
ModemManager-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/modemmanager-devel

Reply via email to