[OpenWrt-Devel] [PATCH uqmi] nas: add --get-plmn

Bjørn Mork bjorn at mork.no
Thu Aug 29 04:35:19 EDT 2019


Martin Schiller <ms at dev.tdt.de> writes:

> On 2019-08-26 21:12, Sami Olmari wrote:
>> I think the ideology behind proto handler there is to "do whatever
>> told" despite of what the state is currently,
>> maybe there is a reason for such behaviour (searches some stuff from
>> network etc).
>
> There exist 2 problems in the qmi proto handler:
>
> 1. Setting the plmn to 'auto' will implicitly lead to a (delayed)
> network re-registration, which could further lead to some timing
> related issues in the qmi proto handler.
> Let me explain this in more detail:
> After successfully calling the uqmi --set-plmn (auto) command it takes
> up to 5 (or maybe even more) seconds until the modem detaches from
> network
> and start searching for new registration.
>
> In the meantime the proto handler goes through the next steps
> ("Waiting for
> network registration", "Start network $interface" etc.).
>
> I hope you can see were this leads to.
>
> This is really a problem in Roaming scenarios, where to provider maybe
> is
> switched after the re-registration.


FWIW, I also believe this is a real problem.

The modem firmware isn't always smart.  It will "do whatever told", even
if it is a completely unnecessary de-registration, network scan and
re-registration.

We can be smarter than that.  We should avoid changing any persistent
(in modem nvram) setting related to network registration, unless
absolutely necessary.

> 2. The plmn setting is permanently saved in the wwan modem:
> This leads to the problem, that if you switch back from manual plmn
> selection
> to auto mode you have to set it explicitly to 'auto'.

Yes, the current handler will use whatever is stored in the modem unless
'plmn' is explictly set.  This is very confusing if you set 'plmn'
temporarily, whether it is for roaming or just experimenting. Users will
rightfully assume that adding and then removing 'plmn' means 'no
change'.

Everything in the qmi proto handler should take into account that
settings might be stored in the modem nvram.  Optional settings need an
explicit default, and should always be verified against the value stored
in the modem.

I believe the 'plmn' default should be 'auto'. But we can only do that
if we first add the logic to verify the current setting and avoid any
unnecessary 'uqmi --set-plmn' commands.



Bjørn

_______________________________________________
openwrt-devel mailing list
openwrt-devel at lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel


More information about the openwrt-devel mailing list