Age | Commit message (Collapse) | Author |
|
Newer Huawei modems, like the E3276 or the ME906 won't support ^SYSINFO, and we
should instead use the newer ^SYSINFOEX. By default, use ^SYSINFOEX when
available, as it provides more information than the plain ^SYSINFO.
E.g.:
^SYSINFOEX:2,3,0,1,,3,"WCDMA",41,"HSPA+"
^SYSINFOEX:2,3,1,1,1,3,”WCDMA”,46,”DC-HSPA+”
|
|
These messages give us information about the current connection status in the
NDIS interface. We already have other means to know this status, so we just
ignore the unsolicited message for now.
E.g.:
^NDISSTAT: 1,,,"IPV4"
|
|
Newer Huawei modems use ^HCSQ to report per-interface signal quality values,
but we don't know yet what each field means for each technology, so just ignore
them for now.
E.g.:
^HCSQ: "GSM", 53
^HCSQ: "WCDMA", 26, 24, 43
^HCSQ: "LTE", 40, 28, 216, 14
We also don't use this message to update current access technology information,
as it is not detailed enough (e.g. WCDMA doesn't specify whether it's plain UMTS
or HSDPA or HSPA+...)
|
|
|
|
|
|
We filter the E362 because it's managed by the Novatel LTE plugin. If we also
filter out the USB551L, but it's not explicitly grabbed by any other plugin, it
will default to the Generic one.
|
|
No real need to do it; the VID filter is already enough.
|
|
|
|
devices (bgo #698850)
CDMA-only devices don't support +ZPAS for access tech loading, so chain up to the
parent so we get the QCDM fallback access tech loading functions.
https://bugzilla.gnome.org/show_bug.cgi?id=698850
|
|
Works on the N9/N950, but not supported by the N900.
|
|
During init, the N900 appears to ignore an E0 in the same command as
an E1. So just add another init command to disable echo, which won't
have any effect on devices that work with the first command.
|
|
This patch removes an unnecessary check of unsigned expression >= 0,
which also fixes the following clang warnings:
sierra/mm-broadband-modem-sierra.c:570:18: error: comparison of
unsigned expression >= 0 is always true
[-Werror,-Wtautological-compare]
mode >= 0 &&
~~~~ ^ ~
Bug reported on https://code.google.com/p/chromium/issues/detail?id=235989
Patched by Yunlian Jiang <yunlian@chromium.org>
|
|
#697372)
The GetNetworkTime() response is defined to be an ISO8601 string, which
is in turn defined to be in local time. Make sure that's reflected in
the documentation, and append the timezone offset to UTC where we have
it.
Oddly, Icera devices return their time info in UTC with an offset to
the local timezone, so we have to jump through some hoops there to
convert the response to localtime based on the reported offset.
Some additional fixes by Aleksander Morgado <aleksander@lanedo.com>.
https://bugzilla.gnome.org/show_bug.cgi?id=697372
|
|
Icera devices include bands that the modem doesn't support in
the %IPBM=? list, so the plugin sets the band to its current
enabled/disabled value to test whether that band is supported.
There were two problems with this approach:
1) Setting an already-enabled band to be enabled apparently
isn't a NOP; it might take more than the 3 seconds given, and
if the response comes after 3 seconds, this greatly confuses
ModemManager because the AT command/reply sequence is now
messed up. So increase the timeout to 10 seconds.
2) Why bother checking bands that are already enabled anyway?
We already know they are supported, so just don't check those
bands at all. This requires some parkour because we use the
parsed band array from %IPBM=? to track whether bands are
enabled/disabled by indexing into the array, so instead just
use two separate arrays. This actually makes the fix for #1
un-needed (because we never enable any bands) but it's good
to have #1 anyway.
|
|
The USB305 (Icera-based) apparently has a port that replies to everything
with ERROR, and that port is unusable. Make sure it's ignored, otherwise
MM may claim it as the primary AT port since it technically speaks AT.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
The numbers reported by +SYSSEL may have more than one digit, e.g.:
+SYSSEL: 14,2,0,0
https://bugzilla.gnome.org/show_bug.cgi?id=698774
|
|
|
|
|
|
|
|
|
|
|
|
Just like the E362, which the USB551L is quite similar to.
|
|
|
|
|
|
|
|
|
|
|
|
Huawei e220 may fail miserably (rebooting itself) if we issue commands just
after having unlocked the PIN.
|
|
https://bugzilla.gnome.org/show_bug.cgi?id=697374
|
|
|
|
E.g. instead of:
(ttyACM1): --> 'AT*EIAAUW=2,1,"(null)","vodafone"<CR>'
(ttyACM1): <-- '<CR><LF>OK<CR><LF>'
Better pass:
(ttyACM1): --> 'AT*EIAAUW=2,1,"","vodafone"<CR>'
(ttyACM1): <-- '<CR><LF>OK<CR><LF>'
|
|
Not all Sierra modems support it, but those which do reply like this:
AT+CPINC=?
OK
AT+CPINC?
+CPINC: 3,3,10,10
|
|
Detect the parser filter errors during our custom_init(), and set the port as
not being AT if the error found.
|
|
Reduces probing time of the modem in ~10s.
|
|
https://bugzilla.gnome.org/show_bug.cgi?id=697280
|
|
|
|
|
|
|
|
|
|
WMC ports will return "ERROR" to all AT commands, except for "AT" itself. So
just provide a custom AT probing logic, which uses "ATE0" instead, and assumes
the port is not an AT port if an error is returned.
|
|
Seems that trying to use the SIM storage hangs a UMW190 modem, so just fully
ignore it for now.
https://bugzilla.gnome.org/show_bug.cgi?id=696724
|