Working frequencies can be for all regions or for individual IARU
regions. This allows each mode band tuple to have one or more working
frequencies which can include local ones only offered when the user
configures their IARU region.
Change working frequency default suggestions to better fit in
FT8. General rule is FT8 is at JT65 -2kHz except where that is not
possible e.g. where that would fall into a segment not allocated for
narrow band data modes. For tight bands like top band sqeeze existing
JT65 and JT allocations to allow space for FT8.
NOTE: this change changes the WSPR frequency on 80m to allow access to
JA stations that currently have no allocation where it was placed.
ALSO NOTE: the JT65 and JT9 frequencies for 80m move down 6 kHz, again
to accommodate region 3 users. Other appliactions not within our
control should be asked to move in step when 1.8.0 is released.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7810 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
When using split operating and/or rig mode setting there is a delay
before PTT is asserted while the CAT commands are processed. There
will even be a small delay if CAT is only used for PTT. This change
waits for these commands to be completed before starting the user Tx
delay specified in the settings.
There is a notable exception to this in that DX Lab Suite Commander
does not give us a way of knowing when CAT commands have actually been
completed. This combined with the way that Commander spaces CAT
commands, rather than being paced by the rig's CAT responses, means
that delays of more than 1 second are likely. As most rigs suffer some
sort of ALC overshoot when PTT is asserted with audio already present,
it is strongly recommended not to use the DX Lab Suite Commander as a
rig control proxy if your rig may suffer ALC overshoot and you use an
external PA. Please note that using a typical RF power meter to detect
ALC overshoots is unwise as they are rarely fast enough. It is
probably wise to assume that all rigs suffer ALC overshoot since it is
very difficult to design an ALC loop that avoids it.
This change also increases the range of the "Settings->Advanced->Tx
Delay" spin box to 0s up to 2s.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7756 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
For FT8 mode:
1. Open LU 13 in the proper way.
2. Disable diagnostic LU 51.
3. Add keyboard shortcuts CTRL+Plus, CTRL-Minus, to adjust audio Tx frequency
in even 50 Hz steps.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7749 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
This feature is of limited benefit and causes unexpected behaviour on
rigs with lower than 1Hz resolution. Removed for simplicity.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7743 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2. ft8d is now a bare-bones multi-decoder.
3. wsjt-x now includes the bare-bones multi-decoder for FT8.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7729 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
These were using a hijacked custom spin box that was designed only for
letters i.e. submodes. Now there are two new custom spin boxes.
HistedSpinBox:- can be set with a list of integer values which the
step up and down will follow. Optionally limits the maximum and
minimum value to the upper and lower bounds of the values set. Note
that intermediate values are still valid.
RestrictedSpinBox:- more like a combo box because the provided values
are the only ones that can be set.
HintedSpinBox is used for the frequency tolerance and
RestrictedSpinBox is used for T/R period.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7698 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
Until the advanced band hopping scheduler is upgraded to work with T/R
periods other than 2 minutes this scheduler uses a strictly random
scheduler, except that Tx percentages less than 40 defer Tx periods
that would otherwise be consecutive.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7687 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
More to come on this but should get Tab 2 basically working with
MSK144 running from a calling frequency.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7675 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
The wide graph class handles 60m band behaviour of the minimum decoded
JT9 DF internally without leaking implementation details.
On 60m the lowest JT9 DF is always zero and the spin box to set it is
disabled. This reflects that 60m only has narrow channels and JT9
signals should share the same dial frequency as JT65 signals.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7668 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
Ctrl+M (Cmd+M) was being used as a menu shortcut and in key press
event handlers which leads to inconsistent behaviour on some
platforms. Removed menu action shortcut.
Also tidied up handling of the hide controls menu action by making it
a checkable action and using its checked state to store the control
hiding state.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7608 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
1. Level meter range increased to 0-90 dB.
2. Level meter reading is independent of slider setting.
3. For a trial period: thermometer bar goes red if a 16-bit sample
is within 5 dB A/D limit.
4. Slider can be used to adjust levels sent to waterfall.
5. Tx6 message is selected on program startup.
Thanks to W9MDB for most of this code.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7596 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
"JT65 nnnn JT9" blue line to 0 Hz. Now it also moves the spinner to
0 Hz, as it should have done. Subsequent QSY to another band will reset
the blue line and spinner to where they had been, before the QSY to 60 m.
Thanks to W9MDB for this patch.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7595 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
Use a header format for polynomial coefficients that includes the
valid X range in scaled terms and a count of the number of
coefficients.
Use double precision consistently for polynomial coefficients. This
includes formatting with sufficient DPs when writing to files.
Many changes to the equalization plots, more to come.
Add error handling for reading coefficient, plot and filter
files. This includes being backward compatible for old format
refspec.dat files with no header.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7578 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
This builds on the static phase compensation in the MSK144 decoder and
the phase analysis and polynomial fitting capabilities also in teh
MSK144 decoder, by allowing captured data to be selected for phase
equalization from the WSJT-X UI.
Reads captured phase compensation curve estimate files containing
fitted polynomial coefficients and measured phase data from MSK144
receptions. Intent is to select a compensation curve that is from a
known transmitter like an SDR which have good phase linearity. Phase
plots and compensation polynomials may be viewed and compared with the
current compensation polynomial. A suitable polynomial can be applied
to be use in all further decoding of MSK144 signals.
Plots of the currently selected polynomial and its modified higher
order terms polynomial which is actually used in equalization (this
plot may be dropped - it is just for kicks at the moment). When a
captured phase analysis file is loaded plots of the measured phase and
the proposed best fit polynomial are shown.
Basic maintenance is also included allowing clearing and loading
captured plots and an option to revert to a flat no equalization
curve.
More to come on this as amplitude equalization is also possible, this
will probably be similar, maybe even plotted on the same graph with
dual axes for phase and amplitude. Amplitude correction from a
measured reference spectrum could be viewed and selected for
equalization for all modes. TBC...
This change also introduces the QCustomPlot 3rd party
widget. Currently this is statically linked from a qcp library built
by the WSJT-X CMake script. This will probably be migrated to a shared
object (DLL) build as a CMake external project, once some CMake script
re-factoring has been completed, which is more in line with the
QCustomPlot author's intentions. This will allow efficient reuse in
other tools shipped with WSJT-X.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7570 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
Allow band drop down list to be used to select FreqCal frequencies,
also resets position in automatic cycle. Tidy up some unnecessary
code.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7486 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
1. Menu item *Tools -> Execute frequency calibration cycle* is renamed and checkable. Cycling does not start until checked.
2. Ctrl+F10 now allows you to cycle manually through the list of calibration frequencies.
3. Calibration sequence lengths can be set to 5, 10, 15, or 30 s with the sbTR spinBox.
Also: don't set sbTR index to 0 when entering a slow mode.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7485 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
Rx DF is now "real-time" adjusting the rig in concert with the
monitored DF.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7465 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
Some default time signals have been added to the frequency list so a
base set can be obtained by resetting the frequency list,
alternatively they can be added ad hoc in the normal fashion.
FreqCal mode behavior is to select the lowest cal frequency upon
entering FreqCal mode and cycling through each cal frequency
repeatedly. Ctrl+F10 jumps directly to the next higher frequency.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7463 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
Deepest decode level should be selected automatically when switching
to JT4 or JT65 when VHF & up mode is on and either of averaging or
deep search are enabled.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7456 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
only when 73 is sent. Revert to that well-established behavior.
2. Correct the logic that detects short-form RO, RRR, and 73 messages in
JT65 VHF modes and color-highlights the Tx message box.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7442 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2. Don't update the "Last Tx" message until current transmission is complete.
These suggestions from W9MDB.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7429 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2. Send emedelay (now 0 or 2.5) to QRA64 decoder.
3. Tweaks to sync64, making it better for QRA64A.
4. Mainwindow MessageBox if it attempts to open a file with wrong format.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7424 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
Sub mode and fast mode flag are added to the UDP Status message and
Status messages after appropriate UI changes. MSK144 decodes produce
UDP Decode messages. Fast JT9 messages are treated similarly.
Currently ISCAT decodes are not posted as UDP Decode messages as they
do not fit well with the model.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7389 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
The class NetworkAccessManager sub-classes QNetworkAccessManager
adding a message box to ask the user if SSL errors may be
ignored. Ignored errors are ignored in future server replies so that
the user is not asked about he same peer certificate chain repeatedly.
The cache is currently per process only and not persistent.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7361 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
Updated UDP examples to show the version and revision information
received from clients.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7358 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
Use the new DX Lab Suite Commander command option to stop Commander
trying to change the rig Tx VFO mode when we don't want to. Requires a
recent DX Lab Suite Commander version.
All rig controllers can now detect 20Hz resolution rigs, still needs
2Hz resolution code which will be needed for the FT-891 AFAIK.
Enhance the HRD interface to be able to use the alternative PTT
command as found on most Kenwood rigs for audio source selection. Fix
Icom data mode selection issues.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7357 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
CQ NNN ... and CQ aa ... are coalesced to CQ_NNN ... and CQ_aa ... so
as to keep the word count and indexes consistent with plain CQ ..., DE
... and QRZ ... standard message forms when parsing messages.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7356 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
... rather than the working frequency.
Users set their working frequency and specify a calling frequency as a
kHz offset into the current Rx MHz with the main window spin box.
Calling CQ on the specified calling frequency is enabled by checking
the associated option.
Also enhanced the auto sequencing to handle short code 73 messages
correctly.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7339 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
One reason for inactivity is that a calibration adjustment has been
made.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7320 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
Also relax entry validation so it is easier to enter standard message
forms longer than 13 characters into message entry line edits.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7294 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
display of the "No More Files..." message until after the "Decode Finished"
message is received.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7270 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
This change maintains the encapsulation of the MultiSettings class by
using a signal to notify clients of changes to the current
configuration name.
Modifications to the MainWindow class to display the current
configuration name in the status bar, if it is not "Default", based on
MultiSettings events rather than polling for changes.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7257 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
way to make sure that the new .wav file is ready, before starting wsprd?)
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7242 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
Fix autotune for tx pwr on band changes to keep current level if never set.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7233 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
of power settings for Transmit and Tune. Also an interim update of
v1.7_Features.txt.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7229 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
delete some later. Rather, we save only those with real-time decodes (or
we save all).
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7188 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2. Correct several more flaws in making GUI controls visible or invisible.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7170 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2. Make the "MSK144 Realtime decode" checkbox invisible, in preparation for removing it entirely.
3. Always use RealTime decoding in MSK144 mode. (For now, at least, click-to-decode works as before.)
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7168 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2. Do not adjust Rx Freq automatically after an MSK144 decode.
3. Insert the Rcvd report in log window.
4. Send MSK144 decodes to PSK Reporter.
NB: not all these are fully tested, yet.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7134 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
the old fast_decode(); probably it should call hspec() instead?
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7113 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
I believe file saving and auto-sequencing nor work. Not sure about posting
to PSK reporter: please check.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7112 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
1. Clean up mskrtd to remove unused variables.
2. Re-instate Rx frequency spinbox in MSK144 mode to allow decoding of off-frequency signals with small FTol. Make changes needed to pass Rx Freq in to fortran routines.
3. Enable realtime decoder for testing. Auto sequence does not yet work when realtime decoding is enabled. There are probably other bugs as well.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7109 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2. Move cursor DT readout to lower left of top panel.
3. More work on pick-decodes... but it's not yet fully working.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7092 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
This button pops up the same context menu as the configurations button
on the main window menu bar. This allows the operator to easily escape
from an incorrectly configured configuration without changing it.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7075 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
This option, on by default, maintains backwards compatibility for
non-compound callsign holders. If switched off and they have
specified a 6 digit grid then it will be sent in the type 2 protocol
using two messages and a hashed callsign.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7053 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
Even though the splash screen does not have a title it seems to
interfere with JTAlert which enumerates window titles to identify
WSJT-X instances. I'm not sure why this is necessary, but if it helps
it should be benign.
Ensure that the splash screen is hidden before any message boxes are
shown, this is essential at startup if there is a stale lock file or
rig control error.
Be far less aggressive about bringing the splash screen to the top of
the application window stack. This may cause the splash screen to be
obscured on some platforms.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7025 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
Fix the improper display of "Fast" checkbox.
Disable "CQ nnn" checkbox if MyCall is not K1JT or K9AN.
Use AppDir as path to execute the LDPC encode program.
Don't display submodes in mode label for JTMSK, MSK144.
Make Rx Freq spinner invisible in MSK144 mode.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@7001 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
NB: temporary files are being written to execution directory!
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6989 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2. Fix failure to remember Ftol setting in MSK144 mode.
3. Remove obsolete controls from Advanced tab.
4. Add control for "x 2 Tone spacing" on Advanced tab.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6981 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
reports to -4 to +10 dB. Include +/- sign in all reports.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6907 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
Two new validator classes CallsignValidator and
MaidenheadLocatorValidator are introduced and used in the
Configuration and MainWindow implementations.
MaidenheadLocatorValidator supports different lengths and minimum
required lengths with a default of subsquare with square being
required.
The message_aggregator application has been enhanced to show the
current DX call and DX grid as shown in the WSJT-X main window.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6903 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
This should allow receivers of UDP Status messages to accurately track
the Tx watchdog status. Also some defects in the Tx watchdog logic are
repaired.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6900 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
Thanks to Mike W9MDB for contributing this patch.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6892 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
This makes all child widgets able to reset the Tx watchdog by mouse
click or key press.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6881 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
Instead of using the Qt QMessageBox class directly a new class
MessageBox (MessageBox.hpp) has been added to deal with platform
independence issues like the title not being shown on Mac OS X.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6861 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
Rationalize the status bar construction and maintenance.
Ensure that incoming UDP Reply messages reset the watchdog.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6847 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
The watchdog configuration is now a spin box of minutes with a special
first value of disabled. WSJT-X counts down minutes on the minute, if
the countdown reaches zero any attempt to transmit is aborted. The
countdown is reset by any mouse press or key press event inside the
main window or if the Tx message changes (auto sequencing).
The status bar now shows the Tx watchdog countdown if it is
active. This information is shown to the right of the progress bar
text.
The warning message boxes triggered within the GUI update routine now
no longer block the GUI updates.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6840 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
Message boxes and accepted incomming UDP actions alert the user even
if the application is hidden. This does not steal focus as that is
considered bad practice and is annoying.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6826 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
Fixed naming of fast recording files.
Tidied some signal/slot plumbing in the fast plotter.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6806 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
This change corrects timing discrepancies on the horizontal fast
spectrum plot.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6780 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
Using the reference spectrum discards a short part of the front of the
period's received samples which may have contained a decode candidate.
As far as the MSK modes are concerned the reference spectrum
correction is probably not applicable anyway.
Comment from Steve K9AN after offline discussions about this:
"In any case, I don’t think that there is any reason to apply the
reference spectrum correction to the MSK modes. I do think that we are
paying a performance penalty in the MSK modes for non-ideal filter
responses at the TX and RX ends of the link — but we would need to
implement an equalizer that looks at the received sync words as a
“training sequence” in order to come up with anything that could
improve the results. This would take into account the receiver and
transmitter filters, and would probably be different for every
TX/RX/meteor burst. My current thinking is that for the low SNRs that
we are most interested in, and with the short sync words that we use,
we wouldn’t be able to do a very good job of estimating the
coefficients of the equalizer..."
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6776 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
Move the FFTW3 cleanup into the main routine as it should only be
called once rather than every time the settings configuration is
changed or reset (MultiSettings).
Call the new fini_ldpc_ routine before exiting in the main routine to
free the LDPC resources.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6764 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
These include the wide graph window not being suppressed when starting
the application in a fast mode.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6762 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
These were discovered when running under teh valgrind MemCheck tool. I
have also checked in a suppressions file (wsjtx-valgrind.linux.supp)
suitable for use on Linux when running the valgrind MemCheck tool.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6755 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
Highlight, in the CQ colour, CQDX ... and QRZ ... messages and
process correctly for worked before and DXCC entity.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6753 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
Refactor the save WAV file routine to return an error string as a
promise and then get that result and report in a QMessageBox.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6752 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
Pass file path for peg-128 files to fast_decode(). (Inelegant, but it works.)
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6741 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
Build now creates and installs a UDP library that contains the server
side of the UDP messaging facility. This library is used by the
udp_daemon and message_aggregator reference examples. The new library
is currently a static archive but can also be built as a shared
library. The library allows third party Qt applications to easily
access UDP messages from WSJT-X.
Refactored the message_aggregator reference example to split out
classes into separate translation units. Added new functionality to
exercise the new UDP status fields, highlight own call, CQ/QRZ
messages and decodes near Rx DF.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6691 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
Use the decoded text font for the message averaging window.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6684 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
During orderly close down the UI can be destroyed while Rx audio
blocks are still being delivered. Therefore the UI pointer must be
checked in MainWindow::datasink before attempting to access the UI
widgets.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6683 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
The decoded message processing relies on fixed column positions so the
extra character used in message averaging to indicate sync flips must
also be allowed for in other modes. This is done by inserting a space
character.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6681 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
Tx period was erroneously being forced to odd/2nd.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6670 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
Static storage variables that should have been class members are made
so. This ensures that if they are used as initialization one time
switches then they will operate correctly when their class
instantiated more than once. This now happoens for most classes due to
the configurations switching facility which destroys all windows and
re-instantiates them.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6661 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
Changing configuration causes WSJT-X and JTAlert to get into a fight
for the temporary directory. By moving the creation and clearup of the
temporary directory outside of the configurations loop this issue is
minimized to no worse than before multiple configurations were added.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6630 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
Also added a new configuration query method to check if Rig is None
i.e. a dummy rig.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6629 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
Multiple configurations are accessed and maintained from a new main
window menu bar pop up menu "Configurations". The prior settings are
the "Default" entry. New configurations may be added by cloning
existing ones. Maintenance and navigation is via sub menus for each
configuration.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6623 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2. When switching to JT65 mode, go through JT9 first.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6621 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
The changes to fix the Tx DF at 1000Hz when VHF & up features are
enabled had an undesirable side effect of disabling double clicking on
decodes because this was disabled by the Tx DF spin box being
disabled. The Tx DF spin box being disabled in VHF & up mode may
change but this change fixes this issue regardless.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6617 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2. Don't display orange warning bar when in WSPR mode.
3. Fix a longstanding compiler warning.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6616 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
The concept of a nominal receive and transmit frequency has been
introduced. This is used as a base frequency for Doppler correction,
frequency setting and reporting. The start up frequency is now zero
which is updated by the first rig control status report. This needs
more work to accommodate calling frequency plus working frequency
operation as is used for random MS operation etc..
The main window frequency display now shows the transmit dial
frequency while transmitting.
The mode changing logic sequence has been changed such that the rig is
correctly put into and taken out of split mode as required by the
target mode. This also avoids the "other" VFO having its frequency
changed when entering a mode that does not use split operating like
WSPR.
The main window band combo box edit may now be used to input an kHz
offset from the current MHz dial frequency. This is intended for
setting a sked or working frequency on the VHF and up bands. For
example the working frequency for 23cms might be set to 1296MHz and a
working frequency of 1296.3MHz would be selected by selecting the
23cms band with the combo box drop down list and then entering 300k
into the band combo box edit widget.
When using JT4 modes a CTRL+Click on the waterfall adjusts the nominal
frequency such that the frequency clicked on becomes the Tx and Rx
frequency using the fixed 1000Hz DF that JT4 modes use. This will
probably be extended to all QSO modes when used in VHF & up mode. This
assumes that 1000Hz is an optimal DF for both Tx and Rx and therefore
one can "net" to an off frequency, but visible on the waterfall,
caller with one click.
Improvements to OmniRig rig control including use of the serial port
control lines RTS or DTR, on the CAT serial port used by OmniRig, for
PTT control.
Incrementing transaction sequence numbers added to messages to and from
the rig control thread. This enables round trip status to be tracked
and associated with a request. For example a command that might cause
several asynchronous status updates can now be tracked in the
originating thread such that it is clear which updates are caused by
executing the request. This in turn allows updates to be held until
the request is complete i.e. the state is consistent with the results
of the request.
Messages to the rig control thread are now posted as a new state
(Transceiver::TransceiverState) object. The rig control thread tracks
requests and actions any differences between the prior requests and
the new state.
The rig control thread is now stored on the heap so that it can be
closed down and released as needed. Along with this the rig control
close down semantics are better defined avoiding some potential
deadlock situations.
If the rig is placed into split mode it will be reverted to simplex
mode when the rig connection is closed.
When using direct rig control via Hamlib, rigs that have A/B VFO
arrangements and no method to query the current VFO like many Icoms
and the Yaesu FT-817/857/897(D) series now have smarted frequency
updating requiring no VFO changes when changing the frequency. This
is particularly important when doing Tx Doppler correction to avoid
glitches.
The implementation of emulated split operating mode ("Fake It") is
simplified and improved.
A dummy Hamlib transceiver for PTT control on a separate port is no
long instantiated if CAT or VOX PTT control is selected.
The resolution and any rounding of the rig CAT frequency set and get
commands is determined automatically upon opening the rig connection.
This is needed to determine the rate of frequency updates for Doppler
tracking. It also allows the rig to be more accurately controlled.
Frequency calibration is calculated separately for the receive and
transmit frequencies.
Whether the rig modulation mode should be controlled is now a
constructor argument rather than being passed with individual rig
control requests.
Doppler shift correction is considerably enhanced with simpler
controls and much better rig control. A new mode of tracking called
"receive only" is introduced for those with rigs that cannot be QSY:ed
via CAT when transmitting. Such rigs have a Doppler correction
calculated for the middle of the next transmit period just before
transmission starts. While using Doppler tracking it is now possible
to adjust the sked frequency either using the new kHz offset feature
of the main window band combo box or by directly tuning the rig VFO
knob while holding down the CTRL key.
The astronomical data window that includes Doppler tracking control is
now opened and closed using a checkable menu item to avoid it being
accidentally closed.
Debug configuration rig control diagnostic messages now have a
facility argument for clearer and more standardized trace messages.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6590 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
2. Make averaging and DS separately selecteble.
3. Clear nftt and avemsg on Clear Avg.
4. Allow fer65 to handle message averaging.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6543 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
1. Use "f" to flag FT decodes, 'h' for hinted decodes.
2. Let "Experience-based" checkboxes activate hinted decoding.
3. Singls-sequence decodes go to left window, average decodes to right.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6542 ab8295b8-cf94-4d9e-aec4-7959e3be5d79
list the correct UTC in decoded text line when using the "Decode" button.
git-svn-id: svn+ssh://svn.code.sf.net/p/wsjt/wsjt/branches/wsjtx@6519 ab8295b8-cf94-4d9e-aec4-7959e3be5d79