From 50c39b90a1dfca8ee45ade3be8ca3c8173946fe3 Mon Sep 17 00:00:00 2001 From: f4exb Date: Fri, 4 Aug 2017 09:33:25 +0200 Subject: [PATCH] LimeSDR: clamp NCO lower limit to 0 --- plugins/samplesink/limesdroutput/limesdroutputgui.cpp | 3 ++- plugins/samplesink/limesdroutput/limesdroutputplugin.cpp | 2 +- plugins/samplesource/limesdrinput/limesdrinputgui.cpp | 5 ++++- plugins/samplesource/limesdrinput/limesdrinputplugin.cpp | 2 +- 4 files changed, 8 insertions(+), 4 deletions(-) diff --git a/plugins/samplesink/limesdroutput/limesdroutputgui.cpp b/plugins/samplesink/limesdroutput/limesdroutputgui.cpp index 50363c05d..5e11c16e6 100644 --- a/plugins/samplesink/limesdroutput/limesdroutputgui.cpp +++ b/plugins/samplesink/limesdroutput/limesdroutputgui.cpp @@ -287,8 +287,9 @@ void LimeSDROutputGUI::displaySettings() void LimeSDROutputGUI::setNCODisplay() { int ncoHalfRange = (m_settings.m_devSampleRate * (1<<(m_settings.m_log2HardInterp)))/2; + int lowBoundary = std::max(0, (int) m_settings.m_centerFrequency - ncoHalfRange); ui->ncoFrequency->setValueRange(7, - (m_settings.m_centerFrequency - ncoHalfRange)/1000, + lowBoundary/1000, (m_settings.m_centerFrequency + ncoHalfRange)/1000); // frequency dial is in kHz ui->ncoFrequency->setValue((m_settings.m_centerFrequency + m_settings.m_ncoFrequency)/1000); } diff --git a/plugins/samplesink/limesdroutput/limesdroutputplugin.cpp b/plugins/samplesink/limesdroutput/limesdroutputplugin.cpp index 409d85b19..6b44235c9 100644 --- a/plugins/samplesink/limesdroutput/limesdroutputplugin.cpp +++ b/plugins/samplesink/limesdroutput/limesdroutputplugin.cpp @@ -30,7 +30,7 @@ const PluginDescriptor LimeSDROutputPlugin::m_pluginDescriptor = { QString("LimeSDR Output"), - QString("3.5.0"), + QString("3.5.4"), QString("(c) Edouard Griffiths, F4EXB"), QString("https://github.com/f4exb/sdrangel"), true, diff --git a/plugins/samplesource/limesdrinput/limesdrinputgui.cpp b/plugins/samplesource/limesdrinput/limesdrinputgui.cpp index 4721c9fc4..586c424fa 100644 --- a/plugins/samplesource/limesdrinput/limesdrinputgui.cpp +++ b/plugins/samplesource/limesdrinput/limesdrinputgui.cpp @@ -19,6 +19,8 @@ #include #include +#include + #include "ui_limesdrinputgui.h" #include "gui/colormapper.h" #include "gui/glspectrum.h" @@ -313,8 +315,9 @@ void LimeSDRInputGUI::displaySettings() void LimeSDRInputGUI::setNCODisplay() { int ncoHalfRange = (m_settings.m_devSampleRate * (1<<(m_settings.m_log2HardDecim)))/2; + int lowBoundary = std::max(0, (int) m_settings.m_centerFrequency - ncoHalfRange); ui->ncoFrequency->setValueRange(7, - (m_settings.m_centerFrequency - ncoHalfRange)/1000, + lowBoundary/1000, (m_settings.m_centerFrequency + ncoHalfRange)/1000); // frequency dial is in kHz ui->ncoFrequency->setValue((m_settings.m_centerFrequency + m_settings.m_ncoFrequency)/1000); } diff --git a/plugins/samplesource/limesdrinput/limesdrinputplugin.cpp b/plugins/samplesource/limesdrinput/limesdrinputplugin.cpp index 27d5599a9..e35b6076c 100644 --- a/plugins/samplesource/limesdrinput/limesdrinputplugin.cpp +++ b/plugins/samplesource/limesdrinput/limesdrinputplugin.cpp @@ -31,7 +31,7 @@ const PluginDescriptor LimeSDRInputPlugin::m_pluginDescriptor = { QString("LimeSDR Input"), - QString("3.5.0"), + QString("3.5.4"), QString("(c) Edouard Griffiths, F4EXB"), QString("https://github.com/f4exb/sdrangel"), true,