Age | Commit message (Collapse) | Author |
|
There was a limitation in the past in the plugin, because one of the steps
during the dial (CONNECT_3GPP_CONTEXT_STEP_PDP_CTX) was to reconfigure a
specific CID hardcoding the IP type to IPv4.
That logic was removed in commit af2d6c1c4b7f815862313bf0f84b1ff0e91ccd60,
but we didn't remove the IPv4 limitation at that point.
|
|
|
|
|
|
We create XMM-based modems like the EM7345 with XMM-specific features
like the AT+XLCSLSR based GNSS support. E.g.:
$ mmcli -m a --location-status
------------------------
Location | capabilities: 3gpp-lac-ci, gps-raw, gps-nmea, agps-msa, agps-msb
| enabled: 3gpp-lac-ci
| signals: no
------------------------
GPS | refresh rate: 30 seconds
$ sudo mmcli -m a --location-enable-gps-nmea
successfully setup location gathering
$ sudo mmcli -m a --location-get
--------------------------
3GPP | operator code: 214
| operator name: 7
| location area code: 0000
| tracking area code: 6FFE
| cell id: 0465CD20
--------------------------
GPS | nmea: $GPGSA,A,1,,,,,,,,,,,,,,,*1E
| $GNGSA,A,1,,,,,,,,,,,,,,,,1*1D
| $GNRMC,235951.000,V,,,,,,,,,,N,V*20
| $GNVTG,,T,,M,,N,,K,N*32
| $GNGGA,235951.000,,,,,0,0,,,M,,M,,*5F
Fixes https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/issues/25
|
|
MM_BROADBAND_MODEM_CINTERION shall be applied to a *MMBaseModem
(ctx->modem here)
and not to a *MMBaseBearer (self here)
|
|
|
|
|
|
|
|
some ITM family modems require full parameters:
AT^SGAUTH=cid,type,user,pwd
even when type is AUTH_NONE.
Fortunately, all modules of the IMT family tolerate this syntax,
so it can be adopted for the entire family.
|
|
|
|
AT^SGAUTH syntax depends on the modem family:
AT^SGAUTH=cid,type,user,pwd for the IMT family
AT^SGAUTH=cid,type,pwd,user for the rest
|
|
the AT^SCFG="Radio/Band" command does not return a different answer
for different charsets.
This code was working previously because the charset was left to default (GSM)
at the time of this operation, and therefore the string was unchanged anyway.
|
|
CHAP is almost universal nowadays, and so it is a better default
than PAP
Not changed for uBlox, that prefers an error if not specified,
and for Huawei, which uses NONE with user/pwd and has 2 CHAP choices
|
|
Doing the network registration via Set System Selection Preference is
preferable because it doesn't override the currently set allowed mode,
i.e. access technology.
https://lists.freedesktop.org/archives/modemmanager-devel/2020-July/007972.html
Signed-off-by: Sven Schwermer <sven.schwermer@disruptive-technologies.com>
|
|
mm-broadband-modem-qmi.c: In function 'process_common_info':
mm-broadband-modem-qmi.c:2897:30: warning: suggest braces around empty body in an 'if' statement [-Wempty-body]
/* both apply */ ;
^
Signed-off-by: Justin Standring <justin.standring@taitradio.com>
|
|
mm-broadband-modem-qmi.c: In function 'common_signal_info_get_quality':
mm-broadband-modem-qmi.c:1469:21: error: 'self' undeclared (first use in this function)
mm_obj_dbg (self, "RSSI (CDMA): %d dBm", cdma1x_rssi);
^~~~
mm-broadband-modem-qmi.c:1469:21: note: each undeclared identifier is reported only once for each function it appears in
mm_obj_dbg (self, "RSSI (CDMA): %d dBm", cdma1x_rssi);
^~~~
mm-broadband-modem-qmi.c: In function 'process_gsm_info':
mm-broadband-modem-qmi.c:2992:25: error: 'self' undeclared (first use in this function)
mm_obj_dbg (self, "no GSM service reported");
^~~~
mm-broadband-modem-qmi.c: In function 'process_wcdma_info':
mm-broadband-modem-qmi.c:3100:25: error: 'self' undeclared (first use in this function)
mm_obj_dbg (self, "no WCDMA service reported");
^~~~
mm-broadband-modem-qmi.c: In function 'process_lte_info':
mm-broadband-modem-qmi.c:3209:25: error: 'self' undeclared (first use in this function)
mm_obj_dbg (self, "no LTE service reported");
^~~~
mm-broadband-modem-qmi.c: In function 'config_signal_info_ready':
mm-broadband-modem-qmi.c:4890:21: error: 'self' undeclared (first use in this function)
mm_obj_dbg (self, "QMI operation failed: '%s'", error->message);
^~~~
Signed-off-by: Justin Standring <justin.standring@taitradio.com>
|
|
Fixes https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/issues/240
|
|
The ELS61 doesn't like authentication given without quotes:
[modem3/ttyACM1/at] --> 'AT^SGAUTH=8,1,tm,t-mobile<CR>'
[modem3/ttyACM1/at] <-- '<CR><LF>+CME ERROR: 4<CR><LF>'
Only when user/pass strings are quoted it works:
[modem6/ttyACM1/at] --> 'AT^SGAUTH=8,1,"t-mobile","tm"<CR>'
[modem6/ttyACM1/at] <-- '<CR><LF>OK<CR><LF>'
|
|
[modem2/ttyACM1/at] --> 'AT^SGAUTH=8,1,t-d1,(null)<CR>'
[modem2/ttyACM1/at] <-- '<CR><LF>+CME ERROR: 4<CR><LF>'
We should use an empty string instead.
|
|
It's critical not to timeout early on devices with AT ports, or we may
end up flagging the modem as invalid.
ModemManager[26829]: <debug> [1593097973.552712] [modem1/ttyACM0/at] --> 'AT^SWWAN=1,2,1<CR>'
....
ModemManager[26829]: <debug> [1593098064.195217] [modem1] couldn't connect bearer: Serial command timed out
....
ModemManager[26829]: <error> [1593098091.167987] [modem1] port ttyACM0 timed out 10 consecutive times, marking modem as invalid
|
|
|
|
It won't do anything because clear_values() tries to get the skeleton
from the modem object, and the skeleton hasn't been set at that point.
|
|
|
|
|
|
|
|
|
|
5GNR is not 3GPP2
|
|
|
|
E.g. if 'gsm' pointer is given, make sure it's always set (either to a
MMSignal or to NULL).
|
|
|
|
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.
|
|
|
|
This satisfies -Werror=maybe-uninitialized.
|
|
While at this change also the previous generic reference to ME910
in order to differentiate between ME910C1 (based on MDM9206) and
MEx10G1 (based on MDM9205).
|
|
We require CTZU=3 during the time support check, instead of CTZU=1, so
that the Quectel modem reports localtime instead of UTC time in +CCLK.
Fixes https://gitlab.freedesktop.org/mobile-broadband/ModemManager/-/issues/233
|
|
|
|
|
|
|
|
ModemManager[201411]: <debug> [1593417744.011884] [modem0/ttyUSB1/gps] <-- '$GPVTG,,T,,M,,N,,K,N*2C<CR><LF>$GPGSA,A,1,,,,,,,,,,,,,,,*1E<CR><LF>$GPGGA,,,,,,0,,,,,,,,*66<CR><LF>$GPRMC,,V,,,,,,,,,,N*53<CR><LF>'
(ModemManager:201411): GLib-CRITICAL **: 10:02:24.054: g_strjoinv: assertion 'str_array != NULL' failed
Thread 1 "ModemManager" received signal SIGTRAP, Trace/breakpoint trap.
0x00007ffff7832473 in g_logv () from /usr/lib/libglib-2.0.so.0
(gdb) bt
#0 0x00007ffff7832473 in g_logv () at /usr/lib/libglib-2.0.so.0
#1 0x00007ffff78326f0 in g_log () at /usr/lib/libglib-2.0.so.0
#2 0x00007ffff7846b5e in g_strjoinv () at /usr/lib/libglib-2.0.so.0
#3 0x00007ffff7ee9663 in mm_location_gps_nmea_get_string_variant (self=0x5555557dde50) at mm-location-gps-nmea.c:246
#4 0x00005555555e7c47 in build_location_dictionary (previous=0x0, location_3gpp=0x55555573e660, location_gps_nmea=0x5555557dde50, location_gps_raw=0x0, location_cdma_bs=0x0)
at mm-iface-modem-location.c:183
...
(gdb) fr 3
#3 0x00007ffff7ee9663 in mm_location_gps_nmea_get_string_variant (self=0x5555557dde50) at mm-location-gps-nmea.c:246
246 built = g_strjoinv ("\r\n", traces);
(gdb) p traces
$1 = (GStrv) 0x0
|
|
|
|
|
|
|
|
The NMEA data port is closed right before stopping the engine.
|
|
|
|
If any enabling/disabling command fails, we consider the operation
failed, regardless of the QGPS status. This is because e.g. enabling
involves more operations than just QGPS=1, and so we should treat a
failure in the command sequence as a failure in the whole operation.
|
|
|
|
The QGPS based implementation needs the existence of a port flagged as
GPS data; if there is no such port, we cannot provide GPS support.
|
|
The method that reports what location capabilities are supported must
report the capabilities provided by the parent interface plus the
additional capabilities supported by the shared implementation.
Also, simplify the logic a bit reducing the amount of implemented
methods.
|
|
|
|
|