AT Command Set mDot firmware with updated libmDot, to fix endian problem with joining LoRaWAN network
Dependencies: MTS-Serial libmDot mbed-rtos mbed-src
Fork of mDot_AT_firmware by
CmdDebugBaudRate.cpp
00001 #include "CmdDebugBaudRate.h" 00002 00003 CmdDebugBaudRate::CmdDebugBaudRate(mDot* dot, mts::MTSSerial& serial) : 00004 Command(dot, "Debug Baud Rate", "AT+DIPR", "Set debug serial baud rate, default: 115200 "), _serial(serial) 00005 { 00006 _help = std::string(text()) + ": " + std::string(desc()); 00007 _usage = "(2400,4800,9600,19200,38400,57600,115200,230400,460800,921600)"; 00008 _queryable = true; 00009 } 00010 00011 uint32_t CmdDebugBaudRate::action(std::vector<std::string> args) 00012 { 00013 if (args.size() == 1) 00014 { 00015 if (_dot->getVerbose()) 00016 _serial.writef("Debug Baud Rate: "); 00017 00018 _serial.writef("%lu\r\n", _dot->getDebugBaud()); 00019 } 00020 else if (args.size() == 2) 00021 { 00022 int32_t code; 00023 uint32_t baudrate = 0; 00024 00025 sscanf(args[1].c_str(), "%lu", &baudrate); 00026 00027 if ((code = _dot->setDebugBaud(baudrate)) == mDot::MDOT_OK) { 00028 _serial.writef("Set Debug Baud Rate: %lu\r\n", baudrate); 00029 } else { 00030 std::string error = mDot::getReturnCodeString(code) + " - " + _dot->getLastError(); 00031 setErrorMessage(error); 00032 return 1; 00033 } 00034 } 00035 00036 return 0; 00037 } 00038 00039 bool CmdDebugBaudRate::verify(std::vector<std::string> args) 00040 { 00041 if (args.size() == 1) 00042 return true; 00043 00044 if (args.size() == 2) { 00045 uint32_t baudrate; 00046 00047 if (sscanf(args[1].c_str(), "%lu", &baudrate) != 1) { 00048 setErrorMessage("Invalid argument"); 00049 return false; 00050 } 00051 00052 return true; 00053 } 00054 00055 setErrorMessage("Invalid arguments"); 00056 return false; 00057 }
Generated on Tue Jul 12 2022 21:40:57 by
1.7.2
