diff options
author | Leon Lindenfelser <llindenfelser@multitech.com> | 2015-11-18 11:16:11 -0600 |
---|---|---|
committer | Leon Lindenfelser <llindenfelser@multitech.com> | 2015-11-18 11:16:11 -0600 |
commit | ce5c78c53be8d66da4a2cccdf18b622c0b77e773 (patch) | |
tree | ec4b374b788034fdd182be841699a51abc84ec6e /CommandTerminal/CmdMinimumPower.cpp | |
parent | f484beed77531d7ef2da65cf049fe9c4ac6b7d08 (diff) | |
download | mtdot-box-evb-factory-firmware-ce5c78c53be8d66da4a2cccdf18b622c0b77e773.tar.gz mtdot-box-evb-factory-firmware-ce5c78c53be8d66da4a2cccdf18b622c0b77e773.tar.bz2 mtdot-box-evb-factory-firmware-ce5c78c53be8d66da4a2cccdf18b622c0b77e773.zip |
Added functionality to get the guts of these commands working with storage
mapped into unused mDot commands. Over write the mDot defaults in these
storage locations with the appropriate defaults for these 5 commands.
Diffstat (limited to 'CommandTerminal/CmdMinimumPower.cpp')
-rw-r--r-- | CommandTerminal/CmdMinimumPower.cpp | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/CommandTerminal/CmdMinimumPower.cpp b/CommandTerminal/CmdMinimumPower.cpp index 96aa28e..f3c997e 100644 --- a/CommandTerminal/CmdMinimumPower.cpp +++ b/CommandTerminal/CmdMinimumPower.cpp @@ -1,5 +1,7 @@ #include "CmdMinimumPower.h" +//SPECIAL NOTE: Minimum power is stored in the LoraConfig WakeTimeout field. We decided to use 5 LoRaConfig locations, +// that are not used for the DotBox, for the 5 DotBox settings... +minsize, +maxsize, +minpwr, +maxpwr and +data. CmdMinimumPower::CmdMinimumPower(mDot* dot, mts::MTSSerial& serial) : Command(dot, "Minimum Power", "AT+MINPWR", "Set the minimum transmit power for sweep survey mode"), _serial(serial) { @@ -14,8 +16,7 @@ uint32_t CmdMinimumPower::action(std::vector<std::string> args) { if (_dot->getVerbose()) _serial.writef("Minimum Power: "); -//ToDo: Change from _dot->getTxPower() to the structure we will use for this. - _serial.writef("%lu\r\n", _dot->getTxPower()); + _serial.writef("%lu\r\n", _dot->getWakeTimeout()); } else if (args.size() == 2) { @@ -23,7 +24,7 @@ uint32_t CmdMinimumPower::action(std::vector<std::string> args) uint32_t power = 0; sscanf(args[1].c_str(), "%lu", &power); - if ((code = _dot->setTxPower(power)) != mDot::MDOT_OK) + if ((code = _dot->setWakeTimeout(power)) != mDot::MDOT_OK) { std::string error = mDot::getReturnCodeString(code) + " - " + _dot->getLastError(); setErrorMessage(error); @@ -52,7 +53,12 @@ bool CmdMinimumPower::verify(std::vector<std::string> args) setErrorMessage("Invalid minimum transmit power for sweep survey mode, expects (2-20)"); return false; } -//ToDo: Output warning if > maximum power. + if (power > _dot->getWakeMode()) //WakeMode holds the MaxPower setting. + { + setErrorMessage("+MINPWR cannot be greater than +MAXPWR. Please increase +MAXPWR first."); + return false; + } + return true; } |