diff --git a/doc/user_guide/en/introduction.adoc b/doc/user_guide/en/introduction.adoc index d4cafb551..0431a3cc8 100644 --- a/doc/user_guide/en/introduction.adoc +++ b/doc/user_guide/en/introduction.adoc @@ -7,27 +7,27 @@ K1**JT**,`" while the suffix "`-X`" indicates that _WSJT-X_ started as an extended and experimental branch of the program _WSJT_. -_WSJT-X_ Version 1.7 offers eight protocols or modes: *JT4*, -*JT9*, *JT65*, *QRA64*, *WSPR*, *ISCAT*, *MSK144*, and *Echo*. The -first four are designed for making reliable QSOs under extreme -weak-signal conditions. They use nearly identical message structure -and source encoding. JT65 and QRA64 were designed for EME -("`moonbounce`") on the VHF/UHF bands and have also proven very -effective for worldwide QRP communication on the HF bands. QRA64 has -a number of advantages over JT65, including better performance on the -very weakest signals. We imagine that over time it may replace JT65 -for EME use. JT9 was originally designed for the LF, MF, and lower HF -bands. Its submode JT9A is 2 dB more sensitive than JT65 while using -less than 10% of the bandwidth. JT4 offers a wide variety of tone -spacings and has proved very effective for EME on microwave bands up -to 24 GHz. All of these "`slow`" modes use one-minute timed sequences -of alternating transmission and reception, so a minimal QSO takes four -to six minutes — two or three transmissions by each station, one -sending in odd UTC minutes and the other even. On the HF bands, -world-wide QSOs are possible using power levels of a few watts (or -even milliwatts) and compromise antennas. On VHF bands and higher, -QSOs are possible (by EME and other propagation types) at signal -levels 10 to 15 dB below those required for CW. +_WSJT-X_ Version 1.7 offers eight protocols or modes: *JT4*, *JT9*, +*JT65*, *QRA64*, *ISCAT*, *MSK144*, *WSPR*, and *Echo*. The first +four are designed for making reliable QSOs under extreme weak-signal +conditions. They use nearly identical message structure and source +encoding. JT65 and QRA64 were designed for EME ("`moonbounce`") on +the VHF/UHF bands and have also proven very effective for worldwide +QRP communication on the HF bands. QRA64 has a number of advantages +over JT65, including better performance on the very weakest signals. +We imagine that over time it may replace JT65 for EME use. JT9 was +originally designed for the LF, MF, and lower HF bands. Its submode +JT9A is 2 dB more sensitive than JT65 while using less than 10% of the +bandwidth. JT4 offers a wide variety of tone spacings and has proven +highly effective for EME on microwave bands up to 24 GHz. All of these +"`slow`" modes use one-minute timed sequences of alternating +transmission and reception, so a minimal QSO takes four to six minutes +— two or three transmissions by each station, one sending in odd UTC +minutes and the other even. On the HF bands, world-wide QSOs are +possible using power levels of a few watts (or even milliwatts) and +compromise antennas. On VHF bands and higher, QSOs are possible (by +EME and other propagation types) at signal levels 10 to 15 dB below +those required for CW. *ISCAT*, *MSK144*, and optionally submodes *JT9E-H* are "`fast`" protocols designed to take advantage of brief signal enhancements from diff --git a/doc/user_guide/en/new_features.adoc b/doc/user_guide/en/new_features.adoc index 1be3e2319..3cde11c86 100644 --- a/doc/user_guide/en/new_features.adoc +++ b/doc/user_guide/en/new_features.adoc @@ -5,22 +5,23 @@ added to _WSJT-X_ since Version 1.6.0: - New modes: ISCAT, MSK144, QRA64 -- Newly implemented submodes of existing modes: JT65B-C, JT9B-H +- Newly implemented submodes: JT65B-C, JT9B-H -- Fast submodes of JT9 +- New fast submodes of JT9E-H -- New Franke-Taylor decoder replaces the Koetter-Vardy decoder in -JT65; the separate program `kvasd[.exe]` is no longer used. +- New Franke-Taylor decoder toreplace the Koetter-Vardy decoder in +JT65. Separate program `kvasd[.exe]` is no longer used. - Improvements to the JT4, JT9, and JT65 decoders -- Multi-pass decoding for JT65 and WSPR +- Multi-pass decoding for JT65 and WSPR. Strong decoded signals are +subtracted out, allowing the decoding of weaker signals. - Improved convenience features for EME Doppler tracking -- Multiple program configurations can be saved and restored +- Saving and restoring of multiple program configurations -- A new sample-file download facility +- New sample-file download facility - Many corrections and improvements to the Hamlib library, fixing -balky rig-control features. +balky rig-control features diff --git a/doc/user_guide/en/protocols.adoc b/doc/user_guide/en/protocols.adoc index d97ced3d7..61b7fa52d 100644 --- a/doc/user_guide/en/protocols.adoc +++ b/doc/user_guide/en/protocols.adoc @@ -245,3 +245,30 @@ holdover from JTMSK and is probably not necessary.) The 144-bit frame is repeated for the duration of a transmission cycle. +=== Summary + +[[SLOW_TAB]] +.Parameters of Slow Modes +[width="90%",cols="3h,^3,^2,^1,^2,^2,^2,^2,^2,^2",frame=topbot,options="header"] +|=============================================================================== +|Mode |FEC Type |(k,n) | Q| Mod | Baud |BW (Hz)|fSync|TxT (s)|S/N (dB) +|JT4A |K=32, r=1/2|(206,72)| 2| 4-FSK| 4.375| 17.5 | 0.50| 47.1 | -23 +|JT9A |K=13, r=1/2|(206,72)| 8| 9-FSK| 1.736| 15.6 | 0.19| 49.0 | -27 +|JT65A |RS |(63,12) |64|65-FSK| 2.692| 177.6 | 0.50| 46.8 | -25 +|QRA64A|QRA |(63,12) |64|64-FSK| 1.736| 111.1 | 0.25| 48.4 | -28 +| WSPR |K=32, r=1/2|(162,50)| 2| 4-FSK| 1.465| 5.9 | 0.50|110.6 | -29 +|=============================================================================== + +.Parameters of Fast Modes +[width="90%",cols="3h,^3,^2,^1,^2,^2,^2,^2,^2,^2",frame="topbot",options="header"] +|============================================================================= +|Mode |FEC Type |(k,n) | Q| Mod | Baud |BW (Hz)|fSync|TxT (s)|S/N (dB) +|ISCAT-A | - | - |42|42-FSK| 21.5 | 905 | 0.17| 1.176 | +|ISCAT-B | - | - |42|42-FSK| 43.1 | 1809 | 0.17| 0.588 | +|JT9E |K=32, r=1/2|(206,72)| 8| 9-FSK| 25.0 | 225 | 0.19| 3.400 | +|JT9F |K=32, r=1/2|(206,72)| 8| 9-FSK| 50.0 | 450 | 0.19| 1.700 | +|JT9G |K=32, r=1/2|(206,72)| 8| 9-FSK|100.0 | 900 | 0.19| 0.850 | +|JT9H |K=32, r=1/2|(206,72)| 8| 9-FSK|200.0 | 1800 | 0.19| 0.425 | +|MSK144 |LDPC |(128,72)| 2| OQPSK| 2000 | 2000 | 0.11| 0.072 | -5 +|MSK144 Sh|LDPC |(32,16) | 2| OQPSK| 2000 | 2000 | 0.20| 0.020 | -5 +|============================================================================= diff --git a/mainwindow.cpp b/mainwindow.cpp index 522a49d3e..bd1ed6ff3 100644 --- a/mainwindow.cpp +++ b/mainwindow.cpp @@ -809,6 +809,7 @@ MainWindow::MainWindow(QDir const& temp_directory, bool multiple, m_fCPUmskrtd=0.0; m_bFastDone=false; m_bAltV=false; + m_wait=0; ui->txrb1->setChecked(true); if(m_mode.startsWith ("WSPR") and m_pctx>0) { @@ -2005,7 +2006,7 @@ void MainWindow::on_actionOpen_next_in_directory_triggered() //Open Next tx_status_label.setText(" " + baseName + " "); m_diskData=true; read_wav_file (fname); - if(i==list.size()-2) { + if(m_loopall and (i==list.size()-2)) { m_loopall=false; MessageBox::information_message(this, tr("No more files to open.")); } @@ -2950,8 +2951,14 @@ void MainWindow::guiUpdate() if(!m_btxok && m_btxok0 && g_iptt==1) stopTx(); if(m_startAnother) { - m_startAnother=false; - on_actionOpen_next_in_directory_triggered(); + if(m_mode=="MSK144") { + m_wait++; + } + if(m_mode!="MSK144" or m_wait>=4) { + m_wait=0; + m_startAnother=false; + on_actionOpen_next_in_directory_triggered(); + } } //Once per second: @@ -4020,7 +4027,7 @@ void MainWindow::on_actionMSK144_triggered() ui->sbFtol->setVisible(true); ui->cbAutoSeq->setVisible(true); ui->ClrAvgButton->setVisible(false); - + ui->RxFreqSpinBox->setVisible(true); ui->cbShMsgs->setVisible(true); ui->actionMSK144->setChecked(true); ui->rptSpinBox->setMinimum(-8); @@ -4290,6 +4297,7 @@ void MainWindow::on_actionISCAT_triggered() ui->sbFtol->setVisible(true); ui->sbSubmode->setVisible(true); ui->cbShMsgs->setVisible(false); + ui->cbShMsgs->setChecked(false); ui->cbTx6->setVisible(false); ui->cbAutoSeq->setVisible(false); ui->decodedTextBrowser2->setVisible(false); @@ -4301,7 +4309,11 @@ void MainWindow::on_actionISCAT_triggered() ui->sbSubmode->setMaximum(1); if(m_nSubMode==0) ui->TxFreqSpinBox->setValue(1012); if(m_nSubMode==1) ui->TxFreqSpinBox->setValue(560); - ui->TxFreqSpinBox->setEnabled (false); + ui->TxFreqSpinBox->setVisible(false); + ui->RxFreqSpinBox->setVisible(false); + ui->pbR2T->setVisible(false); + ui->pbT2R->setVisible(false); + ui->cbTxLock->setVisible(false); } void MainWindow::switch_mode (Mode mode) diff --git a/mainwindow.h b/mainwindow.h index 4b0238986..8d7ff1a14 100644 --- a/mainwindow.h +++ b/mainwindow.h @@ -373,6 +373,7 @@ private: qint32 m_nTx73; qint32 m_freqCQ; qint32 m_UTCdisk; + qint32 m_wait; bool m_btxok; //True if OK to transmit bool m_diskData;