mirror of
https://github.com/f4exb/sdrangel.git
synced 2024-11-25 01:18:38 -05:00
LimeSDR input: added DAC sample rate display
This commit is contained in:
parent
77e11004b0
commit
62b6281370
4
debian/changelog
vendored
4
debian/changelog
vendored
@ -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 <f4exb06@gmail.com> Sat, 01 Jul 2017 19:14:18 +0200
|
||||
|
||||
|
Binary file not shown.
Before Width: | Height: | Size: 36 KiB After Width: | Height: | Size: 36 KiB |
BIN
doc/img/LimeSDRInput_plugin_1.png
Normal file
BIN
doc/img/LimeSDRInput_plugin_1.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 9.7 KiB |
@ -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.
|
||||
|
||||
<h3>10: Device stream sample rate</h3>
|
||||
<h3>10: Host to device stream sample rate</h3>
|
||||
|
||||
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.
|
||||
|
||||
|
@ -244,6 +244,17 @@ void LimeSDRInputGUI::handleMessagesToGUI()
|
||||
}
|
||||
}
|
||||
|
||||
void LimeSDRInputGUI::updateADCRate()
|
||||
{
|
||||
uint32_t adcRate = m_settings.m_devSampleRate * (1<<m_settings.m_log2HardDecim);
|
||||
|
||||
if (adcRate < 100000000) {
|
||||
ui->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();
|
||||
}
|
||||
|
@ -68,6 +68,7 @@ private:
|
||||
void setNCODisplay();
|
||||
void sendSettings();
|
||||
void updateSampleRateAndFrequency();
|
||||
void updateADCRate();
|
||||
void blockApplySettings(bool block);
|
||||
|
||||
private slots:
|
||||
|
@ -53,9 +53,9 @@
|
||||
<number>4</number>
|
||||
</property>
|
||||
<item>
|
||||
<layout class="QVBoxLayout" name="deviceUILayout">
|
||||
<layout class="QVBoxLayout" name="freqLeftLayout">
|
||||
<item>
|
||||
<layout class="QHBoxLayout" name="deviceButtonsLayout">
|
||||
<layout class="QHBoxLayout" name="freqLeftTopLayout">
|
||||
<item>
|
||||
<widget class="ButtonSwitch" name="startStop">
|
||||
<property name="toolTip">
|
||||
@ -89,11 +89,17 @@
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<layout class="QHBoxLayout" name="deviceRateLayout">
|
||||
<layout class="QHBoxLayout" name="freqLeftBotLayout">
|
||||
<item>
|
||||
<widget class="QLabel" name="deviceRateLabel">
|
||||
<widget class="QLabel" name="adcRateLabel">
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>54</width>
|
||||
<height>0</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>I/Q sample rate kS/s</string>
|
||||
<string>ADC rate before hardware downsampling (k or MS/s)</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>00000k</string>
|
||||
@ -154,43 +160,67 @@
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QLabel" name="freqUnits">
|
||||
<property name="text">
|
||||
<string> kHz</string>
|
||||
<layout class="QVBoxLayout" name="freqRightLayout">
|
||||
<property name="leftMargin">
|
||||
<number>6</number>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<spacer name="freqRightlSpacer">
|
||||
<property name="orientation">
|
||||
<enum>Qt::Horizontal</enum>
|
||||
<property name="rightMargin">
|
||||
<number>6</number>
|
||||
</property>
|
||||
<property name="sizeHint" stdset="0">
|
||||
<size>
|
||||
<width>0</width>
|
||||
<height>0</height>
|
||||
</size>
|
||||
</property>
|
||||
</spacer>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QLabel" name="channelNumberText">
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>20</width>
|
||||
<height>0</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Channel number</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>#0</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
</property>
|
||||
</widget>
|
||||
<item>
|
||||
<layout class="QHBoxLayout" name="freqRightTopLayout">
|
||||
<item>
|
||||
<widget class="QLabel" name="freqUnits">
|
||||
<property name="text">
|
||||
<string> kHz</string>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
<item>
|
||||
<widget class="QLabel" name="channelNumberText">
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>20</width>
|
||||
<height>0</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Channel number</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>#0</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
<item>
|
||||
<layout class="QHBoxLayout" name="freqRightBotLayout">
|
||||
<item>
|
||||
<widget class="QLabel" name="deviceRateLabel">
|
||||
<property name="minimumSize">
|
||||
<size>
|
||||
<width>54</width>
|
||||
<height>0</height>
|
||||
</size>
|
||||
</property>
|
||||
<property name="toolTip">
|
||||
<string>Baseband I/Q sample rate kS/s</string>
|
||||
</property>
|
||||
<property name="text">
|
||||
<string>00000k</string>
|
||||
</property>
|
||||
<property name="alignment">
|
||||
<set>Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter</set>
|
||||
</property>
|
||||
</widget>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
</layout>
|
||||
</item>
|
||||
|
@ -35,7 +35,7 @@ Then add the following defines on `cmake` command line:
|
||||
|
||||
<h3>1: Common stream parameters</h3>
|
||||
|
||||
![SDR Daemon source input stream GUI](../../../doc/img/SDRdaemonSource_plugin_01.png)
|
||||
![SDR Daemon source input stream GUI](../../../doc/img/LimeSDRInput_plugin_1.png)
|
||||
|
||||
<h4>1.1: Frequency</h4>
|
||||
|
||||
@ -53,11 +53,15 @@ Device start / stop button.
|
||||
|
||||
Record baseband I/Q stream toggle button
|
||||
|
||||
<h4>1.4: Stream sample rate</h4>
|
||||
<h4>1.4: ADC sample rate</h4>
|
||||
|
||||
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).
|
||||
|
||||
<h3>2: Channel number</h3>
|
||||
<h4>1.5: Stream sample rate</h4>
|
||||
|
||||
Baseband I/Q sample rate in kS/s. This is the device to host sample rate (10) divided by the software decimation factor (9).
|
||||
|
||||
<h4>1.6: Channel number</h4>
|
||||
|
||||
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.
|
||||
|
||||
<h3>10: Device stream sample rate</h3>
|
||||
<h3>10: Device to host stream sample rate</h3>
|
||||
|
||||
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.
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user