Multitech xDot AT Firmware

Dependencies:   MTS-Serial libxDot-mbed5

Revision:
14:f9a77400b622
Parent:
9:ff62b20f7000
Child:
16:d5cf2af81a6d
--- a/CommandTerminal/CmdTxFrequency.cpp	Fri Nov 04 19:10:24 2016 +0000
+++ b/CommandTerminal/CmdTxFrequency.cpp	Fri Nov 04 14:25:43 2016 -0500
@@ -1,14 +1,9 @@
 #include "CmdTxFrequency.h"
 #include <climits>
 
-CmdTxFrequency::CmdTxFrequency(mDot* dot, mts::MTSSerial& serial) :
-    Command(dot, "Tx Frequency", "AT+TXF", "Set Tx frequency"), _serial(serial)
-{
-    _help = std::string(text()) + ": " + std::string(desc());
-    if (_dot->getFrequencyBand() == mDot::FB_868)
-        _usage = "(0,863000000-870000000)";
-    else
-        _usage = "(0,902000000-928000000)";
+
+CmdTxFrequency::CmdTxFrequency() :
+    Command("Tx Frequency", "AT+TXF", "Set Tx frequency", "US:(0,902000000-928000000), AU:(0, 915000000-928000000), EU:(0,863000000-870000000)") {
     _queryable = true;
 }
 
@@ -16,21 +11,16 @@
 {
     if (args.size() == 1)
     {
-        if (_dot->getVerbose())
-            _serial.writef("Tx Frequency: ");
-
-        _serial.writef("%lu\r\n", _dot->getTxFrequency());
+        CommandTerminal::Serial()->writef("%lu\r\n", CommandTerminal::Dot()->getTxFrequency());
     }
     else if (args.size() == 2)
     {
-        int32_t code;
         int frequency = 0;
 
         sscanf(args[1].c_str(), "%d", &frequency);
-        if ((code = _dot->setTxFrequency(frequency)) != mDot::MDOT_OK)
+        if (CommandTerminal::Dot()->setTxFrequency(frequency) != mDot::MDOT_OK)
         {
-            
-            setErrorMessage(_dot->getLastError());;
+            CommandTerminal::setErrorMessage(CommandTerminal::Dot()->getLastError());;
             return 1;
         }
     }
@@ -47,15 +37,17 @@
     {
         int frequency = ULONG_MAX;
         if (sscanf(args[1].c_str(), "%d", &frequency) != 1) {
-            setErrorMessage("Invalid argument");
+            CommandTerminal::setErrorMessage("Invalid argument");
             return false;
         }
 
-        if (frequency != 0 && (frequency < int(_dot->getMinFrequency()) || frequency > int(_dot->getMaxFrequency()))) {
-            if (_dot->getFrequencyBand() == mDot::FB_868)
-                setErrorMessage("Invalid frequency, expects (0,863000000-870000000)"); 
+        if (frequency != 0 && (frequency < int(CommandTerminal::Dot()->getMinFrequency()) || frequency > int(CommandTerminal::Dot()->getMaxFrequency()))) {
+            if (CommandTerminal::Dot()->getFrequencyBand() == mDot::FB_EU868)
+                CommandTerminal::setErrorMessage("Invalid frequency, expects (0,863000000-870000000)"); 
+            else if (CommandTerminal::Dot()->getFrequencyBand() == mDot::FB_AU915)
+                CommandTerminal::setErrorMessage("Invalid frequency, expects (0,915000000-928000000)");
             else
-                setErrorMessage("Invalid frequency, expects (0,902000000-928000000)");
+                CommandTerminal::setErrorMessage("Invalid frequency, expects (0,902000000-928000000)");
 
             return false;
         }
@@ -63,7 +55,7 @@
         return true;
     }
 
-    setErrorMessage("Invalid arguments");
+    CommandTerminal::setErrorMessage("Invalid arguments");
     return false;
 }