summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorSerhii Kostiuk <serhii.o.kostiuk@globallogic.com>2019-06-12 09:51:50 +0300
committerSerhii Kostiuk <serhii.o.kostiuk@globallogic.com>2019-06-12 09:56:46 +0300
commit5649cebb23edc7ef20456e76b959e4a217a08594 (patch)
tree839ed6a4b815b5564e18727a66e7cc834bd3d0bc /src
parentc316cdffa1749a17b7f106ea526ac2288074920b (diff)
downloadlibmts-io-5649cebb23edc7ef20456e76b959e4a217a08594.tar.gz
libmts-io-5649cebb23edc7ef20456e76b959e4a217a08594.tar.bz2
libmts-io-5649cebb23edc7ef20456e76b959e4a217a08594.zip
[MTS-MTQ] QuectelRadio implementation
Updated the following functions to support Quectel radios: - CellularRadioFactory::createEG95Radio - fixed to build a EG95Radio instance; - ICellularRadio::extractModelFromResult - returning EG95 for EG95 radios; - ICellularRadio::convertModelToType - returning VALUE_TYPE_LTE for EG95.
Diffstat (limited to 'src')
-rw-r--r--src/MTS_IO_CellularRadioFactory.cpp4
-rw-r--r--src/MTS_IO_ICellularRadio.cpp24
2 files changed, 25 insertions, 3 deletions
diff --git a/src/MTS_IO_CellularRadioFactory.cpp b/src/MTS_IO_CellularRadioFactory.cpp
index 8ebd8dc..4ee8756 100644
--- a/src/MTS_IO_CellularRadioFactory.cpp
+++ b/src/MTS_IO_CellularRadioFactory.cpp
@@ -199,7 +199,5 @@ ICellularRadio* CellularRadioFactory::createLE866A1JS(const std::string &sPort)
ICellularRadio* CellularRadioFactory::createEG95Radio(const std::string& sPort) const
{
- // TODO: return new EG95Radio(sPort);
- printError("TODO: EG95Radio");
- return new HE910DRadio(sPort);
+ return new EG95Radio(sPort);
}
diff --git a/src/MTS_IO_ICellularRadio.cpp b/src/MTS_IO_ICellularRadio.cpp
index 2f19f3a..7f216d0 100644
--- a/src/MTS_IO_ICellularRadio.cpp
+++ b/src/MTS_IO_ICellularRadio.cpp
@@ -181,6 +181,27 @@ MTS::IO::ICellularRadio::CODE MTS::IO::ICellularRadio::convertModelToMtsShortCod
} else if (sModel.find("DE910") == 0) {
sCode = "EV3";
eCode = SUCCESS;
+ } else if (sModel.find("EG95") == 0) {
+ if (NULL == radioObject) {
+ sCode = VALUE_NOT_SUPPORTED;
+ eCode = ERROR;
+ } else {
+ std::string sValue;
+ eCode = radioObject->getFirmware(sValue);
+ if (eCode != SUCCESS) {
+ sCode = VALUE_NOT_SUPPORTED;
+ eCode = ERROR;
+ } else if (sValue.find("EG95E") != std::string::npos) {
+ sCode = "LEU7";
+ eCode = SUCCESS;
+ } else if (sValue.find("EG95NA") != std::string::npos) {
+ sCode = "LNA7";
+ eCode = SUCCESS;
+ } else {
+ sCode = VALUE_NOT_SUPPORTED;
+ eCode = ERROR;
+ }
+ }
} else {
sCode = VALUE_NOT_SUPPORTED;
printError("RADIO| Could not identify MTS short code from model. [%s]", sModel.c_str());
@@ -274,6 +295,9 @@ MTS::IO::ICellularRadio::CODE MTS::IO::ICellularRadio::convertModelToType(const
} else if (sModel.find("DE910") == 0) {
sType = VALUE_TYPE_CDMA;
eCode = SUCCESS;
+ } else if (sModel.find("EG95") == 0) {
+ sType = VALUE_TYPE_LTE;
+ eCode = SUCCESS;
} else {
sType = VALUE_TYPE_GSM;
eCode = ERROR;