From b9e92c416f2bcb39148a65439bc217419ef44920 Mon Sep 17 00:00:00 2001 From: Joe Taylor Date: Fri, 3 Jul 2020 09:48:01 -0400 Subject: [PATCH] Implement round-robin scheduling for FST240W mode. --- widgets/mainwindow.cpp | 16 ++++++++++++++-- widgets/mainwindow.ui | 38 +++++++++++++++++++++++++++++++++++++- 2 files changed, 51 insertions(+), 3 deletions(-) diff --git a/widgets/mainwindow.cpp b/widgets/mainwindow.cpp index 8e80c3e92..7abe31420 100644 --- a/widgets/mainwindow.cpp +++ b/widgets/mainwindow.cpp @@ -4078,7 +4078,7 @@ void MainWindow::guiUpdate() //Once per second: if(nsec != m_sec0) { -// qDebug() << "onesec" << m_mode; +// qDebug() << "onesec" << ui->RoundRobin->currentText(); m_currentBand=m_config.bands()->find(m_freqNominal); if( SpecOp::HOUND == m_config.special_op_id() ) { qint32 tHound=QDateTime::currentMSecsSinceEpoch()/1000 - m_tAutoOn; @@ -5844,7 +5844,7 @@ void MainWindow::on_actionFST240W_triggered() m_TRperiod = ui->sbTR_FST240W->value (); ui->band_hopping_group_box->setVisible(false); int ntr=m_TRperiod; - ui->sbTR_FST240W->setMinimum(15); //### 120 ?? ### + ui->sbTR_FST240W->setMinimum(15); ui->sbTR_FST240W->setMaximum(300); ui->sbTR_FST240W->setValue(120); //### Why is all this necessary? ### ui->sbTR_FST240W->setValue(300); @@ -7899,6 +7899,18 @@ void MainWindow::on_pbTxNext_clicked(bool b) void MainWindow::WSPR_scheduling () { + QString t=ui->RoundRobin->currentText(); + if(m_mode=="FST240W" and t!="Random") { + int i=t.left(1).toInt(); + int n=t.right(1).toInt(); + + qint64 ms = QDateTime::currentMSecsSinceEpoch() % 86400000; + int nsec=ms/1000; + int ntr=m_TRperiod; + int j=(nsec % (n*ntr))/ntr + 1; + m_WSPR_tx_next=(i==j); + return; + } m_WSPR_tx_next = false; if (m_config.is_transceiver_online () // need working rig control for hopping && !m_config.is_dummy_rig () diff --git a/widgets/mainwindow.ui b/widgets/mainwindow.ui index 7e0fc103a..31bdefcc4 100644 --- a/widgets/mainwindow.ui +++ b/widgets/mainwindow.ui @@ -2631,6 +2631,43 @@ list. The list can be maintained in Settings (F2). + + + + 0 + + + + Random + + + + + 1/2 + + + + + 2/2 + + + + + 1/3 + + + + + 2/3 + + + + + 3/3 + + + + @@ -2876,7 +2913,6 @@ list. The list can be maintained in Settings (F2). -