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 MultiTech

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers CmdPing.cpp Source File

CmdPing.cpp

00001 #include "CmdPing.h"
00002 
00003 CmdPing::CmdPing(mDot* dot, mts::MTSSerial& serial) : Command(dot, "Send Ping", "AT+PING", "Sends ping and displays the servers received rssi and snr"), _serial(serial)
00004 {
00005     _help = std::string(text()) + ": " + std::string(desc());
00006     _usage = "(-140-0),(-20.0-20.0)";
00007 }
00008 
00009 uint32_t CmdPing::action(std::vector<std::string> args)
00010 {
00011     mDot::ping_response response;
00012     response = _dot->ping();
00013     if (response.status != mDot::MDOT_OK) {
00014         std::string error = mDot::getReturnCodeString(response.status);
00015 
00016         if (response.status != mDot::MDOT_NOT_JOINED)
00017             error +=  + " - " + _dot->getLastError();
00018 
00019         setErrorMessage(error);
00020         return 1;
00021     }
00022 
00023     _serial.writef("%d,%d.%d\r\n", response.rssi, response.snr / 10, abs(response.snr) % 10);
00024 
00025     return 0;
00026 }
00027