Commit Graph

24 Commits

Author SHA1 Message Date
Aleksander Morgado
0944e59252 ublox: parse +UGCNTRD stats as unsigned 64bit values
[1551646332.583651] (ttyACM2): --> 'AT+UGCNTRD<CR>'
  [1551646332.626567] (ttyACM2): <-- '<CR><LF>+UGCNTRD: 1,0,0,0,0<CR><LF><CR><LF>+UGCNTRD: 2,1397316870,113728263578,1397316870,113728263578<CR><LF><CR><LF>OK<CR><LF>'
  [1551646332.627120] Reloading stats failed: Couldn't load primary PDP context 2 statistics: Error parsing session RX bytes
2019-03-29 10:07:29 +00:00
Aleksander Morgado
b1d69a69f9 ublox,helpers: rename enum
We're not going to use CFUN/COPS just for bands, but also for modes,
so use more generic names.
2019-01-30 12:10:03 +01:00
Aleksander Morgado
c3f4fe063f ublox: rework support config loading
Make mm_ublox_get_support_config() return FALSE only when GError is
set. And also, prepare a preload_support_config() method to be run
before using any information from the support configuration (i.e.
don't do it in load_supported_bands(), do it in load_current_bands()
or in set_current_bands().
2019-01-30 12:10:03 +01:00
Aleksander Morgado
bbb96cd3f9 ublox: minor indentation fixes 2019-01-30 12:10:03 +01:00
Mark-Jablonsky
c1aa658802 ublox: add band detection support for additional modems
The u-blox plugin was originally written to support the TOBY-L4 only.
This caused issues with mmcli reporting the correct supported and
current bands because the logic was based only for the TOBY-L4 and
the AT commands used in the implementaion are only supported by
a couple of modems.

There is now a hard-coded modem list that contains the supported bands
and the supported modes. A hard-coded list was chosen over a logic
based list because ublox modems only report the frequency of the bands
they support in the current mode they are in. For further justification,
the reported frequency could relate to multiple bands that are not all
supported by the modem, and not all the supported bands are always caught
depending on the mode the modem is in (e.g. 2G, 3G, 4G). The only
realiable way to retrieve the correct supported bands is to have the list
hard-coded. Based off of the modem, the code chooses whether it is
appropriate to issue +UACT or +UBANDSEL to retrieve the current bands list.
Additionally, the appropriate AT command of +CFUN=4 or +COPS=2 is chosen
to detach from the network when the mmcli --set-current-bands command is
issued. The new setup also adds a header file that contains the modem list.
This should make adding support for future additional modems easier as long
as future modems stick to the same AT command interface that is currently
supported by the plugin.
2019-01-30 12:10:03 +01:00
Aleksander Morgado
b774e58dd0 ublox: new +UAUTHREQ=? tester 2017-09-15 10:31:21 -07:00
Aleksander Morgado
a0768a13f6 ublox: new AT+UACT=X command builder 2017-09-15 10:31:21 -07:00
Aleksander Morgado
826c5ad74a ublox: new AT+UACT=? test parser 2017-09-15 10:31:21 -07:00
Aleksander Morgado
dbb8f7235d ublox: new AT+UACT? response parser 2017-09-15 10:31:21 -07:00
Aleksander Morgado
e6e53467ee ublox: new +UGCNTRD? response parser
The parser returns only the results for the CID being specified as input. This
is so that we can just query the statistics of the CID currently in use by the
bearer.
2016-10-12 13:24:09 +02:00
Aleksander Morgado
1c69a847ae ublox: new +UBANDSEL=X command builder 2016-10-12 13:24:09 +02:00
Aleksander Morgado
09c9ca5749 ublox: new +UBANDSEL? response parser 2016-10-12 13:24:09 +02:00
Aleksander Morgado
4632836d40 ublox: implement supported bands loading 2016-10-12 13:24:09 +02:00
Aleksander Morgado
29517c99ba ublox: new +UPINCNT response parser 2016-10-12 13:24:08 +02:00
Aleksander Morgado
7cb11f72cd ublox: implement current modes setting and modem power up/down/off/reset
Changing current allowed/preferred modes requires the device to be in low-power
mode, so we will make sure we return an error if any power operation is already
ongoing when a new one is requested.
2016-10-12 11:29:52 +02:00
Aleksander Morgado
9d78f05cbd ublox: new +URAT=X command builder 2016-10-12 11:29:52 +02:00
Aleksander Morgado
151d608eec ublox: new u-blox specific +CFUN? response parser 2016-10-12 11:29:52 +02:00
Aleksander Morgado
bde9c4795a ublox: new +URAT? response parser 2016-10-12 11:29:52 +02:00
Aleksander Morgado
29ace8b120 ublox: implement supported modes loading
AT+URAT=? provides the format expected, but looks like it isn't implemented
differently for the different u-blox devices seen, so we need an additional
level of filtering which currently is applied per device model string.
2016-10-12 11:29:52 +02:00
Aleksander Morgado
a4466e83b7 ublox: new +URAT=? response parser 2016-10-12 11:29:52 +02:00
Aleksander Morgado
81715ee591 ublox: new +UIPADDR=N response parser 2016-10-12 11:29:52 +02:00
Aleksander Morgado
eade066d8a ublox: generate enum types for usb profile and networking mode 2016-10-12 11:29:51 +02:00
Aleksander Morgado
9d2c2a75cc ublox: new 'AT+UBMCONF?' response parser 2016-10-12 11:29:51 +02:00
Aleksander Morgado
241b63304b ublox: new 'AT+UUSBCONF?' response parser 2016-10-12 11:29:51 +02:00