From 60795d8f37e61aaf0556ad45fdba843b46f7e369 Mon Sep 17 00:00:00 2001 From: f4exb Date: Sun, 29 Jan 2023 23:20:58 +0100 Subject: [PATCH] FT8 demod: OSD optimization and fixes --- doc/img/FT8Demod_plugin_C1.png | Bin 34652 -> 35526 bytes doc/img/FT8Demod_plugin_C1.xcf | Bin 198968 -> 135865 bytes ft8/fftplan.h | 62 ++++++++++++++++++ ft8/unpack.cpp | 10 +-- plugins/channelrx/demodft8/ft8demodworker.cpp | 30 +++------ plugins/channelrx/demodft8/readme.md | 31 ++++----- 6 files changed, 93 insertions(+), 40 deletions(-) create mode 100644 ft8/fftplan.h diff --git a/doc/img/FT8Demod_plugin_C1.png b/doc/img/FT8Demod_plugin_C1.png index 38b2d1b710a8dee9020df95956425a56d0336921..19f60ad541e295d4271b51d7cddb75297af28264 100644 GIT binary patch literal 35526 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 literal 34652 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 C#{F0T diff --git a/doc/img/FT8Demod_plugin_C1.xcf b/doc/img/FT8Demod_plugin_C1.xcf index 61a9d0f1e1ae60ae082a5d02929e7b9f6a3313c2..f48dafdbca2ef9c5509bb612a9048a04cc421066 100644 GIT binary patch delta 12769 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 literal 198968 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 Ya). // +/////////////////////////////////////////////////////////////////////////////////// + +#ifndef FFTPLAN_H +#define FFTPLAN_H + +#include + +namespace FT8 +{ + + // a cached fftw plan, for both of: + // fftwf_plan_dft_r2c_1d(n, m_in, m_out, FFTW_ESTIMATE); + // fftwf_plan_dft_c2r_1d(n, m_in, m_out, FFTW_ESTIMATE); + class Plan + { + public: + int n_; + int type_; + + // + // real -> complex + // + fftwf_complex *c_; // (n_ / 2) + 1 of these + float *r_; // n_ of these + fftwf_plan fwd_; // forward plan + fftwf_plan rev_; // reverse plan + + // + // complex -> complex + // + fftwf_complex *cc1_; // n + fftwf_complex *cc2_; // n + fftwf_plan cfwd_; // forward plan + fftwf_plan crev_; // reverse plan + + static const int M_FFTW_TYPE = FFTW_ESTIMATE; + }; // Plan + + // MEASURE=0, ESTIMATE=64, PATIENT=32 + +} // namespace FT8 + +#endif // FFTPLAN_H diff --git a/ft8/unpack.cpp b/ft8/unpack.cpp index 66991e039..08c849a9a 100644 --- a/ft8/unpack.cpp +++ b/ft8/unpack.cpp @@ -289,15 +289,15 @@ std::string Packing::unpack_4(int a77[], std::string& call1str, std::string& cal if (swap) { - msg = std::string(call) + " " + ocall; - call1str = call; - call2str = ocall; + msg = call1str + " " + ocall; + call1str = trim(call); + call2str = trim(ocall); } else { msg = std::string(ocall) + " " + call; - call1str = ocall; - call2str = call; + call1str = trim(ocall); + call2str = trim(call); } int suffix = un64(a77, 71, 2); diff --git a/plugins/channelrx/demodft8/ft8demodworker.cpp b/plugins/channelrx/demodft8/ft8demodworker.cpp index a8eb3a048..bfbb2dd50 100644 --- a/plugins/channelrx/demodft8/ft8demodworker.cpp +++ b/plugins/channelrx/demodft8/ft8demodworker.cpp @@ -18,7 +18,6 @@ #include #include #include -#include #include "channel/channelapi.h" #include "dsp/wavfilerecord.h" @@ -73,8 +72,14 @@ int FT8DemodWorker::FT8Callback::hcb( } cycle_already[msg] = true; + QString call2Str(call2.c_str()); QString info(comment); - QString call2QStr(call2.c_str()); + + if (m_validCallsigns && info.startsWith("OSD") && !m_validCallsigns->contains(call2Str)) + { + cycle_mu.unlock(); + return 2; // leave without reporting. Set as new decode. + } QList& ft8Messages = m_msgReportFT8Messages->getFT8Messages(); FT8Message baseMessage{ @@ -86,7 +91,7 @@ int FT8DemodWorker::FT8Callback::hcb( off - 0.5f, hz0, QString(call1.c_str()).simplified(), - call2QStr, + call2Str, QString(loc.c_str()).simplified(), info }; @@ -221,20 +226,6 @@ void FT8DemodWorker::processBuffer(int16_t *buffer, QDateTime periodTS) qDebug("FT8DemodWorker::processBuffer: done: at %6.3f %d messages", m_baseFrequency / 1000000.0, ft8Callback.getReportMessage()->getFT8Messages().size()); - if (m_useOSD && m_verifyOSD) - { - QMutableListIterator i(ft8Callback.getReportMessage()->getFT8Messages()); - - while (i.hasNext()) - { - const auto& ft8Message = i.next(); - - if (ft8Message.decoderInfo.startsWith("OSD") && !m_validCallsigns.contains(ft8Message.call2)) { - i.remove(); - } - } - } - if (m_reportingMessageQueue) { m_reportingMessageQueue->push(new MsgReportFT8Messages(*ft8Callback.getReportMessage())); } @@ -266,7 +257,7 @@ void FT8DemodWorker::processBuffer(int16_t *buffer, QDateTime periodTS) continue; } - QString logMessage = QString("%1 %2 Rx FT8 %3 %4 %5 %6 %7 %8 %9") + QString logMessage = QString("%1 %2 Rx FT8 %3 %4 %5 %6 %7 %8") .arg(periodTS.toString("yyyyMMdd_HHmmss")) .arg(baseFrequencyMHz, 9, 'f', 3) .arg(ft8Message.snr, 6) @@ -274,8 +265,7 @@ void FT8DemodWorker::processBuffer(int16_t *buffer, QDateTime periodTS) .arg(ft8Message.df, 4, 'f', 0) .arg(ft8Message.call1) .arg(ft8Message.call2) - .arg(ft8Message.loc) - .arg(ft8Message.decoderInfo); + .arg(ft8Message.loc); logMessage.remove(0, 2); logFile << logMessage.toStdString() << std::endl; } diff --git a/plugins/channelrx/demodft8/readme.md b/plugins/channelrx/demodft8/readme.md index 44120a6b6..b46851ab7 100644 --- a/plugins/channelrx/demodft8/readme.md +++ b/plugins/channelrx/demodft8/readme.md @@ -140,13 +140,13 @@ Empties the message table (C.10)

C.8: Log messages

-Toggles the logging of messages. Messages will be logged in the same format as the original WSJT-X format except if the message has decoder information in which case this information is appended at the end of the line. +Toggles the logging of messages. Messages will be logged in the same format as the original WSJT-X format. Example:
-230128_003030    10.136 Rx FT8    -22  0.1 2049 KE0DKZ W2ZI EL99 OSD-0-71
----- 1 ------    --2---           -3-  -4- --5- --6--- --7- --8- ---9----
+230128_003030    10.136 Rx FT8    -22  0.1 2049 KE0DKZ W2ZI EL99
+---- 1 ------    --2---           -3-  -4- --5- --6--- --7- --8-
 
- **1**: Date and time of decoder slot in YYMMDD_HHmmss fomat @@ -157,7 +157,6 @@ Example: - **6**: First callsign area. May contain spaces (ex: "CQ DX"). Note that for messages types 0.1 and 5 it is slighlty different from the standard (See C.10) - **7**: Second callsign area and is always a callsign. This might be slighlty different from the standard (see above) - **8**: Locator area maybe a 4 or 6 digit locator, a report, acknowledgement (RRR) or a greetings (RR73, 73) - - **9**: Decoder information if any The splitting and naming of files is different from WSJT-X scheme. @@ -220,9 +219,7 @@ This is the time in seconds after which the decoder threads will be prompted to

C.1.3: Toggle Ordered Statistics Decoding

-This toggles the Ordered Statistics Decoding (OSD). OSD is used if the CRC check fails after LDPC processing. Be careful with OSD as it will try to find solutions that validate the CRC but these solutions can be wrong and thus yield false messages. When post processing the results it is recommended to check against a database of valid callsigns. At least you should use a list of valid country prefixes and test the locator against the country prefix. - -With reasonable depth (C.1.4) and minimum correct LDPC bits (C.1.5) values the amount of false messages should be low so OSD may still be interesting. However if you require best accuracy you should filter messages in a post processing step as suggested above. +This toggles the Ordered Statistics Decoding (OSD). OSD is used if the CRC check fails after LDPC processing. Be careful with OSD as it will try to find solutions that validate the CRC but these solutions can be wrong and thus yield false messages. To mitigate this you may engage the callsign verification function (C.1.6). Ultimately you may post process the results (logs) through a list of valid country prefixes and correlate country and locator.

C.1.4: Ordered Statistics Decoding depth

@@ -232,7 +229,11 @@ Sets the maximum depth of OSD search. Sets the minimum number of correct LDPC bits (out of 83) necessary to trigger OSD. -

C.1.6: Band presets table

+

C.1.6. Verify callsigns

+ +OSD search may find invalid solutions as mentioned above. When checking this option the callsigns in messages not passed through OSD (thus very certainly valid) are stored for the life of the plugin. When OSD is engaged the second callsign field which is always a callsign is checked against this list and if the callsign is not found the message is rejected. This is quite efficient in removing false messages when OSD is engaged although some valid messages may be removed. + +

C.1.7: Band presets table

This table shows the band presets values that will appear in (C.5) @@ -242,23 +243,23 @@ This table shows the band presets values that will appear in (C.5) You can edit these values by clicking on the cell in the table. -

C.1.7: Add preset

+

C.1.8: Add preset

Use this button to create a new preset. It will take the values from the row of the selected cell in the table (if selected) and put the new preset at the bottom of the table -

C.1.8: Delete preset

+

C.1.9: Delete preset

Delete the preset designated by the selected cell in the table. -

C.1.9: Move up preset

+

C.1.10: Move up preset

Move up the preset designated by the selected cell in the table. -

C.1.10: Move down preset

+

C.1.11: Move down preset

Move down the preset designated by the selected cell in the table. -

C.1.11: Restore defaults

+

C.1.12: Restore defaults

This restores the default band preset values: @@ -280,10 +281,10 @@ This restores the default band preset values: Channel offsets are all set to 0 kHz. -

C.1.12 Commit changes

+

C.1.13 Commit changes

Click on the "OK" button to commit changes and close dialog. -

C.1.13 Cancel changes

+

C.1.14 Cancel changes

Click on the "Cancel" button to close dialog without making changes.