with 36errors

Dependencies:   MTS-Serial libxDot-dev-mbed5-deprecated

Fork of Dot-AT-Firmware by MultiTech

Committer:
Mike Fiore
Date:
Fri Nov 04 14:25:43 2016 -0500
Revision:
14:f9a77400b622
Child:
16:d5cf2af81a6d
update from git revision 2.0.16

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Mike Fiore 14:f9a77400b622 1 #include "CmdJoinRx1Offset.h"
Mike Fiore 14:f9a77400b622 2 #include "CommandTerminal.h"
Mike Fiore 14:f9a77400b622 3
Mike Fiore 14:f9a77400b622 4 CmdJoinRx1Offset::CmdJoinRx1Offset()
Mike Fiore 14:f9a77400b622 5 :
Mike Fiore 14:f9a77400b622 6 Command("Join Rx1 DR Offset", "AT+JRXO", "Join Rx1 datarate offset", "(US:0-3,AU:0-3,EU:0-5)") {
Mike Fiore 14:f9a77400b622 7
Mike Fiore 14:f9a77400b622 8 }
Mike Fiore 14:f9a77400b622 9
Mike Fiore 14:f9a77400b622 10 uint32_t CmdJoinRx1Offset::action(std::vector<std::string> args) {
Mike Fiore 14:f9a77400b622 11
Mike Fiore 14:f9a77400b622 12 if (args.size() == 1) {
Mike Fiore 14:f9a77400b622 13 CommandTerminal::Serial()->writef("%d\r\n", CommandTerminal::Dot()->getJoinRx1DataRateOffset());
Mike Fiore 14:f9a77400b622 14 }
Mike Fiore 14:f9a77400b622 15 else if (args.size() == 2) {
Mike Fiore 14:f9a77400b622 16 std::string dr = mts::Text::toUpper(args[1]);
Mike Fiore 14:f9a77400b622 17
Mike Fiore 14:f9a77400b622 18 int offset = 0;
Mike Fiore 14:f9a77400b622 19 sscanf(dr.c_str(), "%d", &offset);
Mike Fiore 14:f9a77400b622 20
Mike Fiore 14:f9a77400b622 21 if (CommandTerminal::Dot()->setJoinRx1DataRateOffset(offset) != mDot::MDOT_OK) {
Mike Fiore 14:f9a77400b622 22 CommandTerminal::setErrorMessage(CommandTerminal::Dot()->getLastError());;
Mike Fiore 14:f9a77400b622 23 return 1;
Mike Fiore 14:f9a77400b622 24 }
Mike Fiore 14:f9a77400b622 25 }
Mike Fiore 14:f9a77400b622 26
Mike Fiore 14:f9a77400b622 27 return 0;
Mike Fiore 14:f9a77400b622 28 }
Mike Fiore 14:f9a77400b622 29
Mike Fiore 14:f9a77400b622 30 bool CmdJoinRx1Offset::verify(std::vector<std::string> args) {
Mike Fiore 14:f9a77400b622 31 if (args.size() == 1)
Mike Fiore 14:f9a77400b622 32 return true;
Mike Fiore 14:f9a77400b622 33
Mike Fiore 14:f9a77400b622 34 if (args.size() == 2) {
Mike Fiore 14:f9a77400b622 35 std::string dr = mts::Text::toUpper(args[1]);
Mike Fiore 14:f9a77400b622 36
Mike Fiore 14:f9a77400b622 37 int offset = -1;
Mike Fiore 14:f9a77400b622 38 sscanf(dr.c_str(), "%d", &offset);
Mike Fiore 14:f9a77400b622 39
Mike Fiore 14:f9a77400b622 40 if (CommandTerminal::Dot()->getFrequencyBand() == mDot::FB_US915 || CommandTerminal::Dot()->getFrequencyBand() == mDot::FB_AU915) {
Mike Fiore 14:f9a77400b622 41 if (offset < 0 || offset > 3) {
Mike Fiore 14:f9a77400b622 42 CommandTerminal::setErrorMessage("Invalid offset, expects (0-3)");
Mike Fiore 14:f9a77400b622 43 return false;
Mike Fiore 14:f9a77400b622 44 }
Mike Fiore 14:f9a77400b622 45 } else {
Mike Fiore 14:f9a77400b622 46 if (offset < 0 || offset > 5) {
Mike Fiore 14:f9a77400b622 47 CommandTerminal::setErrorMessage("Invalid offset, expects (0-5)");
Mike Fiore 14:f9a77400b622 48 return false;
Mike Fiore 14:f9a77400b622 49 }
Mike Fiore 14:f9a77400b622 50 }
Mike Fiore 14:f9a77400b622 51
Mike Fiore 14:f9a77400b622 52 return true;
Mike Fiore 14:f9a77400b622 53 }
Mike Fiore 14:f9a77400b622 54
Mike Fiore 14:f9a77400b622 55 CommandTerminal::setErrorMessage("Invalid arguments");
Mike Fiore 14:f9a77400b622 56 return false;
Mike Fiore 14:f9a77400b622 57 }