mirror of
https://github.com/f4exb/sdrangel.git
synced 2025-05-24 11:12:27 -04:00
SDRdaemonSink: control communication (1)
This commit is contained in:
parent
3d691ab416
commit
d3d8871b7c
@ -45,6 +45,7 @@ target_link_libraries(outputsdrdaemonsink
|
|||||||
${QT_LIBRARIES}
|
${QT_LIBRARIES}
|
||||||
sdrbase
|
sdrbase
|
||||||
${CM256CC_LIBRARIES}
|
${CM256CC_LIBRARIES}
|
||||||
|
${LIBNANOMSG_LIBRARIES}
|
||||||
)
|
)
|
||||||
|
|
||||||
qt5_use_modules(outputsdrdaemonsink Core Widgets)
|
qt5_use_modules(outputsdrdaemonsink Core Widgets)
|
||||||
|
@ -170,12 +170,12 @@ void SDRdaemonSinkGui::handleDSPMessages()
|
|||||||
|
|
||||||
while ((message = m_deviceAPI->getDeviceOutputMessageQueue()->pop()) != 0)
|
while ((message = m_deviceAPI->getDeviceOutputMessageQueue()->pop()) != 0)
|
||||||
{
|
{
|
||||||
qDebug("FileSinkGui::handleDSPMessages: message: %s", message->getIdentifier());
|
qDebug("SDRdaemonSinkGui::handleDSPMessages: message: %s", message->getIdentifier());
|
||||||
|
|
||||||
if (DSPSignalNotification::match(*message))
|
if (DSPSignalNotification::match(*message))
|
||||||
{
|
{
|
||||||
DSPSignalNotification* notif = (DSPSignalNotification*) message;
|
DSPSignalNotification* notif = (DSPSignalNotification*) message;
|
||||||
qDebug("FileSinkGui::handleDSPMessages: SampleRate:%d, CenterFrequency:%llu", notif->getSampleRate(), notif->getCenterFrequency());
|
qDebug("SDRdaemonSinkGui::handleDSPMessages: SampleRate:%d, CenterFrequency:%llu", notif->getSampleRate(), notif->getCenterFrequency());
|
||||||
m_sampleRate = notif->getSampleRate();
|
m_sampleRate = notif->getSampleRate();
|
||||||
m_deviceCenterFrequency = notif->getCenterFrequency();
|
m_deviceCenterFrequency = notif->getCenterFrequency();
|
||||||
updateSampleRateAndFrequency();
|
updateSampleRateAndFrequency();
|
||||||
@ -296,12 +296,17 @@ void SDRdaemonSinkGui::sendControl(bool force)
|
|||||||
|
|
||||||
if (rc != config_size)
|
if (rc != config_size)
|
||||||
{
|
{
|
||||||
QMessageBox::information(this, tr("Message"), tr("Cannot send message to remote control port"));
|
//QMessageBox::information(this, tr("Message"), tr("Cannot send message to remote control port"));
|
||||||
|
qDebug() << "SDRdaemonSinkGui::sendControl: Cannot send message to remote control port."
|
||||||
|
<< " remoteAddress: " << m_settings.m_address
|
||||||
|
<< " remotePort: " << m_settings.m_controlPort
|
||||||
|
<< " message: " << os.str().c_str();
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
qDebug() << "SDRdaemonSinkGui::sendControl:"
|
qDebug() << "SDRdaemonSinkGui::sendControl:"
|
||||||
<< "remoteAddress:" << m_settings.m_address
|
<< "remoteAddress:" << m_settings.m_address
|
||||||
|
<< "remotePort:" << m_settings.m_controlPort
|
||||||
<< "message:" << os.str().c_str();
|
<< "message:" << os.str().c_str();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -323,7 +328,7 @@ void SDRdaemonSinkGui::sendSettings()
|
|||||||
|
|
||||||
void SDRdaemonSinkGui::updateHardware()
|
void SDRdaemonSinkGui::updateHardware()
|
||||||
{
|
{
|
||||||
qDebug() << "FileSinkGui::updateHardware";
|
qDebug() << "SDRdaemonSinkGui::updateHardware";
|
||||||
SDRdaemonSinkOutput::MsgConfigureSDRdaemonSink* message = SDRdaemonSinkOutput::MsgConfigureSDRdaemonSink::create(m_settings);
|
SDRdaemonSinkOutput::MsgConfigureSDRdaemonSink* message = SDRdaemonSinkOutput::MsgConfigureSDRdaemonSink::create(m_settings);
|
||||||
m_deviceSampleSink->getInputMessageQueue()->push(message);
|
m_deviceSampleSink->getInputMessageQueue()->push(message);
|
||||||
m_updateTimer.stop();
|
m_updateTimer.stop();
|
||||||
@ -401,14 +406,14 @@ void SDRdaemonSinkGui::on_nbFECBlocks_valueChanged(int value)
|
|||||||
sendSettings();
|
sendSettings();
|
||||||
}
|
}
|
||||||
|
|
||||||
void SDRdaemonSinkGui::on_address_textEdited(const QString& arg1)
|
void SDRdaemonSinkGui::on_address_returnPressed()
|
||||||
{
|
{
|
||||||
m_settings.m_address = ui->address->text();
|
m_settings.m_address = ui->address->text();
|
||||||
sendControl();
|
sendControl();
|
||||||
sendSettings();
|
sendSettings();
|
||||||
}
|
}
|
||||||
|
|
||||||
void SDRdaemonSinkGui::on_dataPort_textEdited(const QString& arg1)
|
void SDRdaemonSinkGui::on_dataPort_returnPressed()
|
||||||
{
|
{
|
||||||
bool dataOk;
|
bool dataOk;
|
||||||
int udpDataPort = ui->dataPort->text().toInt(&dataOk);
|
int udpDataPort = ui->dataPort->text().toInt(&dataOk);
|
||||||
@ -425,10 +430,10 @@ void SDRdaemonSinkGui::on_dataPort_textEdited(const QString& arg1)
|
|||||||
sendSettings();
|
sendSettings();
|
||||||
}
|
}
|
||||||
|
|
||||||
void SDRdaemonSinkGui::on_controlPort_textEdited(const QString& arg1)
|
void SDRdaemonSinkGui::on_controlPort_returnPressed()
|
||||||
{
|
{
|
||||||
bool ctlOk;
|
bool ctlOk;
|
||||||
int udpCtlPort = ui->dataPort->text().toInt(&ctlOk);
|
int udpCtlPort = ui->controlPort->text().toInt(&ctlOk);
|
||||||
|
|
||||||
if((!ctlOk) || (udpCtlPort < 1024) || (udpCtlPort > 65535))
|
if((!ctlOk) || (udpCtlPort < 1024) || (udpCtlPort > 65535))
|
||||||
{
|
{
|
||||||
@ -442,7 +447,7 @@ void SDRdaemonSinkGui::on_controlPort_textEdited(const QString& arg1)
|
|||||||
sendControl();
|
sendControl();
|
||||||
}
|
}
|
||||||
|
|
||||||
void SDRdaemonSinkGui::on_specificParms_textEdited(const QString& arg1)
|
void SDRdaemonSinkGui::on_specificParms_returnPressed()
|
||||||
{
|
{
|
||||||
m_settings.m_specificParameters = ui->specificParms->text();
|
m_settings.m_specificParameters = ui->specificParms->text();
|
||||||
sendControl();
|
sendControl();
|
||||||
@ -464,7 +469,7 @@ void SDRdaemonSinkGui::on_startStop_toggled(bool checked)
|
|||||||
{
|
{
|
||||||
if (!m_deviceAPI->startGeneration())
|
if (!m_deviceAPI->startGeneration())
|
||||||
{
|
{
|
||||||
qDebug("FileSinkGui::on_startStop_toggled: device start failed");
|
qDebug("SDRdaemonSinkGui::on_startStop_toggled: device start failed");
|
||||||
}
|
}
|
||||||
|
|
||||||
DSPEngine::instance()->startAudioInput();
|
DSPEngine::instance()->startAudioInput();
|
||||||
|
@ -83,10 +83,10 @@ private slots:
|
|||||||
void on_interp_currentIndexChanged(int index);
|
void on_interp_currentIndexChanged(int index);
|
||||||
void on_txDelay_valueChanged(int value);
|
void on_txDelay_valueChanged(int value);
|
||||||
void on_nbFECBlocks_valueChanged(int value);
|
void on_nbFECBlocks_valueChanged(int value);
|
||||||
void on_address_textEdited(const QString& arg1);
|
void on_address_returnPressed();
|
||||||
void on_dataPort_textEdited(const QString& arg1);
|
void on_dataPort_returnPressed();
|
||||||
void on_controlPort_textEdited(const QString& arg1);
|
void on_controlPort_returnPressed();
|
||||||
void on_specificParms_textEdited(const QString& arg1);
|
void on_specificParms_returnPressed();
|
||||||
void on_applyButton_clicked(bool checked);
|
void on_applyButton_clicked(bool checked);
|
||||||
void on_sendButton_clicked(bool checked);
|
void on_sendButton_clicked(bool checked);
|
||||||
void on_startStop_toggled(bool checked);
|
void on_startStop_toggled(bool checked);
|
||||||
|
@ -435,9 +435,12 @@
|
|||||||
<property name="toolTip">
|
<property name="toolTip">
|
||||||
<string>Remote data connection IP address</string>
|
<string>Remote data connection IP address</string>
|
||||||
</property>
|
</property>
|
||||||
<property name="text">
|
<property name="inputMask">
|
||||||
<string>000.000.000.000</string>
|
<string>000.000.000.000</string>
|
||||||
</property>
|
</property>
|
||||||
|
<property name="text">
|
||||||
|
<string>0...</string>
|
||||||
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item>
|
<item>
|
||||||
@ -452,8 +455,11 @@
|
|||||||
<property name="toolTip">
|
<property name="toolTip">
|
||||||
<string>Remote data connection port</string>
|
<string>Remote data connection port</string>
|
||||||
</property>
|
</property>
|
||||||
|
<property name="inputMask">
|
||||||
|
<string>00000</string>
|
||||||
|
</property>
|
||||||
<property name="text">
|
<property name="text">
|
||||||
<string>0000</string>
|
<string>0</string>
|
||||||
</property>
|
</property>
|
||||||
<property name="alignment">
|
<property name="alignment">
|
||||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||||
@ -472,9 +478,12 @@
|
|||||||
<property name="toolTip">
|
<property name="toolTip">
|
||||||
<string>Remote control port</string>
|
<string>Remote control port</string>
|
||||||
</property>
|
</property>
|
||||||
<property name="text">
|
<property name="inputMask">
|
||||||
<string>00000</string>
|
<string>00000</string>
|
||||||
</property>
|
</property>
|
||||||
|
<property name="text">
|
||||||
|
<string>0</string>
|
||||||
|
</property>
|
||||||
<property name="alignment">
|
<property name="alignment">
|
||||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||||
</property>
|
</property>
|
||||||
|
@ -109,7 +109,7 @@ bool SDRdaemonSinkOutput::handleMessage(const Message& message)
|
|||||||
{
|
{
|
||||||
if (MsgConfigureSDRdaemonSink::match(message))
|
if (MsgConfigureSDRdaemonSink::match(message))
|
||||||
{
|
{
|
||||||
qDebug() << "FileSinkOutput::handleMessage: MsgConfigureFileSink";
|
qDebug() << "SDRdaemonSinkOutput::handleMessage: MsgConfigureFileSink";
|
||||||
MsgConfigureSDRdaemonSink& conf = (MsgConfigureSDRdaemonSink&) message;
|
MsgConfigureSDRdaemonSink& conf = (MsgConfigureSDRdaemonSink&) message;
|
||||||
applySettings(conf.getSettings(), false);
|
applySettings(conf.getSettings(), false);
|
||||||
return true;
|
return true;
|
||||||
@ -219,7 +219,7 @@ void SDRdaemonSinkOutput::applySettings(const SDRdaemonSinkSettings& settings, b
|
|||||||
|
|
||||||
mutexLocker.unlock();
|
mutexLocker.unlock();
|
||||||
|
|
||||||
qDebug("FileSinkOutput::applySettings: %s m_centerFrequency: %llu m_sampleRate: %llu m_log2Interp: %d m_txDelay: %d m_nbFECBlocks: %d",
|
qDebug("SDRdaemonSinkOutput::applySettings: %s m_centerFrequency: %llu m_sampleRate: %llu m_log2Interp: %d m_txDelay: %d m_nbFECBlocks: %d",
|
||||||
forwardChange ? "forward change" : "",
|
forwardChange ? "forward change" : "",
|
||||||
m_settings.m_centerFrequency,
|
m_settings.m_centerFrequency,
|
||||||
m_settings.m_sampleRate,
|
m_settings.m_sampleRate,
|
||||||
|
@ -31,7 +31,7 @@ void SDRdaemonSinkSettings::resetToDefaults()
|
|||||||
m_nbFECBlocks = 0;
|
m_nbFECBlocks = 0;
|
||||||
m_address = "127.0.0.1";
|
m_address = "127.0.0.1";
|
||||||
m_dataPort = 9090;
|
m_dataPort = 9090;
|
||||||
m_controlPort = 9090;
|
m_controlPort = 9091;
|
||||||
m_specificParameters = "";
|
m_specificParameters = "";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user