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