From b6496b1eea030911191cc546d1bc28ab3af78268 Mon Sep 17 00:00:00 2001 From: Phil Taylor Date: Wed, 7 Feb 2024 13:06:23 +0000 Subject: [PATCH] Add warning for FA received and slim some info logging --- cachingqueue.cpp | 10 +++++----- printhex.h | 18 ++++++++++++++++++ rigcommander.cpp | 15 +++++++++++---- rigcommander.h | 2 ++ spectrumscope.cpp | 4 ++-- udphandler.cpp | 2 +- usbcontroller.cpp | 4 ++-- 7 files changed, 41 insertions(+), 14 deletions(-) diff --git a/cachingqueue.cpp b/cachingqueue.cpp index 965785b..cdae973 100644 --- a/cachingqueue.cpp +++ b/cachingqueue.cpp @@ -21,7 +21,7 @@ cachingQueue *cachingQueue::getInstance(QObject* parent) connect (instance, SIGNAL(finished()),instance, SLOT(deleteLater())); instance->start(QThread::HighPriority); } - qInfo() << "Returning instance of cachingQueue() to calling process:" << ((parent != Q_NULLPTR) ? parent->objectName(): ""); + qDebug() << "Returning instance of cachingQueue() to calling process:" << ((parent != Q_NULLPTR) ? parent->objectName(): ""); return instance; } @@ -130,7 +130,7 @@ void cachingQueue::add(queuePriority prio ,queueItem item) queueItem it=item; it.recurring=false; queue.insert(queue.cend(),priorityHighest, it); - qInfo() << "adding" << funcString[item.command] << "recurring" << item.recurring << "priority" << prio << "vfo" << item.vfo; + qDebug() << "adding" << funcString[item.command] << "recurring" << item.recurring << "priority" << prio << "vfo" << item.vfo; } queue.insert(prio, item); } @@ -159,7 +159,7 @@ void cachingQueue::addUnique(queuePriority prio ,queueItem item) while (it != queue.end()) { if (it.value().command == item.command && it.value().recurring == item.recurring && it.value().vfo == item.vfo && it.value().param.isValid() == item.param.isValid()) { - //qInfo() << "deleting" << it.value().id << funcString[it.value().command] << "vfo" << it.value().vfo << "recurring" << it.value().recurring ; + qDebug() << "deleting" << it.value().id << funcString[it.value().command] << "VFO" << it.value().vfo << "recurring" << it.value().recurring ; it = queue.erase(it); } else @@ -172,7 +172,7 @@ void cachingQueue::addUnique(queuePriority prio ,queueItem item) queueItem it = item; it.recurring=false; queue.insert(queue.cend(),priorityHighest, it); - qInfo() << "adding unique" << funcString[item.command] << "recurring" << item.recurring << "priority" << prio << "vfo" << item.vfo; + qDebug() << "adding unique" << funcString[item.command] << "recurring" << item.recurring << "priority" << prio << "vfo" << item.vfo; } queue.insert(prio, item); } @@ -191,7 +191,7 @@ void cachingQueue::del(funcs func, uchar vfo) qInfo() << "recurring command" << funcString[func] << "vfo" << vfo << "not found in queue"; while (it != queue.end()) { if (it.value().command == func && it.value().vfo == vfo) { - //qInfo() << "deleting" << funcString[it.value().command] << "sub" << it.value().sub << "recurring" << it.value().recurring; + qDebug() << "deleting" << funcString[it.value().command] << "VFO" << it.value().vfo << "recurring" << it.value().recurring; it = queue.erase(it); } else diff --git a/printhex.h b/printhex.h index e39c1cb..694673b 100644 --- a/printhex.h +++ b/printhex.h @@ -5,6 +5,24 @@ #include "logcategories.h" + +QStringList inline getHexArray(const QByteArray &pdata) +{ + QString head = "---- Begin hex dump -----:"; + QString sdata("DATA: "); + QString index("INDEX: "); + + for(int i=0; i < pdata.length(); i++) + { + sdata.append(QString("%1 ").arg((unsigned char)pdata[i], 2, 16, QChar('0')) ); + index.append(QString("%1 ").arg(i, 2, 10, QChar('0'))); + } + + QString tail = "---- End hex dump -----"; + + return {head, sdata, index, tail}; +} + QString inline getHex(const QByteArray &pdata) { QString head = "---- Begin hex dump -----:\n"; diff --git a/rigcommander.cpp b/rigcommander.cpp index aba1290..cc2493a 100644 --- a/rigcommander.cpp +++ b/rigcommander.cpp @@ -317,6 +317,7 @@ void rigCommander::prepDataAndSend(QByteArray data) qDebug(logRigTraffic()) << "Final payload in rig commander to be sent to rig: "; printHexNow(data, logRigTraffic()); } + lastCommandToRig = data; emit dataForComm(data); } @@ -1185,9 +1186,15 @@ void rigCommander::parseCommand() case funcFB: break; case funcFA: - qInfo(logRig()) << "Error (FA) received from rig."; - printHex(payloadIn, false ,true); + { + qWarning(logRig()) << "Error (FA) received from rig, last command sent:"; + + QStringList messages = getHexArray(lastCommandToRig); + foreach (auto msg, messages) + qWarning(logRig()) << msg; + break; + } default: qWarning(logRig()) << "Unhandled command received from rig" << payloadIn.toHex().mid(0,10) << "Contact support!"; break; @@ -1424,7 +1431,7 @@ void rigCommander::determineRigCaps() for (int c = 0; c < numAttenuators; c++) { settings->setArrayIndex(c); - //qInfo(logRig()) << "** GOT ATTENUATOR" << settings->value("dB", 0).toString().toUInt(); + qDebug(logRig()) << "** GOT ATTENUATOR" << settings->value("dB", 0).toString().toUInt(); rigCaps.attenuators.push_back((unsigned char)settings->value("dB", 0).toString().toUInt()); } settings->endArray(); @@ -1460,7 +1467,7 @@ void rigCommander::determineRigCaps() rigCaps.bands.push_back(bandType(band,bsr,start,end,range,memGroup)); rigCaps.bsr[band] = bsr; - qInfo(logRig()) << "Adding Band " << band << "Start" << start << "End" << end << "BSR" << QString::number(bsr,16); + qDebug(logRig()) << "Adding Band " << band << "Start" << start << "End" << end << "BSR" << QString::number(bsr,16); } settings->endArray(); } diff --git a/rigcommander.h b/rigcommander.h index 765f921..209a88e 100644 --- a/rigcommander.h +++ b/rigcommander.h @@ -221,6 +221,8 @@ private: QString rigSerialPort; quint32 rigBaudRate; + QByteArray lastCommandToRig; + QString ip; int cport; int sport; diff --git a/spectrumscope.cpp b/spectrumscope.cpp index 5fffb88..ba2c7f4 100644 --- a/spectrumscope.cpp +++ b/spectrumscope.cpp @@ -1477,11 +1477,11 @@ void spectrumScope::receiveCwPitch(uchar pitch) { if (mode.mk == modeCW || mode.mk == modeCW_R) { quint16 p = round((((600.0 / 255.0) * pitch) + 300) / 5.0) * 5.0; - if (p != cwPitch) + if (p != this->cwPitch) { passbandCenterFrequency = p / 2000000.0; qInfo(logSystem()) << QString("%0 Received new CW Pitch %1 Hz was %2 (center freq %3 MHz)").arg((vfo?"Sub":"Main")).arg(p).arg(cwPitch).arg(passbandCenterFrequency); - cwPitch = p; + this->cwPitch = p; } } } diff --git a/udphandler.cpp b/udphandler.cpp index 4f92f07..da443f3 100644 --- a/udphandler.cpp +++ b/udphandler.cpp @@ -459,7 +459,7 @@ void udpHandler::dataReceived() if (in->busy && in->computer[0] != '\x0') admin = true; - qCritical(logUdp()) << "Is the user an admin? " << admin; + qDebug(logUdp()) << "Is the user an admin? " << admin; emit setRadioUsage(f, admin, in->busy, QString(in->computer), ip.toString()); qDebug(logUdp()) << "Set radio usage num:" << f << in->name << "Busy:" << in->busy << "Computer" << in->computer << "IP" << ip.toString(); } diff --git a/usbcontroller.cpp b/usbcontroller.cpp index c7727b6..1897fa0 100644 --- a/usbcontroller.cpp +++ b/usbcontroller.cpp @@ -113,11 +113,11 @@ void usbController::init(QMutex* mut,usbDevMap* devs ,QVector