summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMykola Salomatin <mykola.salomatin@globallogic.com>2023-02-01 20:16:27 +0200
committerMykola Salomatin <mykola.salomatin@globallogic.com>2023-02-01 20:16:27 +0200
commitf682d77822b585b6a814456dc22c254a3bf72a5e (patch)
treef062126be0e129689889f48cf3d93abf330e19c5
parent9dd23340c9254c2cd73642f5d3a5d3ec19ff15da (diff)
downloadlibmts-io-f682d77822b585b6a814456dc22c254a3bf72a5e.tar.gz
libmts-io-f682d77822b585b6a814456dc22c254a3bf72a5e.tar.bz2
libmts-io-f682d77822b585b6a814456dc22c254a3bf72a5e.zip
[MTX-4769] mPower R.6.3.X: L6G1 Support - Cellular Diagnostics
Add cellular diagnostics support for Sequans radio modem.
-rw-r--r--src/MTS_IO_SequansRadio.cpp29
1 files changed, 27 insertions, 2 deletions
diff --git a/src/MTS_IO_SequansRadio.cpp b/src/MTS_IO_SequansRadio.cpp
index f3b32fb..369f778 100644
--- a/src/MTS_IO_SequansRadio.cpp
+++ b/src/MTS_IO_SequansRadio.cpp
@@ -543,10 +543,35 @@ ICellularRadio::CODE SequansRadio::getSimLockAttemptsByType(const std::string& s
}
const std::vector<std::string>& SequansRadio::getDiagCommands(bool) {
- // TODO: Fill the list of commands in scope of the "L6G1 - Cellular Diagnostics" feature
-
// Declare as static to initialize only when used, but cache the results.
const static std::vector<std::string> vCommands {
+ // Radio model and firmware:
+ "AT+CGMI", "AT+CGMM", "AT+CGMR", "ATI1", "at!=showVersion",
+
+ // All carrier profiles that are supported:
+ "AT+SQNCTM=?",
+
+ // Current operator profile on the radio side:
+ "AT+SQNCTM?", "AT+CGSN",
+
+ // SIM card information:
+ "AT+CRSM=176,12258,0,0,0", "AT+CPIN?", "AT+CPINR=\"SIM PIN\"", "AT+CPINR=\"SIM PUK\"",
+
+ // Operating mode of the radio:
+ "AT+CFUN?", "AT^AUTOATT?", "AT+SQNAUTOCONNECT?",
+
+ // Low-level network settings:
+ "AT+WS46?", "AT+CEMODE?",
+
+ // Data connection configuration:
+ "AT+CGDCONT?", "AT+CGAUTH?",
+
+ // Registration and connection to the tower:
+ "AT+CSQ", "AT+COPS?", "AT+CEREG?", "AT+SQNMONI=0",
+ "AT+SQNQRCCI?", "AT+CESQ", "AT+SQNQRUP?",
+
+ // Data connection status:
+ "AT+CGACT?", "AT+CGCONTRDP=1", "AT+CGCONTRDP=2", "AT+CGCONTRDP=3"
};
return vCommands;