diff options
| author | Maksym Telychko <maksym.telychko@globallogic.com> | 2019-08-08 13:41:08 +0300 | 
|---|---|---|
| committer | Maksym Telychko <maksym.telychko@globallogic.com> | 2019-08-08 13:41:08 +0300 | 
| commit | f3605192c24508d4b4b4eb474ff6890a2917043c (patch) | |
| tree | 4bd8136e3d241676a20b530b88afb0195bd4aa4f /src | |
| parent | dde61cb74828054f00518ca3b931f0b20009cc79 (diff) | |
| download | libmts-io-f3605192c24508d4b4b4eb474ff6890a2917043c.tar.gz libmts-io-f3605192c24508d4b4b4eb474ff6890a2917043c.tar.bz2 libmts-io-f3605192c24508d4b4b4eb474ff6890a2917043c.zip | |
MTX-2898 mpower 2-3-4g: quectel set cellular mode fix
Diffstat (limited to 'src')
| -rw-r--r-- | src/MTS_IO_EG95Radio.cpp | 12 | 
1 files changed, 10 insertions, 2 deletions
| diff --git a/src/MTS_IO_EG95Radio.cpp b/src/MTS_IO_EG95Radio.cpp index f934e50..7705e64 100644 --- a/src/MTS_IO_EG95Radio.cpp +++ b/src/MTS_IO_EG95Radio.cpp @@ -67,15 +67,23 @@ ICellularRadio::CODE EG95Radio::setCellularMode(CELLULAR_MODES networks) {          default: printError("Unhandled preferred network flag.");          }      } +      std::string sCmd;      if (prefNet.size() == 2) { // *g-only          sCmd = "AT+QCFG=\"nwscanmode\"," + std::to_string(prefOnly);      } else { // preferred -        sCmd = "AT+QCFG=\"nwscanseq\"," + prefNet; +        sCmd = "AT+QCFG=\"nwscanmode\",0";      }      std::string cmdResult = sendCommand(sCmd);      if (cmdResult.find(ICellularRadio::RSP_OK) == std::string::npos) { -        printDebug("%s| AT+QCFG returned unexpected response: [%s][%s]", getName().c_str(), sCmd.c_str(), cmdResult.c_str()); +        printDebug("%s| AT+QCFG=\"nwscanmode\" returned unexpected response: [%s][%s]", getName().c_str(), sCmd.c_str(), cmdResult.c_str()); +        return FAILURE; +    } + +    sCmd = "AT+QCFG=\"nwscanseq\"," + prefNet; +    cmdResult = sendCommand(sCmd); +    if (cmdResult.find(ICellularRadio::RSP_OK) == std::string::npos) { +        printDebug("%s| AT+QCFG=\"nwscanseq\" returned unexpected response: [%s][%s]", getName().c_str(), sCmd.c_str(), cmdResult.c_str());          return FAILURE;      }      return SUCCESS; | 
