Age | Commit message (Collapse) | Author | Files |
|
|
|
Small fixes and improvements.
1. Fixed casing for the "FUMO Error: timeout, radio is not responding" message.
All error messages passed to the status callback shall start with "FUMO Error:"
2. Removed extra carriage return for the "abortFileUpload" command.
Passing "+++\r" instead of the "+++" to the radio works for Quectel but cause
issues for Telit.
At the same time Quectel specificly requires to
"Do not input any character within 1s after “+++” has been inputted."
in their FILE manual. Possibly, "any character" includes carriage return.
3. Fixed a typo: "lenght" -> "length"
|
|
Fixed message format for FUMO Done and FUMO Error messages.
The original code with "FUMO done" ("done" lowercase) and "FUMO error" ("error" lowercase)
was copied from the ME910C1-WW implementation. At the same time other places of the code
use Title Case for "Done", "Error" and "Info" messages.
This commit fixes the last bunch of messages in the QuectelRadio Delta FWU implementation to
use Title Case. This simplifies handling in various scripts and other components.
|
|
Fixed format of FILE upload log messages.
|
|
Implemented firmware version check detection.
|
|
Cleanup for the printouts and status messages.
|
|
Simplified usage of step callbacks in the QuectelRadio class.
Refactored existing function to use a wrapper and preven repetitive checks.
|
|
Started code cleanup before finishing the procedure.
Renamed functions related to the delta radio firmware upgrade to follow
established patterns:
- uploadDeltaFirmwareFile -> fumoLocalInject
- applyDeltaFirmwareFile -> fumoLocalApply
- removeDeltaFirmwareFile -> fumoLocalCleanup
- new function: updateFumoLocal - encapsulates all the magic for radios
that may not support separate stages for the delta upload and delta apply
|
|
Initial implementation of the "Apply delta firmware" step. Requires cleanup.
|
|
|
|
|
|
Merged all the changes from the intermediate release to master.
|
|
Fixed totally invalid string formatting for the stepCb argument.
The previous implementation caused Json::Value to select the following constructor:
```Value(const char* begin, const char* end); ///< Copy all, incl zeroes.```
Which, of course, resulted in OOM violations. Oops.
|
|
Fixes after a code review:
- increased timeout from 60 to 160 seconds for "Abnormal" cases;
- added hanlding for the "DME Abnormal" URC;
- added "kill OMA DM" logic for the timeout case.
|
|
Fixed AT+QODM parameters. AT+QODM parameters are case-sensitive.
|
|
This commits adds support for the Quectel-specific OMA DM commands.
This allows to trigger OMA DM procedure om Verizon to fetch the corrent APN
values and other settings from the network.
Expected radio output on success:
```
+QODM: "DME",0,DM Start
+QODM: "DME",0,DM End
```
Other +QODM URC codes are also possible according to information from Quectel forum:
https://forums.quectel.com/t/what-is-the-meaning-of-qodm-fumo-report-failed/2444/5.
But only "DM Start" and "DM End" responses are expected, supported and treated
as correct in the libmts-io.
|
|
Initial implementation of the delta firmware image upload for Quectel radios.
|
|
Declared base interface and added started implementation for the QuectelRadio class.
Implemented file listing (file status check) and file removal logic.
|
|
|
|
Use get/setCellularMode instead
Revert of commits:
4ef332ec707946a3cf2a55473d05dfc9af3d4b11
[MTS-MTQ] network radio mode switch: refactoring method name
143feb6a4587817d28c77e4df3a1b594b855f5e5
[MTS-MTQ] RAT mode switch: implementation for telit and quectel
|
|
|
|
|
|
|
|
Restored full qualification of the ICellularRadio::CODE object type
for all files that used full qualification before
(effectively, for all source files and only one header file).
This commit partially reverses 53efcef2e2f521135b323e194c45f1d9fa7b5d5d.
|
|
Refactored the CellularRadio class to include base stub implementation
for the "CellularRadio::getCarrierFromFirmware" and
"CellularRadio::getHardwareVersionFromFirmware" methods.
From now assuming that those two possibilities are not supported
by the modem until otherwise specified (i.e. until the method
implementation was overridden in derived class).
This change was implemented after a code review.
|
|
Now using "<rat>" field instead on number of fields returned in
"AT+QENG" result for the QuectelRadio::getNetworkStatus implementation.
This change was implemented after a code review.
|
|
Increased timeout for the AT+QPINC="SC" command up to 2 seconds
as the modem fails to respond in the current 500ms time limit
while executing several successive commands.
|
|
Fixed the timeouts for several AT commands, including SIM-related commands
|
|
|
|
A small fix for the QuectelRadio::getNetwork - removed extra `"` character
when only short / long operator name is returned by +COPS?
|
|
|
|
Added Quectel-specific implementation of the CellularRadio::getIsSimInserted and
CellularRadio::getSimLockAttempts utility methods
|
|
RAT - Radio Access Technology
|
|
Fixed a tiny difference between RSSI placement in TelitRadio and QuectelRadio implementation
|
|
Made the same changes for QuectelRadio as for the whole project
|
|
Fixed parsing of RSSI dBm in QuectelRadio::getNetworkStatus for GSM mode.
As stated in the datasheet[1], we should substract "111" from the value
in <rxlev> field in order to get a proper value in dBm.
The thing is that the values returned by a real device are already
out of the "0-63" range stated in a datasheet. And looks like those
values are already in a dBm scale. [2]
This commit removes additional substraction and saves the value of <rxlev> field
directly without any modifications.
Sources:
- [1] QuectelEC2x26EG9x26EM05QuecCellATCommandsManualV10.929966385.pdf, page 9, <rxlev> field description.
- [2] +QENG: "servingcell","NOCONN","GSM",REDACTED,REDACTED,REFACTED,REDACTED,8,522,0,-66,255,255,0,41,41,1,-,-,-,-,-,-,-,-,-,""
|
|
Changed implementation of the QuectelRadio::getService
- Replaced sscanf with functions from MTS::Text
- Emulated the behaviour of TelitRadio::getService - return FAILURE
when <Act> is not available
The TelitRadio::getService returns FAILURE when device stays without
a SIM card (probably, until it will be registered to the network)
|
|
Fixes and improvements
- Corrected the format of getNetwork output
- Fixed pasrsing for the trailing values in QuectelRadio::getNetworkStatus (removed extra characters)
- Removed empty "debug" field from QuectelRadio::getNetworkStatus output in GSM mode
- Corrected parsing in the QuectelRadio::getServiceDomain
- Corrected parsing in the QuectelRadio::getService
- Corrected target fields for Service Domain value in QuectelRadio::getNetworkStatus
|
|
Corrected the check for QENG="servingcell" prefix
|
|
Modified QuectelRadio::getNetworkStatus to populate Quectel-specific debug information.
Added as a separate commit for simple reverts
|
|
Added the full implementation of QuectelRadio class.
Ported the changes from a local branch to the new libmts-io architecture.
|
|
TelitRadio
|