Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: MTS-Serial libmDot mbed-rtos mbed
Fork of mDot_USB_AT_firmware by
CmdDisplayConfig.cpp
00001 #include "CmdDisplayConfig.h" 00002 00003 CmdDisplayConfig::CmdDisplayConfig(mDot* dot, mts::MTSSerial& serial) 00004 : 00005 Command(dot, "Display Settings", "AT&V", "Displays current settings and status"), 00006 _serial(serial) { 00007 _help = std::string(text()) + ": " + std::string(desc()); 00008 _usage = "TABLE"; 00009 } 00010 00011 uint32_t CmdDisplayConfig::action(std::vector<std::string> args) { 00012 00013 _serial.writef("Device ID:\t\t"); 00014 _serial.writef("%s\r\n", mts::Text::bin2hexString(_dot->getDeviceId(), ":").c_str()); 00015 00016 _serial.writef("Frequency Band:\t\t%s\r\n", mDot::FrequencyBandStr(_dot->getFrequencyBand()).c_str()); 00017 _serial.writef("Frequency Sub Band:\t%u\r\n", _dot->getFrequencySubBand()); 00018 00019 _serial.writef("Public Network:\t\t%s\r\n", _dot->getPublicNetwork() ? "on" : "off"); 00020 _serial.writef("Start Up Mode:\t\t%s\r\n", mDot::ModeStr(_dot->getStartUpMode()).c_str()); 00021 00022 _serial.writef("Network Address:\t%s\r\n", mts::Text::bin2hexString(_dot->getNetworkAddress()).c_str()); 00023 00024 _serial.writef("Network ID:\t\t"); 00025 _serial.writef("%s\r\n", mts::Text::bin2hexString(_dot->getNetworkId(), ":").c_str()); 00026 00027 _serial.writef("Network ID Passphrase:\t%s\r\n", _dot->getNetworkName().c_str()); 00028 00029 _serial.writef("Network Key:\t\t"); 00030 _serial.writef("%s\r\n", mts::Text::bin2hexString(_dot->getNetworkKey(), ".").c_str()); 00031 00032 _serial.writef("Network Key Passphrase:\t%s\r\n", _dot->getNetworkPassphrase().c_str()); 00033 00034 _serial.writef("Network Session Key:\t"); 00035 _serial.writef("%s\r\n", mts::Text::bin2hexString(_dot->getNetworkSessionKey(), ".").c_str()); 00036 00037 _serial.writef("Data Session Key:\t"); 00038 _serial.writef("%s\r\n", mts::Text::bin2hexString(_dot->getDataSessionKey(), ".").c_str()); 00039 00040 _serial.writef("Network Join Mode:\t%s\r\n", mDot::JoinModeStr(_dot->getJoinMode()).c_str()); 00041 00042 _serial.writef("Network Join Retries:\t%u\r\n", _dot->getJoinRetries()); 00043 00044 _serial.writef("Preserve Session:\t%s\r\n", _dot->getPreserveSession() ? "on" : "off"); 00045 00046 _serial.writef("Join Byte Order:\t%s\r\n", _dot->getJoinByteOrder() ? "MSB" : "LSB"); 00047 00048 _serial.writef("Join Delay:\t\t%d\r\n", _dot->getJoinDelay()); 00049 00050 _serial.writef("App Port:\t\t%d\r\n", _dot->getAppPort()); 00051 00052 _serial.writef("Link Check Threshold:\t"); 00053 if (_dot->getLinkCheckThreshold() == 0) { 00054 _serial.writef("off\r\n"); 00055 } else { 00056 _serial.writef("%lu\r\n", _dot->getLinkCheckThreshold()); 00057 } 00058 00059 _serial.writef("Link Check Count:\t"); 00060 if (_dot->getLinkCheckCount() == 0) { 00061 _serial.writef("off\r\n"); 00062 } else { 00063 _serial.writef("%lu packets\r\n", _dot->getLinkCheckCount()); 00064 } 00065 00066 _serial.writef("Error Correction:\t"); 00067 if (_dot->getFec() == 0) { 00068 _serial.writef("off\r\n"); 00069 } else { 00070 _serial.writef("%u bytes\r\n", _dot->getFec()); 00071 } 00072 00073 _serial.writef("ACK Retries:\t\t"); 00074 if (_dot->getAck() == 0) { 00075 _serial.writef("off\r\n"); 00076 } else { 00077 _serial.writef("%u\r\n", _dot->getAck()); 00078 } 00079 00080 _serial.writef("Packet Repeat:\t\t%d\r\n", _dot->getRepeat()); 00081 00082 _serial.writef("Encryption:\t\t%s\r\n", _dot->getAesEncryption() ? "on" : "off"); 00083 _serial.writef("CRC:\t\t\t%s\r\n", _dot->getCrc() ? "on" : "off"); 00084 _serial.writef("Adaptive Data Rate:\t%s\r\n", _dot->getAdr() ? "on" : "off"); 00085 _serial.writef("Command Echo:\t\t%s\r\n", _dot->getEcho() ? "on" : "off"); 00086 _serial.writef("Verbose Response:\t%s\r\n", _dot->getVerbose() ? "on" : "off"); 00087 00088 _serial.writef("Tx Frequency:\t\t%lu\r\n", _dot->getTxFrequency()); 00089 00090 _serial.writef("Tx Data Rate:\t\tDR%d - %s\r\n", _dot->getTxDataRate(), _dot->getDateRateDetails(_dot->getTxDataRate()).c_str()); 00091 _serial.writef("Tx Power:\t\t%u\r\n", _dot->getTxPower()); 00092 _serial.writef("Tx Antenna Gain:\t%d\r\n", _dot->getAntennaGain()); 00093 _serial.writef("Tx Wait:\t\t%s\r\n", _dot->getTxWait() ? "on" : "off"); 00094 00095 _serial.writef("Tx Inverted Signal:\t%s\r\n", _dot->getTxInverted() ? "on" : "off"); 00096 00097 bool hasChannels = false; 00098 for (size_t i = 0; i < 16; i++) { 00099 if (_dot->getConfigChannels()[i] != 0) { 00100 hasChannels = true; 00101 break; 00102 } 00103 } 00104 00105 if (hasChannels) { 00106 _serial.writef("Tx Channels --------------------------------------\r\n"); 00107 _serial.writef("\tIndex\tFrequency\tDR Range\r\n"); 00108 for (size_t i = 0; i < 16; i++) { 00109 if (_dot->getConfigChannels()[i] != 0) 00110 _serial.writef("\t%d:\t%09lu\t%02x\r\n", i, _dot->getConfigChannels()[i], _dot->getConfigChannelRanges()[i]); 00111 } 00112 _serial.writef("--------------------------------------------------\r\n"); 00113 } 00114 00115 _serial.writef("Rx Delay:\t\t%d s\r\n", _dot->getRxDelay()); 00116 // _serial.writef("Rx Frequency:\t\t%lu\r\n", _dot->getRxFrequency()); 00117 // _serial.writef("Rx Data Rate:\t\t%s\r\n", mDot::DataRateStr(_dot->getRxDataRate()).c_str()); 00118 _serial.writef("Rx Inverted Signal:\t%s\r\n", _dot->getRxInverted() ? "on" : "off"); 00119 00120 _serial.writef("Rx Output Style:\t%s\r\n", mDot::RxOutputStr(_dot->getRxOutput()).c_str()); 00121 00122 _serial.writef("Debug Baud Rate:\t%lu\r\n", _dot->getDebugBaud()); 00123 _serial.writef("Serial Baud Rate:\t%lu\r\n", _dot->getBaud()); 00124 _serial.writef("Serial Flow Control:\t%s\r\n", _dot->getFlowControl() == 0 ? "off" : "on"); 00125 _serial.writef("Serial Clear On Error:\t%s\r\n", _dot->getSerialClearOnError() == 0 ? "off" : "on"); 00126 00127 uint8_t mode = _dot->getWakeMode(); 00128 _serial.writef("Wake Mode:\t\t%s\r\n", mode == 0 ? "INTERVAL" : ( mode == 1 ? "INTERRUPT" : "BOTH")); 00129 _serial.writef("Wake Interval:\t\t%lu s\r\n", _dot->getWakeInterval()); 00130 _serial.writef("Wake Delay:\t\t%lu ms\r\n", _dot->getWakeDelay()); 00131 _serial.writef("Wake Timeout:\t\t%u ms\r\n", _dot->getWakeTimeout()); 00132 _serial.writef("Wake Pin:\t\t%s\r\n", mDot::pinName2Str(_dot->getWakePin()).c_str()); 00133 00134 _serial.writef("Log Level:\t\t%ld\r\n", _dot->getLogLevel()); 00135 00136 return 0; 00137 } 00138
Generated on Tue Jul 12 2022 20:37:29 by
1.7.2
