diff --git a/rigctl_server/src/main.cpp b/rigctl_server/src/main.cpp index a7fac98..a78feea 100644 --- a/rigctl_server/src/main.cpp +++ b/rigctl_server/src/main.cpp @@ -487,35 +487,42 @@ private: } else if (parts[0] == "m" || parts[0] == "\\get_mode") { std::lock_guard lck(vfoMtx); - resp = "RAW\n"; + resp = "RAW "; if (!selectedVfo.empty() && core::modComManager.getModuleName(selectedVfo) == "radio") { int mode; core::modComManager.callInterface(selectedVfo, RADIO_IFACE_CMD_GET_MODE, NULL, &mode); if (mode == RADIO_IFACE_MODE_NFM) { - resp = "FM\n"; + resp = "FM "; } else if (mode == RADIO_IFACE_MODE_WFM) { - resp = "WFM\n"; + resp = "WFM "; } else if (mode == RADIO_IFACE_MODE_AM) { - resp = "AM\n"; + resp = "AM "; } else if (mode == RADIO_IFACE_MODE_DSB) { - resp = "DSB\n"; + resp = "DSB "; } else if (mode == RADIO_IFACE_MODE_USB) { - resp = "USB\n"; + resp = "USB "; } else if (mode == RADIO_IFACE_MODE_CW) { - resp = "CW\n"; + resp = "CW "; } else if (mode == RADIO_IFACE_MODE_LSB) { - resp = "LSB\n"; + resp = "LSB "; } } + if (!selectedVfo.empty()) { + resp += std::to_string((int)sigpath::vfoManager.getBandwidth(selectedVfo)) + "\n"; + } + else { + resp += "0\n"; + } + client->write(resp.size(), (uint8_t*)resp.c_str()); } else if (parts[0] == "V" || parts[0] == "\\set_vfo") {