Differentiate between Cat-M and NB-IoT

Aleksander Morgado aleksandermj at chromium.org
Mon Nov 7 15:15:35 UTC 2022

Hey Fredrik

> I'm working with a modem that supports GSM, LTE Cat-M, and NB-IoT. Ideally, I
> could both query and, more importantly, set which of these access technologies
> are allowed in the modem through ModemManager's API.
> As far as I understand, ModemManager understands the concepts of (1) modes,
> (2) capabilities, and (3) access technologies. From looking at the defined enums,
> (3) is more granular than (2) which is more granular than (1), but all relate to
> "access technology" in some way. (3) is the only one that differentiates between
> Cat-M and NB-IoT, but the D-Bus API only exposes "set" methods for (1) and (2).
> The modem itself treats GSM, Cat-M, and NB-IoT at the same abstraction level:
> "Selecting Radio Access Technology" from the AT command manual, so there is a
> slight disconnect between MM and the modem itself wrt. access technology.
> I'm open to submitting a patch that adds the functionality I want, but I don't
> know where to start attacking this problem. Perhaps MMModemCapability should
> split the concept of LTE into Cat-M, Cat-1 and NB-IoT? To me, many of these
> terms are ambiguous, so please note that I'm coming from a position of relative
> ignorance.

Yes, all that is not very well managed right now in MM. We recently
added some enum updates in MMModemAccessTechnology
but not much more.

Could you let us know which modem you're using and which commands (AT
commands I assume) can be used to query whether Cat-M, Cat-1 and/or
NB-IoT are supported, and how to change them?


More information about the ModemManager-devel mailing list