Commit Graph

277 Commits

Author SHA1 Message Date
Joe Taylor
41ce20101f Q65 sync curves linear up to 10, then logarithmic. AutoClrAvg only for decodes at RxFreq, and never for "lagain" decode attempts. 2021-03-12 14:27:58 -05:00
Steven Franke
1d590b81f5 Prevent a crash when widegraph lower limit is 0 Hz. 2021-03-10 13:10:47 -06:00
Joe Taylor
2048b3fec3 Tweaks to the way orance/red (==> single/avg) sync curves are displayed. 2021-03-09 14:41:36 -05:00
Joe Taylor
dda3c9d0cc First cut at displaying a Q65 sync curve for both current sequence and accumulated average. May not be quite right, yet... 2021-03-07 11:41:56 -05:00
Joe Taylor
ce839e1d2e Trying to isolate the cause of bad data appearing in red.dat. 2021-03-05 14:57:26 -05:00
Charlie Suckling
7defc8846d
Adds Single Tone capability to q65sim 2021-03-04 11:15:54 +00:00
Joe Taylor
19512c00f1 More tweaks to the Fast?normal/Deep settings in Q65 mode. 2021-02-25 12:45:07 -05:00
Joe Taylor
94c31572d2 More tweaks to the Fast/Normal/Deep parameters. 2021-02-23 16:13:46 -05:00
Joe Taylor
0765a1cc06 Working on tweaks to the Fast/Normal/Deep decoding options. 2021-02-23 11:32:38 -05:00
Joe Taylor
7192f53e68 Code cleanup. 2021-02-19 09:47:30 -05:00
Joe Taylor
b156ecd3a1 New method for measuring SNR of decoded Q65 signals. 2021-02-19 09:44:03 -05:00
Joe Taylor
23eb287449 Correct a typo. 2021-02-16 12:55:59 -05:00
Joe Taylor
10e08b0e94 Much better algorithm for detecting and removing birdies in Q65. 2021-02-12 13:26:22 -05:00
Joe Taylor
1aad2fdbda Q65: Supppress birdies and don't display decode lines with blank message. 2021-02-11 11:30:35 -05:00
Joe Taylor
3962a1eeba Merge branch 'release-2.4.0' of bitbucket.org:k1jt/wsjtx into release-2.4.0 2021-02-10 13:56:56 -05:00
Joe Taylor
6395087e6f Tweak the averaging scheme: now straight avg up to N=4, then expenential with ntc=4. 2021-02-10 11:14:46 -05:00
Charlie Suckling
b58ce90a9f
Now generates a filename for 15s periods that works with averaging 2021-02-09 13:47:40 +00:00
Charlie Suckling
d91404bbb1
Modification to make filenames compatible with Q65 averaging 2021-02-09 13:47:33 +00:00
Joe Taylor
a6779ecda3 Use exponential message averaging (ntc=3) rather than simple sums in Q65. 2021-02-08 11:10:02 -05:00
Joe Taylor
3ccf949691 Save nrc (number of q[0124] iterations) to q65_decodes.dat. 2021-02-08 09:24:16 -05:00
Joe Taylor
9ca57f9a5c Protect against a possible bounds error. 2021-02-02 11:39:29 -05:00
Joe Taylor
5850317de0 Speed improvements for Q65 multi-decode. 2021-02-02 09:27:40 -05:00
Joe Taylor
7d069c5617 Don't get too close to the Wide Graps frequency limits. 2021-02-01 15:52:25 -05:00
Joe Taylor
34cb4c502d Eliminate some redundant candidates. 2021-02-01 14:23:49 -05:00
Joe Taylor
72a4158898 First working multi-decode procedure for Q65. 2021-02-01 13:28:59 -05:00
Joe Taylor
86ada8c9d4 Working toward multi-decode capability. 2021-02-01 10:54:04 -05:00
Joe Taylor
6519c07a71 Working toward a good multi-decode solution ... 2021-01-31 15:10:50 -05:00
Joe Taylor
f7cde117fe Extens orange sync surve to the full displayed frequency range. 2021-01-31 13:41:32 -05:00
Joe Taylor
cae3095174 Allocate and use 2d CCF only within q65_ccf_85(). 2021-01-31 11:39:04 -05:00
Joe Taylor
b8ea4c1c2c Zero the red curve in we're not trying for q3 decodes. 2021-01-30 15:23:30 -05:00
Joe Taylor
9e822d1806 Clean up possible cases where rms evaluates to 0.0. 2021-01-30 15:10:05 -05:00
Joe Taylor
7bd1249452 Code cleanup involving ccf1, ccf2, and plotting thereof. 2021-01-30 14:12:02 -05:00
Joe Taylor
1e7c53e0e4 Fix several comments. 2021-01-30 11:49:08 -05:00
Joe Taylor
791b39fce5 Estimate rms of ccf2 without using the 2-dimensional ccf(). 2021-01-30 11:36:43 -05:00
Joe Taylor
316f41996e Correct a flaw in setting ipk. Better loop ordering in ccf_22. 2021-01-30 10:59:46 -05:00
Joe Taylor
330ff03079 Move writing the red/orange sync curves into a subroutine. 2021-01-29 14:43:06 -05:00
Joe Taylor
f056fc99ec Write parameters for successful decodes to file q65_decodes.dat. 2021-01-28 13:01:52 -05:00
Joe Taylor
4e27b009f0 Code cleanup, looking toward possible implementation of -120F and -300F submodes. 2021-01-27 13:19:39 -05:00
Joe Taylor
29a2737cf7 Clean up spec64, now that QRA64 mode is gone. 2021-01-27 11:12:57 -05:00
Joe Taylor
1489513803 Decodes without "newdat" should not add s1 into s1a again. 2021-01-23 10:58:28 -05:00
Joe Taylor
b64520591f Don't smooth at all if nsmo = 1: i.e., set it to nsmo=0. 2021-01-22 15:16:21 -05:00
Joe Taylor
8a436b63dd Separate message averaging for Odd and Even sequences. 2021-01-19 16:06:10 -05:00
Joe Taylor
0cc67bbc59 Separate accumulations of odd/even sequences in s1a. Still need to fix navg ==> navg(0:1). 2021-01-19 15:30:17 -05:00
Joe Taylor
39024253d2 Fix the oddball values of DT and f0 sometimes being displayed. 2021-01-19 14:11:21 -05:00
Joe Taylor
d815eb7592 Replace the 'nsmo' smoothing: it is indeed useful, sometimes. (Can we have it both ways?) 2021-01-19 09:24:30 -05:00
Joe Taylor
baa029f4ba Add some descriptive documentation to the q65.f90 module. 2021-01-18 10:18:38 -05:00
Joe Taylor
2aee8d9d62 Resize s1a when required. 2021-01-17 14:31:56 -05:00
Joe Taylor
a53b3dc697 Computing 2d ccf over all freqs takes too long and too much memory. There's a better way! Remove the 'nsmo' smoothing: it's not helpful. 2021-01-16 14:18:15 -05:00
Joe Taylor
20aa3a8e23 Fix ia2 definition. 2021-01-16 12:24:42 -05:00
Joe Taylor
397c31a62d Extend red/orange sync curves to full width. Display navg on status bar. 2021-01-16 12:21:13 -05:00
Joe Taylor
b343deb8cd Correct a problem with reporting DT and f0 for Q65 'q3' decodes. 2021-01-16 10:21:34 -05:00
Joe Taylor
ada5a60124 All types of Q65 message averaging are now implemented and functional. 2021-01-15 12:40:38 -05:00
Joe Taylor
70a3481a4f Improved organization for obtaining 'q3n' decodes. 2021-01-14 15:39:48 -05:00
Joe Taylor
cbb939453f Code cleanup. 2021-01-14 15:19:33 -05:00
Joe Taylor
921831119c Message averaging now working for 'q3n' decodes. 2021-01-14 14:56:37 -05:00
Joe Taylor
fca6d482f7 Radionalize the reporting of idec values. 2021-01-14 13:13:40 -05:00
Joe Taylor
0abdff0216 Clean up the usage of q65_dec_q3, q65_ccf_85, and q65_ccf_22. 2021-01-14 10:58:11 -05:00
Joe Taylor
e0d6e362e8 Make separate sync subroutines q65_ccf_85() (all 85 symbols) and q65_ccf_22() (sync symbols only). 2021-01-14 10:43:50 -05:00
Joe Taylor
32a9f0bc31 Move more variables into public q65 module space. 2021-01-14 10:25:35 -05:00
Joe Taylor
f0808942e5 Move q65_dec0 into q65 module. 2021-01-13 14:50:07 -05:00
Joe Taylor
bfca40aa1c Rename q65_sync to q65_dec0. 2021-01-13 14:34:20 -05:00
Joe Taylor
0922a6ca6e Fix several undefined variables. 2021-01-13 14:23:50 -05:00
Joe Taylor
80a7b8c8af More into q65 module. 2021-01-13 11:44:29 -05:00
Joe Taylor
f05654e19d More into q65 module. 2021-01-13 11:38:49 -05:00
Joe Taylor
a5a1eed681 More into q65 module. 2021-01-13 11:29:33 -05:00
Joe Taylor
18100fd259 More into q65 module. 2021-01-13 11:21:59 -05:00
Joe Taylor
df8ad7a8d9 More into q65 module. 2021-01-13 11:07:20 -05:00
Joe Taylor
201004a47d Move more into q65 module. 2021-01-13 10:55:01 -05:00
Joe Taylor
dc4c3e87eb Move more things into q65 module. 2021-01-13 10:44:19 -05:00
Joe Taylor
71385aa20a Move some variables into the q65 module. 2021-01-13 10:23:38 -05:00
Joe Taylor
daed54db2d Remove unused routines q65_avg() and q65_avg2(). 2021-01-13 09:52:00 -05:00
Joe Taylor
304ca4a55d Move some routines into the module q65.f90. 2021-01-13 09:46:14 -05:00
Joe Taylor
98a52accbb More refactoring of Q65 decoder. 2021-01-12 15:42:24 -05:00
Joe Taylor
c9ce452500 Code cleanup. 2021-01-12 14:42:00 -05:00
Joe Taylor
60a053aa94 Working toward some new, separate, Q65 subroutines. 2021-01-12 14:34:41 -05:00
Joe Taylor
a75037d053 Accumulate the symbol spectra s1() in array s1a(). 2021-01-12 13:41:39 -05:00
Joe Taylor
63beab393b Compute s1() in a separate subroutine, q65_symspec.f90. 2021-01-12 11:39:26 -05:00
Joe Taylor
ef478717ea Don't forget to do something about nsmo = ??. 2021-01-12 08:18:17 -05:00
Joe Taylor
cc2ca0f7e7 Fix an "off by one" times mode_q65 error, and some code cleanup. 2021-01-11 15:09:47 -05:00
Joe Taylor
fe1aefe93a More code cleanup for module q65.f90. 2021-01-10 16:30:07 -05:00
Joe Taylor
e8ba69099a Re-organize module q65.f90. Can still be improved! 2021-01-09 19:58:34 -05:00
Joe Taylor
146ca19b97 Add some additional calls to timer(). 2021-01-09 11:02:54 -05:00
Joe Taylor
57b6b2dca1 Set the "b90" search range once (in q65_decocd.f90) and share valies through q65.mod. 2021-01-08 09:42:07 -05:00
Joe Taylor
f003ae653c Silence compiler warning. 2021-01-07 12:00:11 -05:00
Joe Taylor
5b0975bf45 Correct several flaws in message averaging. Still may want to handle MAXAVE better? 2021-01-07 11:13:43 -05:00
Joe Taylor
aee0a1e851 Silence a compiler warning. 2021-01-06 10:58:25 -05:00
Bill Somerville
c7f2be4ba7
Initialize a variable 2021-01-06 15:49:51 +00:00
Bill Somerville
c407bc00f9
Revert "Mostly(?) temporary diagnostic tests."
This reverts commit fb6fcdf35e.
2021-01-06 15:48:21 +00:00
Bill Somerville
9b35eeaead
Revert "Add s1 to the diagnostic output."
This reverts commit 5fe0bd3508.
2021-01-06 15:48:07 +00:00
Joe Taylor
5fe0bd3508 Add s1 to the diagnostic output. 2021-01-06 10:30:05 -05:00
Joe Taylor
fb6fcdf35e Mostly(?) temporary diagnostic tests. 2021-01-06 10:24:08 -05:00
Joe Taylor
47c8286db8 Disallow Q65 decodes with sum(dat4)=0: all 78 bita are zero. 2021-01-05 19:45:00 -05:00
Joe Taylor
4fb90e336e Better orange sync curve. Clear message averaging after a successful decode. 2021-01-05 11:30:22 -05:00
Joe Taylor
f82356e199 q65sim: nonzero step size ==> Doppler tracking; otherwise, linear drift. 2021-01-05 10:42:19 -05:00
Joe Taylor
ea271152b8 Implement "orange sync curve", useful for multi-signal situation. 2021-01-04 14:38:02 -05: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
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
d5957f51f9 Insert some (commented out) diagnostics. 2020-12-24 13:07:29 -05:00
Joe Taylor
36a089de21 Remove the sync-test option from q65sim.f90. 2020-12-21 13:42:03 -05:00
Joe Taylor
545079e951 Reorder the ibw loop in q65_loops.f90. 2020-12-20 21:43:30 -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
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
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
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
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
adc4c3d78a More Q65 cleanup. Single-digit at end of line. 2020-11-30 14:13:37 -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
9ff6f5b4d3 Temporary save, much work in progress. 2020-11-30 09:52:47 -05:00
Joe Taylor
64516e6abb Still testing various parts of the Q65 decoding chain. 2020-11-29 10:00:33 -05:00
Joe Taylor
cbfb6dd250 Implement full-message sync possibility when QSOprogress > 0. 2020-11-23 14:30:36 -05:00
Joe Taylor
d76e56fa31 Merge branch 'feat-fst280' of bitbucket.org:k1jt/wsjtx into feat-fst280
Include code to try sync with full message info.
2020-11-23 08:47:37 -05:00
Nico Palermo/IV3NWV
6fa9f76a75 Interface to q65_intrinsics_fastfading changed to support B90Ts instead of B90 and then supporting correctly modes with any T/R interval 2020-11-23 06:03:59 +01:00
Joe Taylor
9c51e93f06 Implement Nico's "deep likelihood" to replace iaptype=4 and 75-bit APmask. 2020-11-22 13:58:29 -05:00
Nico Palermo/IV3NWV
de468e071a Merge branch 'feat-fst280' of bitbucket.org:k1jt/wsjtx into feat-fst280 2020-11-21 18:18:45 +01:00
Joe Taylor
b2833fd6f0 Fix the use of ndepth for setting jitter-loop limits. 2020-11-21 11:34:17 -05:00
Nico Palermo/IV3NWV
4bd7fcb4a1 added likelihood check for better false rejection - added function q65_decode_fullaplist for full-ap decoding of a list of codewords 2020-11-21 17:00:15 +01:00
Joe Taylor
d9cb870540 Adjust Q65 jitter-loop ranges according to ndepth. 2020-11-20 17:07:11 -05:00
Joe Taylor
7ff3d598c8 Use g15 = 32403 rather than 32373 for the "RR73" message fragment in Q65. 2020-11-20 15:40:25 -05:00
Joe Taylor
09815826e2 For Q65 with QSOprogress=3, reduce npasses to 2 (iaptype=3, 4 only); reduce APmast from 78 to 75 bits. 2020-11-20 15:16:23 -05:00
Joe Taylor
3662a76de7 More Q65 test program tweaks. 2020-11-19 15:41:15 -05:00
Joe Taylor
13d0b20661 Change the unmasked bits for iaptype 4, 5, 6. Tweak the SNR limits in test_q65. 2020-11-19 15:25:28 -05:00
Joe Taylor
0755e52993 Another reformatting of output to fort.53. 2020-11-16 13:49:31 -05:00
Joe Taylor
24ed64e5cc Add UTC and reformat diagnostic output to fort.53. 2020-11-15 12:21:08 -05:00
Joe Taylor
dc3d567ce8 Correct the diagnostic output to fort.53. 2020-11-13 13:45:14 -05:00
Joe Taylor
91862e61e6 Display Q65 values of DT and f0 from the actual decode, not just values from sync_q65. 2020-11-13 13:40:16 -05:00
Joe Taylor
5fe6a539b6 Fix an error in defining dat4(13) in Q65 mode. Not backward compatible! Also fix AP and message averaging for Q65. 2020-11-11 15:06:24 -05:00
Joe Taylor
3068f0c61f Use genwave() to create Q65 audio signal. Send "include averaging" flag to Q65 decoder. 2020-11-11 11:14:02 -05:00
Joe Taylor
56a3201d14 Reactivate Q65 message averaging, and fix the reporting of those decodes. 2020-11-10 10:14:41 -05:00