diff --git a/debian/changelog b/debian/changelog index 7ab876500..ad9c1fea7 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,6 +1,10 @@ sdrangel (3.5.1-1) unstable; urgency=medium + * LimeSDR input: added individual gains control and ADC rate display + * LimeSDR output: added DAC rate display + * LimeSDR all: added board temperature display * Added pulseaudio and libqt5multimedia5-plugins in the Debian dependencies + * Updates to build on aarch64 in openSUSE -- Edouard Griffiths, F4EXB Sat, 01 Jul 2017 19:14:18 +0200 diff --git a/doc/img/LimeSDRInput_plugin.png b/doc/img/LimeSDRInput_plugin.png index b0d28bd9f..73ddef0fe 100644 Binary files a/doc/img/LimeSDRInput_plugin.png and b/doc/img/LimeSDRInput_plugin.png differ diff --git a/doc/img/LimeSDRInput_plugin_1.png b/doc/img/LimeSDRInput_plugin_1.png new file mode 100644 index 000000000..54fcf716a Binary files /dev/null and b/doc/img/LimeSDRInput_plugin_1.png differ diff --git a/plugins/samplesink/limesdroutput/readme.md b/plugins/samplesink/limesdroutput/readme.md index ef28ba422..614104bce 100644 --- a/plugins/samplesink/limesdroutput/readme.md +++ b/plugins/samplesink/limesdroutput/readme.md @@ -87,9 +87,9 @@ Thus the actual sample rate of the DAC is the stream sample rate (10) multiplied The I/Q stream from the baseband is upsampled by a power of two by software inside the plugin before being sent to the LimeSDR device. Possible values are increasing powers of two: 1 (no interpolation), 2, 4, 8, 16, 32. -

10: Device stream sample rate

+

10: Host to device stream sample rate

-This is the LMS7002M device to/from host stream sample rate in S/s. +This is the LMS7002M device to/from host stream sample rate in S/s. It is the same for the Rx and Tx systems. Use the wheels to adjust the sample rate. Pressing shift simultanoeusly moves digit by 5 and pressing control moves it by 2. Left click on a digit sets the cursor position at this digit. Right click on a digit sets all digits on the right to zero. This effectively floors value at the digit position. Wheels are moved with the mousewheel while pointing at the wheel or by selecting the wheel with the left mouse click and using the keyboard arroews. diff --git a/plugins/samplesource/limesdrinput/limesdrinputgui.cpp b/plugins/samplesource/limesdrinput/limesdrinputgui.cpp index bda27f04b..4721c9fc4 100644 --- a/plugins/samplesource/limesdrinput/limesdrinputgui.cpp +++ b/plugins/samplesource/limesdrinput/limesdrinputgui.cpp @@ -244,6 +244,17 @@ void LimeSDRInputGUI::handleMessagesToGUI() } } +void LimeSDRInputGUI::updateADCRate() +{ + uint32_t adcRate = m_settings.m_devSampleRate * (1<adcRateLabel->setText(tr("%1k").arg(QString::number(adcRate / 1000.0f, 'g', 5))); + } else { + ui->adcRateLabel->setText(tr("%1M").arg(QString::number(adcRate / 1000000.0f, 'g', 5))); + } +} + void LimeSDRInputGUI::updateSampleRateAndFrequency() { m_deviceAPI->getSpectrum()->setSampleRate(m_sampleRate); @@ -262,6 +273,8 @@ void LimeSDRInputGUI::displaySettings() ui->hwDecim->setCurrentIndex(m_settings.m_log2HardDecim); ui->swDecim->setCurrentIndex(m_settings.m_log2SoftDecim); + updateADCRate(); + ui->lpf->setValue(m_settings.m_lpfBW / 1000); ui->lpFIREnable->setChecked(m_settings.m_lpfFIREnable); @@ -456,6 +469,7 @@ void LimeSDRInputGUI::on_iqImbalance_toggled(bool checked) void LimeSDRInputGUI::on_sampleRate_changed(quint64 value) { m_settings.m_devSampleRate = value; + updateADCRate(); setNCODisplay(); sendSettings();} @@ -464,6 +478,7 @@ void LimeSDRInputGUI::on_hwDecim_currentIndexChanged(int index) if ((index <0) || (index > 5)) return; m_settings.m_log2HardDecim = index; + updateADCRate(); setNCODisplay(); sendSettings(); } diff --git a/plugins/samplesource/limesdrinput/limesdrinputgui.h b/plugins/samplesource/limesdrinput/limesdrinputgui.h index 558482211..d1c1c588d 100644 --- a/plugins/samplesource/limesdrinput/limesdrinputgui.h +++ b/plugins/samplesource/limesdrinput/limesdrinputgui.h @@ -68,6 +68,7 @@ private: void setNCODisplay(); void sendSettings(); void updateSampleRateAndFrequency(); + void updateADCRate(); void blockApplySettings(bool block); private slots: diff --git a/plugins/samplesource/limesdrinput/limesdrinputgui.ui b/plugins/samplesource/limesdrinput/limesdrinputgui.ui index 044f578d6..82c290313 100644 --- a/plugins/samplesource/limesdrinput/limesdrinputgui.ui +++ b/plugins/samplesource/limesdrinput/limesdrinputgui.ui @@ -53,9 +53,9 @@ 4 - + - + @@ -89,11 +89,17 @@ - + - + + + + 54 + 0 + + - I/Q sample rate kS/s + ADC rate before hardware downsampling (k or MS/s) 00000k @@ -154,43 +160,67 @@ - - - kHz + + + 6 - - - - - - Qt::Horizontal + + 6 - - - 0 - 0 - - - - - - - - - 20 - 0 - - - - Channel number - - - #0 - - - Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter - - + + + + + + kHz + + + + + + + + 20 + 0 + + + + Channel number + + + #0 + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + + + + + + + + + + 54 + 0 + + + + Baseband I/Q sample rate kS/s + + + 00000k + + + Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter + + + + + + diff --git a/plugins/samplesource/limesdrinput/readme.md b/plugins/samplesource/limesdrinput/readme.md index e97ce1e85..51ca3b0f0 100644 --- a/plugins/samplesource/limesdrinput/readme.md +++ b/plugins/samplesource/limesdrinput/readme.md @@ -35,7 +35,7 @@ Then add the following defines on `cmake` command line:

1: Common stream parameters

-![SDR Daemon source input stream GUI](../../../doc/img/SDRdaemonSource_plugin_01.png) +![SDR Daemon source input stream GUI](../../../doc/img/LimeSDRInput_plugin_1.png)

1.1: Frequency

@@ -53,11 +53,15 @@ Device start / stop button. Record baseband I/Q stream toggle button -

1.4: Stream sample rate

+

1.4: ADC sample rate

-Baseband I/Q sample rate in kS/s. This is the device sample rate (4) divided by the decimation factor (6). +This is the sample rate at which the ADC runs in kS/s (k) or MS/s (M) before hardware decimation (8). Thus this is the device to host sample rate (10) multiplied by the hardware decimation factor (8). -

2: Channel number

+

1.5: Stream sample rate

+ +Baseband I/Q sample rate in kS/s. This is the device to host sample rate (10) divided by the software decimation factor (9). + +

1.6: Channel number

LimeSDR is a 2x2 MIMO device so it has two receiving channels. This shows the corresponding Rx channel index (0 or 1). @@ -94,9 +98,9 @@ Thus the actual sample rate of the ADC is the stream sample rate (10) multiplied The I/Q stream from the LimeSDR is doensampled by a power of two by software inside the plugin before being sent to the passband. Possible values are increasing powers of two: 1 (no decimation), 2, 4, 8, 16, 32. -

10: Device stream sample rate

+

10: Device to host stream sample rate

-This is the LMS7002M device to/from host stream sample rate in S/s. +This is the LMS7002M device to/from host stream sample rate in S/s. It is the same for the Rx and Tx systems. Use the wheels to adjust the sample rate. Pressing shift simultanoeusly moves digit by 5 and pressing control moves it by 2. Left click on a digit sets the cursor position at this digit. Right click on a digit sets all digits on the right to zero. This effectively floors value at the digit position. Wheels are moved with the mousewheel while pointing at the wheel or by selecting the wheel with the left mouse click and using the keyboard arroews.