ANN: ModemManager 1.22.0 released

Frederic Martinsons frederic.martinsons at
Wed Oct 11 17:43:07 UTC 2023


a pretty big release with nice features in it (logging and dynamic loading
are pretty interesting to me, drop of autotools makes me happy too).

Thanks to all contributors on this 1.22.0 ! Really good work, can't wait to
use it.

Le mer. 11 oct. 2023, 14:48, Aleksander Morgado <aleksandermj at>
a écrit :

> Hey hey,
> This is a new major release of ModemManager, which will be the base for
> the new 1.22.x stable series (the new "mm-1-22" branch in git).
> Overview of changes in ModemManager 1.22.0
> -------------------------------------------
> The following notes are directed to package maintainers:
>   * This version now requires:
>     ** libmbim >= 1.30.0 (for the optional MBIM support)
>     ** libqmi >= 1.34.0 (for the optional QMI support)
>   * The GNU autotools (autoconf/automake/libtool) support has been fully
> removed, this release requires the use of the meson build system.
>   * Build:
>     ** Flag types are now generated in their own files (e.g.
> 'mm-flags-types.h').
>     ** A new 'fuzzer' option is available to build LLVM LibFuzzer based
> unit testers.
>     ** A new 'builtin_plugins' option is available to integrate all
> built plugins within the ModemManager daemon binary. This makes the
> daemon load much quicker as it doesn't dynamically load the plugins on
> runtime.
> The most important features and changes in this release are the following:
>   * A new "MSG" (message) log verbosity level is introduced, which is
> also the new default one if none explicitly defined. This level takes
> the place of the old "INFO" level, as a level including the most
> important messages that should be logged without needing to be warnings
> or errors. The new "INFO" level is more verbose than "MSG" but less
> verbose than "DBG", and may be useful as default in systems where active
> debugging of WWAN related issues is required. E.g. all user operations
> triggered via DBus method calls are logged in "INFO" level.
>   * Introduced the concept of "personal information" which should by
> default not be included in log messages. Enabling personal information
> in logs requires to run the daemon with the '--log-personal-info'
> option. This feature is mostly implemented for QMI and MBIM specific
> logs, but hasn't yet been included in generic daemon logs or when using
> the AT protocol. Changes and fixes related to this feature will be
> cherry-picked and included in the future stable branch updates.
>   * API:
>     ** Added new 'Modem.Physdev' property to unconditionally publish the
> physical modem device path.
>     ** Updated the 'Modem.GetCellInfo()' method to include serving cell
> type and bandwidth information in LTE and 5GNR cells.
>     ** New 'Modem3gpp.SetCarrierLock()' method to send the list of
> carrier network information to the modem.
>     ** The 'SetLogging()' method allows a new "MSG" log level.
>   * Core:
>     ** The codebase has been updated to use GTask in all operations and
> there are no longer any deprecated methods from GLib being used.
>     ** The port probing logic is now able to guess port type hints
> during runtime, e.g. based on the kernel driver in use or the wwan
> subsystem port 'type' attributes.
>     ** Default probing and wait times have been increased, in order to
> cope with slow kernel events reporting new port additions.
>   * Modem interface:
>     ** Updated the logic loading unlock retries to allow restarting the
> check count based on the state reported by the device (e.g. if the SIM
> is detected but not fully ready during the last expected check, a new
> set of check retries is allowed).
>   * 3GPP interface:
>     ** Added support for packet service state updates via unsolicited
> indications.
>     ** Added support for ignoring registration and packet service state
> updates if the interface has already been disabled.
>     ** Updated initialization sequence to allow showing IMEI even if the
> device is locked.
>     ** Logged available profiles in "INFO" level whenever they are listed.
>   * Simple interface:
>     ** Logged user provided settings during a connect attempt in "INFO"
> level.
>     ** Added support to abort an ongoing connect operation at any step
> in the state machine, e.g. if the modem is going to be disabled.
>     ** Added support to explicitly request attaching to packet service
> during the connection attempt.
>   * Signal interface:
>     ** Added logic to rate-limit printing the extended signal
> information with "INFO" level, even if the actual refresh rate is higher.
>   * New udev tags:
>     ** The 'ID_MM_REQUIRED' port-specific udev tag allows users to
> specify that the modem must be able to succesfully probe and use the
> given control port.
>     ** The 'ID_MM_MAX_MULTIPLEXED_LINKS' udev tag allows user to specify
> the maximum amount of multiplexed links the modem supports. This tag may
> be set to 0 to fully disable multiplexing support in the device.
>   * mmcli:
>     ** New '--messaging-create-sms-with-text' action to create a text
> SMS from the contents of a given file.
>     ** New '--3gpp-set-carrier-lock' action to send the carrier lock
> data to the device.
>     ** Updated '--modem' to always allow using the modem physdev path
> for lookup.
>   * SMS:
>     ** Improved the parsing of 3GPP and CDMA SMS parts, fixing multiple
> different errors that lead to unexpected crashes on SMS reception.
>   * MBIM:
>     ** Updated device model loading logic to use an AT port if available.
>     ** Added support for the carrier lock feature using the Google MBIM
> service.
>     ** Implemented support for reporting serving cell type and bandwidth
> in the cell scan operation.
>     ** Limited the amount of different APN types usable when MS
> extensions are unsupported.
>     ** Updated packet service state info loading to use the values
> reported by the device instead of attempting to guess them.
>     ** Updated IPv6 IP addressing logic to rely on whether the provided
> address is global or not to decide whether static or dynamic addressing
> is needed.
>   * QMI:
>     ** Implemented support for detecting and processing profile change
> indications, e.g. during a SIM card IMSI refresh operation.
>     ** Implemented support for scanning LTE and 5GNR cells.
>     ** Fixed operating mode update logic to avoid needing to receive
> indications, as old devices don't support them.
>     ** Implemented multiplexing support for Qualcomm PCI devices using
> the MHI driver.
>     ** Updated logic to read IPA tx/rx offload values from sysfs, making
> the IPA support work seamlessly in multiple different Qualcomm SoCs.
>     ** Updated logic reading the SIM card operator identifier to avoid
> using the NAS service, as that sometimes involved actual network access.
> The new logic exclusively uses SIM card read operations (e.g. IMSI and
> EFad).
>     ** Consolidated the logic processing registration state from
> responses and indications.
>   * Plugins:
>     ** cinterion: implemented multiple-SIM support.
>     ** fibocom: disabled multiplexing in the NL668, which doesn't
> support it.
>     ** huawei: updated time interface to use ^NWTIME.
>     ** quectel: added port type hints for the EG12, EC21, EM060, EM061
> and new EM120, EM160 and RM520 variants.
> The following features which were backported to 1.20.x releases are also
> present
> in ModemManager 1.22.0:
>     ** build: new 'examples' option to allow disabling the installation
> of examples.
>     ** mmcli: improved JSON output in network scan results.
>     ** mmcli: improved JSON output when creating SMS messages.
>     ** MBIM: ignored SIM related indications during a SIM slot switch
> operation.
>     ** MBIM: updated capabilities loading to use Microsoft Extensions if
> available.
>     ** MBIM: updated supported modes loading to use the CustomDataClass
> field contents.
>     ** QMI: fixed processing and exposing PCOs.
>     ** cinterion: improved management of the ^SWWAN? operation.
>     ** telit: improved support for 5G modems.
>     ** messaging: allowed Delete operation during enabling/disabling.
> --------------------------------------------------
> About ModemManager:
> Download and verify:
>      $ git clone --depth 1 --branch 1.22.0
>      $ cd ModemManager
>      $ git tag --verify 1.22.0
> APIs and manpages here:
> Please report bugs either to:
>      modemmanager-devel at
> Or to gitlab:
> --
> Aleksander

*Disclaimer*:**_ This e-mail and any attachments thereto are intended for 
the sole use of the recipient(s) named above and may contain information 
that is confidential and/or proprietary to UnaBiz. Any use of the 
information contained herein (including, but not limited to, total or 
partial reproduction, communication, or dissemination in any form) by 
persons other than the intended recipient(s) is prohibited. If you have 
received this e-mail in error, please notify the sender immediately and 
delete it._
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>

More information about the ModemManager-devel mailing list