libqmi, LTE RAT link dropout, reconnect, surveillance etc.

Peter Naulls peter at
Thu Apr 14 13:32:05 UTC 2022

On 4/14/22 09:04, Christian Melki wrote:
> Hi.
> Trying to understand how to deal with various network errors that result in some 
> sort of disconnection.
> I've seen situations where the networks seems to drop a client when it's crowded 
> or some other errors occur.
> How does one deal with situations like these? Detection? Fallback? Reconnections 
> etc?
> Does libqmi provide any detection mechanism or reconnection mechanism that 
> discovers network errors (not just automatic connect on powerup?).

Not really. There are some conditions that libqmi/ModemManager know about but
plenty more they don't. There are numerous network loss conditions that they 
just don't know about/detect.  In any case, they don't really monitor traffic so
much, this isn't entirely surprising.  Connection monitoring is left up to the
system - e.g, NetworkManager in Ubuntu.

For my uses in OpenWrt I've had to develop an extensive connection monitoring
system that relies upon not only the status from ModemManager, but also traffic
monitoring and other conditions. It's never going to be perfect, since it's an
overlay, but it does seem to cope well enough with most conditions.

Suffice to say I've discovered numerous instabilities - I've found corner cases
that cause crashes in libqmi, dnsmasq, qmi-proxy, ModemManager and elsewhere.
These are all slowly being improved, but it's a long road.

More information about the libqmi-devel mailing list