Commit Graph

2743 Commits

Author SHA1 Message Date
Steven Franke 4081be94e1
Avoid a possible of bounds error. Compute some more decode diagnostic data. 2021-01-04 15:00:03 +00:00
Steven Franke fb7b751e6d
Remove hmod from command line parameters for fst4sim. 2021-01-04 15:00:03 +00:00
Steven Franke 701d517e6e
For fst4sim, use Lorentzian fading spectrum when fspread is negative. 2021-01-04 15:00:03 +00:00
Steven Franke b087328fc1
Don't waste time on excess BP iterations when doing K=50. Decode a little deeper. 2021-01-04 15:00:03 +00:00
Steven Franke 8079d35561
Append decoder data to file fst4_decodes.dat instead of overwriting. 2021-01-04 15:00:02 +00:00
Steven Franke 89cbd177df
If file decdata is present in the data directory, then write detailed decoder data to file fst4_decodes.dat in the same directory. 2021-01-04 15:00:02 +00:00
Steven Franke 812bd29e54
FST4W: Use K=66 for first OSD decode attempt and for updating fst4w_calls.txt. Use K=50 for 2nd attempt. 2021-01-04 15:00:02 +00:00
Steven Franke fc3e24f696
More work on K=50 decoding. 2021-01-04 15:00:01 +00:00
Steven Franke 65ff3ce05e
Remove some debug prints. 2021-01-04 15:00:01 +00:00
Steven Franke 11b7aa9429
Implements decoding of FST4W messages as (240,50) crc-less codewords.
By cascading the full 24-bit crc generator matrix with the (240,74) LDPC code generator, create a (240,50) generator that is used to decode with approximately 1 dB better sensitivity than the (240,64) with 14-bit CRC approach that is normally used. This approach treats the CRC bits as additional parity bits and provides no means for identifying incorrect codewords. All codewords on the list generated by the OSD algorithm have CRCs that match the CRC of the message payload. Codewords are validated by unpacking the message and comparing the unpacked message with the list of stored callsign/grid pairs stored in the fst4w_calls.txt file.
2021-01-04 14:59:56 +00:00
Joe Taylor 662a43d3dd Corrections to the frequency-drift feature in q65sim. 2021-01-04 09:07:03 -05:00
Joe Taylor 6074e4e3af Options for introducing frequency drift and frequency steps (e.g. 10 Hz) in Q65 simulator. 2021-01-03 11:19:39 -05:00
Joe Taylor a02cbabb99 Fix an off-by-1 bug introduced in the previous commit. 2021-01-03 11:18:14 -05:00
Joe Taylor 04b22ce250 Preparing to add solution for frequendy drift to q65_sync.f90. 2021-01-02 14:21:14 -05:00
Joe Taylor bc58604d42 Allow optional frequency drift of simulated Q65 signals. 2021-01-02 13:09:47 -05:00
Joe Taylor e5a8e80c49 Minor tweaks to Q^% decoding scheme. 2021-01-01 15:28:41 -05:00
Joe Taylor 6b351165f2 Re-introduce Q65 timer calls. Extend red sync baseline to minimum +/- 100 Hz. 2021-01-01 10:47:22 -05:00
Joe Taylor 8a4b5b6a40 Various tweaks to the Q65 decoder; new numbering of the end-of-line decoding flags. 2020-12-31 15:52:06 -05:00
Joe Taylor bcbca02c08 Enforce Q65 ClrAvg action when requested. Tweak somne logic. 2020-12-30 16:12:02 -05:00
Joe Taylor e07ba410c2 Fix a problem with access to apsym0() array. 2020-12-30 15:40:06 -05:00
Joe Taylor 5d7b5f83e2 Fix several more flaws in the way Q65 decodes are presented. 2020-12-30 15:05:02 -05:00
Joe Taylor 77a0e01b05 Allow for all AP types when averaging Q65, and for navg > 9. 2020-12-30 12:10:03 -05:00
Joe Taylor 91687c573b Fix the reporting of SNR for Q65 average decodes. 2020-12-30 11:02:49 -05:00
Joe Taylor 412422db17 Add 'q' to the Q65 end-of-line flags; label right text window for "Average decodes". 2020-12-30 10:42:27 -05:00
Joe Taylor d81c01d23d Remove unneeded arguments from calls to q65_avg and q65_avg2. 2020-12-30 09:07:41 -05:00
Joe Taylor 057967a761 For Q65 nsg averaging, wrap nsave when it reaches MAXAVE. 2020-12-30 08:44:56 -05:00
Joe Taylor b6d2002985 Q65 decoder mostly working now with all (A B C D) decoding types. 2020-12-29 16:41:48 -05:00
Joe Taylor 520a0c7cc0 Work in progress for Q65 decoder. 2020-12-28 18:53:13 -05:00
Joe Taylor 62074ab58f Much reworking of Q65 decoder. Have temporarily enabled all types of decoding passes. 2020-12-28 15:27:10 -05:00
Joe Taylor 30ab29d9e3 Work in progress, with lots of diagnostics. Do not use on the air! 2020-12-27 15:27:26 -05:00
Joe Taylor 48297e068b More work in ptogress ... 2020-12-27 14:14:10 -05:00
Joe Taylor d246a23948 Work in progress on message averaging: save current status. 2020-12-27 11:35:55 -05:00
Joe Taylor 5c805dfb39 another realignment of red sync curve and convention for f0. 2020-12-27 10:35:04 -05:00
Joe Taylor c8ace441f9 New files for Q65 message averaging. 2020-12-26 10:08:53 -05:00
Joe Taylor 3d042ee56f Work in progress, on Q65 message averaging. 2020-12-26 10:04:17 -05:00
Joe Taylor d5957f51f9 Insert some (commented out) diagnostics. 2020-12-24 13:07:29 -05:00
Joe Taylor 171e466389 More work on Q65 message averaging. 2020-12-24 09:51:02 -05:00
Joe Taylor 844930fe75 Correct the frequency alignment of red sync curve. 2020-12-23 11:03:09 -05:00
Joe Taylor c5a0de6210 Partial implementation of Q65 message averaging. 2020-12-23 09:47:11 -05:00
Joe Taylor 008cb37c16 Update test_q65 for having removed the T/F sync flag from q65sim command line. 2020-12-22 13:41:40 -05:00
Joe Taylor 408ac7bd0d Correct the reported f0 for Q65 signals. It was off by one tone spacing. 2020-12-22 13:21:31 -05:00
Joe Taylor cac6577127 Extend the DT range for 30 s Q65 submodes to include EME delays. 2020-12-22 09:43:25 -05:00
Joe Taylor 83c917ac57 Don't allow previous values of DT, f0 to be displayed with a no-decode. 2020-12-21 15:59:33 -05:00
Joe Taylor 044aa80dc4 Remove all vestiges of the QRA64 mode. It has been replaced by Q65. 2020-12-21 15:07:53 -05:00
Joe Taylor 36a089de21 Remove the sync-test option from q65sim.f90. 2020-12-21 13:42:03 -05:00
Joe Taylor 44516dbbc1 Make the Q65 red sync curve at least 21 tone-spacings wide, even if FTol is smaller. 2020-12-21 13:33:54 -05:00
Joe Taylor 545079e951 Reorder the ibw loop in q65_loops.f90. 2020-12-20 21:43:30 -05:00
Joe Taylor ddf727f351 Adjust a 3 dB offset in Q65 SNRs from list decodes. 2020-12-20 21:42:42 -05:00
Joe Taylor 1f33c857ac Measure fSpread from ccf1, then use resulting width to set effective ibwmin. 2020-12-19 13:25:51 -05:00
Joe Taylor c7ca708569 Fix the problem with not honoring "Save Decoded" in Q65 mode. 2020-12-19 11:42:42 -05:00
Joe Taylor f23129c33c Fix a problem with Q65 FTol range extending down below 0 Hz. 2020-12-19 11:25:18 -05:00
Joe Taylor 7096a548ec Correct a problem with estimating rms of ccf for Q65-300x submodes. 2020-12-19 10:42:27 -05:00
Joe Taylor 89ab3b0f01 Fix a bounds error with very small FTol. 2020-12-18 16:30:11 -05:00
Joe Taylor 450249dd4c Add a DT label to the Q65 red sync curve. 2020-12-18 16:19:01 -05:00
Joe Taylor 67b82c7666 Remove the klunky 2D sync plot. The red sync curve is better. 2020-12-18 16:00:33 -05:00
Joe Taylor b3769bb6c8 For Q65, plot a red "Sync curve" in the Wide Graph. 2020-12-18 13:31:14 -05:00
Joe Taylor d165532dc5 Oops! Committed the wrong version of q65_decode.f90. 2020-12-17 19:06:07 -05:00
Joe Taylor 8507a42655 Quasi-graphical display of the sync ccf(f0,DT). 2020-12-17 17:02:28 -05:00
Joe Taylor 6b8abe32b1 One more protection against too-large FTol. 2020-12-16 15:51:46 -05:00
Joe Taylor a47ec75f56 Reformat the test_q65 headings and output. 2020-12-15 13:17:31 -05:00
Joe Taylor 0ee61205aa Disable diagnostic writing to 'fort.55' in CWD. 2020-12-15 11:37:48 -05:00
Joe Taylor 841bbac56e Increase the Q65 list decodes to include reports -50 to +49 dB. 2020-12-15 11:03:06 -05:00
Joe Taylor 3160e63dc7 Several minor tweaks to Q65 decoding. 2020-12-15 09:32:24 -05:00
Joe Taylor 99377e4c24 Measure avg and rms of estimated SNR values, for comparison with generated SNRs. 2020-12-15 09:31:29 -05:00
Joe Taylor cd95df4089 Protect against pathological combinations of RxFreq and FTol. 2020-12-09 13:45:05 -05:00
Joe Taylor 84591fa2ef Protect against a bounds error with very large FTol. 2020-12-08 11:53:22 -05:00
Bill Somerville 2964bc6295
Merge branch 'develop' into feat-fst280 2020-12-06 22:27:07 +00:00
Joe Taylor 4b42937c35 Minor tweaks in q65_sync. 2020-12-06 08:12:58 -05:00
Joe Taylor f948ba7c29 Allow fDop = 0.0 in test_q65. 2020-12-06 08:12:16 -05:00
Joe Taylor a47f5e5103 Correct what appears to be an error in q65_intrinsics_fastfading: max hidx=63, not 64? 2020-12-06 08:09:28 -05:00
Joe Taylor 53f5e26580 First attempt ar reasonabkle values for nsmo and ibw range. 2020-12-05 13:46:44 -05:00
Joe Taylor c50134691d Adjustments to test_q65 for wider submodes. 2020-12-05 13:46:07 -05:00
Joe Taylor 742e2ef59f Fix pctile for larger arrays. 2020-12-05 11:09:27 -05:00
Joe Taylor 9f8336de4e Code cleanup. 2020-12-05 11:09:15 -05:00
Joe Taylor 077811ae6d Update q65params.f90. 2020-12-05 11:03:16 -05:00
Joe Taylor 6416777278 Set ':' as the "mode character" for Q65. 2020-12-04 15:55:03 -05:00
Joe Taylor 8b9b71c894 Fix the "off by one" issue in measuring f0 for list decodes. 2020-12-04 15:37:54 -05:00
Joe Taylor 3dd34e13ba dd "MyCall DxCall DxGrid" to list. Set PLOG_MIN=-240. No list decoding if DxCall is not defined. 2020-12-04 15:29:46 -05:00
Joe Taylor aaf832cbd2 Revert "Threshold in q65_sync.f90 increased to -250 only for reports. Assumes that the list is in the order defined in q65_set_list.f90 (reports are at indexes 5..56). Beware if q65_set_list is changed!!!"
This reverts commit bb08150e4b.
2020-12-04 12:56:45 -05:00
Joe Taylor 978ea0f3b5 Revert "forgot to uncomment fort.55 output. corrected"
This reverts commit 72bc2572e6.
2020-12-04 12:56:23 -05:00
Nico Palermo/IV3NWV 72bc2572e6 forgot to uncomment fort.55 output. corrected 2020-12-04 10:07:56 +01:00
Nico Palermo/IV3NWV bb08150e4b Threshold in q65_sync.f90 increased to -250 only for reports. Assumes that the list is in the order defined in q65_set_list.f90 (reports are at indexes 5..56). Beware if q65_set_list is changed!!! 2020-12-04 09:43:41 +01:00
Joe Taylor 53e4052b8c Q65 additions for diagnostic purposes. 2020-12-03 14:28:30 -05:00
Bill Somerville ac6a6d0cd7
Fail wsprd if data directory specified not accessible
Also fixed trivial memory leak on error exit.
2020-12-03 13:12:12 +00:00
Bill Somerville 3134dd8a60
Removed incorrect pointer declaration, tnx to Rud, K5RUD 2020-12-03 12:20:14 +00:00
Joe Taylor d1ac5f71e2 Remove several diagnostic writes. 2020-12-01 11:31:52 -05:00
Joe Taylor df3169ba22 Update test_q65. 2020-12-01 11:24:21 -05:00
Joe Taylor 6b540aaad0 Correct offset in (i,j) indices for selecting s3 from s1. 2020-12-01 11:23:35 -05:00
Nico Palermo/IV3NWV 70e0a84fe8 corrected a compile error. q65_llh declared as an external variable in q65.h and placed in q65.c 2020-12-01 04:13:30 +01:00
Nico Palermo/IV3NWV 68d964b5c7 merged Joe's changes in decode_fullaplist 2020-12-01 03:41:23 +01:00
Nico Palermo/IV3NWV baf427c358 Merge branch 'feat-fst280' of bitbucket.org:k1jt/wsjtx into feat-fst280 2020-12-01 03:26:37 +01:00
Nico Palermo/IV3NWV 5a3dd69331 decode_fullaplist updated. the decoding threshold is now adjusted in function of the number of codewords passed 2020-12-01 03:26:00 +01:00
Joe Taylor a03758e490 Add a file that was missing. 2020-11-30 17:44:33 -05:00
Joe Taylor 65dda491d2 More Q65 code cleanup. Make submodes higher than A work with List Decoding. 2020-11-30 15:20:19 -05:00
Joe Taylor 7cb87e315b Fix a format. 2020-11-30 14:15:59 -05:00
Joe Taylor adc4c3d78a More Q65 cleanup. Single-digit at end of line. 2020-11-30 14:13:37 -05:00
Joe Taylor 5c947178ce Protect against a bounds error. 2020-11-30 13:26:14 -05:00
Joe Taylor de6f5e4975 Q65 code cleanup. Use 3-digit format for the end-of-line flag. 2020-11-30 13:14:18 -05:00
Joe Taylor 8285fd28a8 List decoding now supports 57 list messages. 2020-11-30 11:41:50 -05:00
Joe Taylor afc4f2fb54 Reorganize things in q65_sync. 2020-11-30 10:45:52 -05:00