aboutsummaryrefslogtreecommitdiff
path: root/cli
AgeCommit message (Collapse)Author
2021-12-24cli,modem-3gpp: new '--3gpp-set-nr5g-registration-settings' actionAleksander Morgado
2021-12-11cli,sim: new 'SimType', 'Removability' and 'EsimStatus' propertiesAleksander Morgado
2021-11-08build,meson: Make feature options booleanIñigo Martínez
Different options are set as `feature`, also every possible plugin, but this may cause confusion. All options set as `feature` but plugins have been made `boolean` to avoid further confusions. `help2man` is also installed in the CI image because is required to build different libraries.
2021-11-03api,bearer: add 'uplink-speed' and 'downlink-speed' statsSom_SP
These values show the rates that have been negotiated with the network during the PS domain attach. These are not the current ongoing data rates associated to the network usage at some given moment. Includes updates by Aleksander Morgado to fix coding style issues and add missing documentation items.
2021-11-02api,3gpp: new 'SetPacketServiceState()' methodAleksander Morgado
2021-11-02api,3gpp: new 'PacketServiceState' propertyAleksander Morgado
This property allows the user to know whether the device is attached or detached from the packet domain service.
2021-10-22cli, plugins: factorize usage of iso8601 datetime formatFrederic Martinsons
Signed-off-by: Frederic Martinsons <frederic.martinsons@sigfox.com> Includes updates by Aleksander Morgado to fix coding style issues.
2021-10-22api,bearer: new 'start-date' field in bearer statisticsFrederic Martinsons
It stores the epoch timestamp of the current bearer session start. If there is no connected bearer, it is set to 0 and not displayed in mmcli output. Signed-off-by: Frederic Martinsons <frederic.martinsons@sigfox.com> Includes updates by Aleksander Morgado to fix coding style issues.
2021-10-20libmm-glib: new 'MMSignalThresholdProperties' helper objectAleksander Morgado
To avoid needing to work with GVariants directly.
2021-10-20libmm-glib,mmcli: add support for the new signal 'SetupThresholds()' APISom_SP
Includes updates by Aleksander Morgado to fix mostly coding style issues.
2021-10-20libmm-glib,mmcli: add support for 'error-rate' measurements in signal infoSom_SP
Includes updates by Aleksander Morgado to fix mostly coding style issues.
2021-10-173gpp-profile: Add profile nameAndrew Lassalle
QMI modems also report a profile name, and that value can be used to select and update a specific profile.
2021-10-14cli,signal: fix error message without EOLAleksander Morgado
2021-10-13mmcli,sar: rename actions to just --sar-enable and --sar-disableAleksander Morgado
2021-10-13build,meson: add SAR interface support in mmcliAleksander Morgado
2021-10-13mmcli:add SAR command --sar-status/--sar-enable/--sar-disable/--set-power-levellvmaorui
2021-09-07build: Port to mesonIñigo Martínez
meson is a build system focused on speed an ease of use, which helps speeding up the software development. This patch adds meson support along autotools.
2021-09-01cli, location: Fix multi-sentence NMEA message outputTeemu Ikonen
Multi-sentence NMEA messages were printed as is, that is with linebreaks, which made mmcli --location-get output look broken. Split NMEA sentences with linebreaks to separate output list items, so that they line up correctly.
2021-07-01cli,location: new '--location-monitor' actionAleksander Morgado
This action allows us to monitor location updates as signaled via the 'Location' property, only available if location signaling has been explicitly enabled (e.g. with --location-set-enable-signal)
2021-07-01cli,location: TAC is 3 bytes in 5GNRAleksander Morgado
TAC is 3 bytes for NG-RAN as specified in 3GPP TS 38.413 clause 9.3.3.10 and in 3GPP TS 24.501 clause 9.10.3.8. We'll always print it as 3 bytes in the cli output, as that's also backwards compatible with the original 2 byte TAC in LTE.
2021-06-25libmm-glib,oma: deprecate method names without the mm_modem_oma prefixAleksander Morgado
2021-06-24mmcli,messaging: fix leak when printing supported storagesAleksander Morgado
2021-05-23api,bearer: new 'ConnectionError' propertyAleksander Morgado
This new property will provide detailed information about the failed connection attempt, or about the network initiated disconnection. The property will be cleared only if a new connection attempt is triggered, and so it can be used to investigate why a given attempt failed without needing to be the one who triggered the attempt (e.g. so that failures in NetworkManager-triggered connection attempts can be investigated looking at the DBus API). The property is built as a (ss) tuple, but the libmm-glib interface provides methods to read this property as a GError.
2021-05-17cli,location: use mm_location_3gpp_get_operator_code() in location outputTeijo Kinnunen
2021-04-30mmcli,3gpp: common method to parse --disable-facility-lock input stringAleksander Morgado
2021-04-30api,libmm-glib,cli: add command to disable facility lockMichal Mazur
2021-04-29api,bearer: new 'ProfileId' propertyAleksander Morgado
To report which is the currently active profile with this bearer, if known. If the modem doesn't support profiles, or if the bearer is disconnected, -1 (MM_3GPP_PROFILE_ID_UNKNOWN) will be reported. It is guaranteed that no two connected bearers will have the same ProfileId property value.
2021-04-29api,modem: new Modem3gpp.ProfileManager interfaceAleksander Morgado
This new interface allows modems to expose the list of available connection profiles stored in the device and edit or delete them; as long as the underlying device/protocol allows it.
2021-04-29api,bearer: new 'profile-id' settingAleksander Morgado
We define a new 'profile-id' setting in the bearer properties that users will use to specify which connection profile of the ones available in the device should be connected. When the 'profile-id' is given, the associated bearer object will be bound to the 'profile-id', and the user is able to provide additional settings to apply on top (e.g. if the profile storage doesn't allow some of the settings we support, like 'apn-type', or if the setting is completely unrelated to profiles, like 'multiplex'). After introducing the 'profile-id' as a valid setting in the bearer properties, we also reimplement the properties object internals to make use a 3GPP profile for the subset of common settings between both objects.
2021-04-29api,bearer: new 'apn-type' settingAleksander Morgado
This new setting allows the user setting up the connection to specify the purpose of the connection being brought up. Until now, we would always assume that connections are exclusively brought up for connecting to the Internet, also limited by the inability to connect to multiple different APNs at the same time. But that may really not be true as there may be additional services that may be accessed through other APNs, like MMS services or even private networks for companies that have their own APNs on a given operator (e.g. not that uncommon with banks and connected cars). The new APN type setting will not change the way the bearer is connected, but will allow the connection manager to decide what kind of networking setup the specific connection needs. This new setting can be provided by the user itself, or implicitly read from the device if the device stores this information.
2021-04-29mmcli,manager: add 'wwan' subsystem to kernel event auto scan reportFreedom Liu
2021-04-12cli: avoid attempting to setup timeout on NULL proxyAleksander Morgado
mm_manager_get_proxy() may actually return NULL if creating the internal GDBusProxy for the Manager interface fails.
2021-03-24cli,3gpp-ussd: move actions to a separate source fileAleksander Morgado
All the USSD operations together in a separate file, as they're managed in a separate 3GPP USSD interface.
2021-03-10api,bearer: new 'Multiplexed' propertyAleksander Morgado
This property will be TRUE if the bearer has the data session connected through a multiplexed interface. If the bearer is disconnected, or connected without multiplexing, the property will report FALSE.
2021-03-09mmcli,sim: implement --sim-set-preferred-networks functionTeijo Kinnunen
2021-02-26mmcli,sim: add preferred networks list to SIM propertiesTeijo Kinnunen
2021-01-17core: update copyright years to 2021Aleksander Morgado
2020-12-21mmcli: don't assume that mm_object_peek_modem or mm_object_get_modem return ↵Frederic Martinsons
non null This very peculiar case can happen when an intermediate initiliazition step of a modem fails. The ModemManager daemon should always expose the modem interface but let not assume that in mmcli and protect these calls. Signed-off-by: Frederic Martinsons <frederic.martinsons@sigfox.com>
2020-11-20core: new 'rpmsg' subsystemAleksander Morgado
Most older Qualcomm SoCs (e.g. MSM8916, MSM8974, ...) communicate with the integrated modem via shared memory (SMD channels). This is similar to QRTR on newer SoCs, but without the "network" layer. In fact, the older SoCs also have QRTR, but the modem QMI services are not exposed there. The mainline Linux kernel exposes SMD channels via the "remote processor messaging bus" (rpmsg). Through special IOCTL calls it is possible to create a char device for a rpmsg/SMD channel. We can then use these to send QMI/AT messages to the modem, much like the ordinary serial char devices when using a Qualcomm modem through USB. This commit introduces support for the new 'rpmsg' subsystem, which allows exporting QMI-capable and AT-capable ports. By default NO rpmsg port is flagged as candidate, it is assumed that the plugin adding support for the rpmsg subsystem will add specific rules to do so (e.g. so that non-modem ports are explicitly not flagged as candidate). All rpmsg ports will be probed for AT or QMI capabilities, unless explicit port type hints (e.g. ID_MM_PORT_TYPE_QMI or ID_MM_PORT_TYPE_AT_PRIMARY) are set. These changes are highly based on the initial integration work done by Stephan Gerhold <stephan@gerhold.net> in postmarketOS, see: https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/merge_requests/363
2020-10-19libmm-glib,mmcli: add mm_sim_get_eid and add EID to mmcli outputEric Caruso
This exposes the new EID property of the SIM object on mmcli.
2020-08-28api,modem: new 'SetPrimarySimSlot' methodAleksander Morgado
This new method allows changing the SIM slot considered as primary, when the modem supports multiple SIM slots. The generic handling of this method will make sure that the modem object and all its SIM objects are re-probed from scratch as soon as a successful SIM slot switch happens. Implementations may report MM_CORE_ERROR_EXISTS when the switch doesn't need to happen (e.g. if the requested SIM slot is already the active one).
2020-08-28mmcli: also lookup SIM objects in the 'SimSlots' propertyAleksander Morgado
If the device supports multiple SIM slots, when the user provides a PATH or INDEX of a SIM card to use, don't look for the SIM object only in the 'Sim' property, also look for it in the 'SimSlots' property.
2020-08-28api,modem: new 'SimSlots' and 'PrimarySimSlot' propertiesAleksander Morgado
The 'SimSlots' property exposes an array of SIM object paths, with one array item for each available SIM slot in the system. If a valid SIM card is found in a given slot, the path of the SIM object will be exposed in the array item; if no valid SIM card is found, the empty object path ("/") will be exposed instead. The 'PrimarySimSlot' property exposes which of the SIM slots available in the system is the one configured as being primary. In a Multi-SIM Single-Standby setup, the primary slot will be the one corresponding to the single active SIM in the system. In a Multi-SIM Multi-Standby setup, the primary slot will be the one configured to act as primary (e.g. the one that will be used for the data connection) among all the active SIM cards found.
2020-08-28api,sim: new 'Active' propertyAleksander Morgado
In preparation for the multi-SIM setup, we need a way to tell whether a given SIM card is active or not in the system. On systems with one single SIM slot, the available SIM card will always be active. On Multi-SIM Single-Standby setups we may have multiple SIM slots with multiple SIM cards, but only one of them will be active at any given time. On Multi-SIM Multi-Standby setups we may have multiple SIM slots with multiple SIM cards that may be active at the same time. E.g. the QMI protocol allows up to 5 different active SIM cards (primary, secondary, tertiary...).
2020-08-01mmcli,output: use 'path' instead of 'dbus path' in field descriptionsAleksander Morgado
2020-07-04iface-modem-signal: added 5G signal informationWalter Hagstrom
Extended the ModemManager Signal interface to include 5G signal information for RSRP, RSRQ and SINR via libqmi. Also extended mmci to print 5G signal info.
2020-06-05cli: make control chars in strings are escaped correctly for json outputMaxim Anisimov
We need to change json output escaping according to this https://bugzilla.gnome.org/show_bug.cgi?id=730425 Signed-off-by: Maxim Anisimov <maxim.anisimov.ua@gmail.com>
2020-05-05cli: add allowed-auth bearer property in outputAleksander Morgado
Given as a list of items, because the bearer can be created with one or more allowed authentication protocols.
2020-04-10api,bearer: add 'total-rx-bytes', 'total-tx-bytes' and 'total-duration' statsAleksander Morgado
Compiling the amount of bytes transferred and received during all tracked connection attempts, as well as the total duration of all the connections.
2020-04-10api,bearer: add 'attempts' and 'failed-attempts' statisticsAleksander Morgado
When we're reusing over and over the same bearer object, we can provide statistical information about the number of connection attempts that have been done and how many of them failed.