Implement round-robin scheduling for FST240W mode.

This commit is contained in:
Joe Taylor 2020-07-03 09:48:01 -04:00
parent f17a07953e
commit b9e92c416f
2 changed files with 51 additions and 3 deletions

View File

@ -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 ()

View File

@ -2631,6 +2631,43 @@ list. The list can be maintained in Settings (F2).</string>
</layout>
</widget>
</item>
<item>
<widget class="QComboBox" name="RoundRobin">
<property name="currentIndex">
<number>0</number>
</property>
<item>
<property name="text">
<string>Random</string>
</property>
</item>
<item>
<property name="text">
<string>1/2</string>
</property>
</item>
<item>
<property name="text">
<string>2/2</string>
</property>
</item>
<item>
<property name="text">
<string>1/3</string>
</property>
</item>
<item>
<property name="text">
<string>2/3</string>
</property>
</item>
<item>
<property name="text">
<string>3/3</string>
</property>
</item>
</widget>
</item>
</layout>
</item>
<item>
@ -2876,7 +2913,6 @@ list. The list can be maintained in Settings (F2).</string>
<addaction name="actionMSK144"/>
<addaction name="separator"/>
<addaction name="actionWSPR"/>
<addaction name="actionWSPR_LF"/>
<addaction name="separator"/>
<addaction name="actionEcho"/>
<addaction name="separator"/>