MultiTech / Mbed OS mDot_AT_firmware_CUSTOM

Dependencies:   libmDot-Custom MTS-Serial

Fork of mDot_AT_firmware_CUSTOM by Jason Reiss

To change channel plans replace AS923 with AU915, EU868, KR920 or US915 on line 15

#define CHANNEL_PLAN CP_AS923

See Supported Channel Plans

Committer:
Jason Reiss
Date:
Mon Aug 29 10:05:41 2016 -0500
Revision:
14:e80ace5a6834
Parent:
9:ff62b20f7000
Update commands

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Mike Fiore 4:666017851052 1 #include "CmdWakeDelay.h"
Mike Fiore 4:666017851052 2
Jason Reiss 14:e80ace5a6834 3 CmdWakeDelay::CmdWakeDelay() :
Jason Reiss 14:e80ace5a6834 4 Command("Wake Delay", "AT+WD", "Time to wait for data after wakeup signal (milliseconds)", "(2-2147483646) ms")
Mike Fiore 4:666017851052 5 {
Mike Fiore 4:666017851052 6 _queryable = true;
Mike Fiore 4:666017851052 7 }
Mike Fiore 4:666017851052 8
Mike Fiore 4:666017851052 9 uint32_t CmdWakeDelay::action(std::vector<std::string> args)
Mike Fiore 4:666017851052 10 {
Mike Fiore 4:666017851052 11 if (args.size() == 1)
Mike Fiore 4:666017851052 12 {
Jason Reiss 14:e80ace5a6834 13 CommandTerminal::Serial()->writef("%lu\r\n", CommandTerminal::Dot()->getWakeDelay());
Mike Fiore 4:666017851052 14 }
Mike Fiore 4:666017851052 15 else if (args.size() == 2)
Mike Fiore 4:666017851052 16 {
Mike Fiore 9:ff62b20f7000 17 int delay;
Mike Fiore 9:ff62b20f7000 18 sscanf(args[1].c_str(), "%d", &delay);
Mike Fiore 4:666017851052 19
Jason Reiss 14:e80ace5a6834 20 if (CommandTerminal::Dot()->setWakeDelay(delay) != mDot::MDOT_OK) {
Jason Reiss 14:e80ace5a6834 21 CommandTerminal::setErrorMessage(CommandTerminal::Dot()->getLastError());;
Mike Fiore 4:666017851052 22 return 1;
Mike Fiore 4:666017851052 23 }
Mike Fiore 4:666017851052 24 }
Mike Fiore 4:666017851052 25
Mike Fiore 4:666017851052 26 return 0;
Mike Fiore 4:666017851052 27 }
Mike Fiore 4:666017851052 28
Mike Fiore 4:666017851052 29 bool CmdWakeDelay::verify(std::vector<std::string> args)
Mike Fiore 4:666017851052 30 {
Mike Fiore 4:666017851052 31 if (args.size() == 1)
Mike Fiore 4:666017851052 32 return true;
Mike Fiore 4:666017851052 33
Mike Fiore 4:666017851052 34 if (args.size() == 2)
Mike Fiore 4:666017851052 35 {
Mike Fiore 9:ff62b20f7000 36 int delay;
Mike Fiore 9:ff62b20f7000 37 if (sscanf(args[1].c_str(), "%d", &delay) != 1) {
Jason Reiss 14:e80ace5a6834 38 CommandTerminal::setErrorMessage("Invalid argument");
Mike Fiore 4:666017851052 39 return false;
Mike Fiore 4:666017851052 40 }
Mike Fiore 4:666017851052 41
Jason Reiss 14:e80ace5a6834 42 if (delay < 2 || delay > INT_MAX-1) {
Jason Reiss 14:e80ace5a6834 43 CommandTerminal::setErrorMessage("Invalid delay, expects (2-2147483646) ms");
Mike Fiore 4:666017851052 44 return false;
Mike Fiore 4:666017851052 45 }
Mike Fiore 4:666017851052 46
Mike Fiore 4:666017851052 47 return true;
Mike Fiore 4:666017851052 48 }
Mike Fiore 4:666017851052 49
Jason Reiss 14:e80ace5a6834 50 CommandTerminal::setErrorMessage("Invalid arguments");
Mike Fiore 4:666017851052 51 return false;
Mike Fiore 4:666017851052 52 }