mirror of
https://github.com/f4exb/sdrangel.git
synced 2024-11-23 08:28:36 -05:00
commit
6d7eb44641
@ -293,23 +293,26 @@ set(CMAKE_AUTORCC TRUE)
|
|||||||
set(CMAKE_INCLUDE_CURRENT_DIR ON)
|
set(CMAKE_INCLUDE_CURRENT_DIR ON)
|
||||||
|
|
||||||
# Qt requirements
|
# Qt requirements
|
||||||
set(_required_qt_version "5.6.0")
|
find_package(Qt5
|
||||||
find_package(Qt5 COMPONENTS Core REQUIRED)
|
REQUIRED COMPONENTS
|
||||||
find_package(Qt5 COMPONENTS Widgets REQUIRED)
|
Core
|
||||||
find_package(Qt5 COMPONENTS WebSockets REQUIRED)
|
Widgets
|
||||||
find_package(Qt5 COMPONENTS Multimedia REQUIRED)
|
WebSockets
|
||||||
find_package(Qt5 COMPONENTS MultimediaWidgets REQUIRED)
|
Multimedia
|
||||||
find_package(Qt5 COMPONENTS SerialPort)
|
MultimediaWidgets
|
||||||
|
SerialPort)
|
||||||
|
|
||||||
# for the server we don't need OpenGL/Qt Quick components
|
# for the server we don't need OpenGL/Qt Quick components
|
||||||
if (BUILD_GUI)
|
if (BUILD_GUI)
|
||||||
find_package(OpenGL REQUIRED)
|
find_package(OpenGL REQUIRED)
|
||||||
find_package(Qt5 COMPONENTS OpenGL REQUIRED)
|
find_package(Qt5
|
||||||
find_package(Qt5 COMPONENTS Quick)
|
REQUIRED COMPONENTS
|
||||||
find_package(Qt5 COMPONENTS QuickWidgets)
|
OpenGL
|
||||||
find_package(Qt5 COMPONENTS Positioning)
|
Quick
|
||||||
find_package(Qt5 COMPONENTS Location)
|
QuickWidgets
|
||||||
find_package(Qt5 COMPONENTS Charts)
|
Positioning
|
||||||
|
Location
|
||||||
|
Charts)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# other requirements
|
# other requirements
|
||||||
|
25
external/CMakeLists.txt
vendored
25
external/CMakeLists.txt
vendored
@ -397,7 +397,16 @@ if (LINUX)
|
|||||||
GIT_REPOSITORY https://github.com/myriadrf/LimeSuite.git
|
GIT_REPOSITORY https://github.com/myriadrf/LimeSuite.git
|
||||||
GIT_TAG ${LIMESUITE_TAG}
|
GIT_TAG ${LIMESUITE_TAG}
|
||||||
PREFIX "${EXTERNAL_BUILD_LIBRARIES}/limesuite"
|
PREFIX "${EXTERNAL_BUILD_LIBRARIES}/limesuite"
|
||||||
CMAKE_ARGS ${COMMON_CMAKE_ARGS} -DLIME_SUITE_EXTVER=release -DENABLE_GUI=OFF -DENABLE_NOVENARF7=OFF -DENABLE_SOAPY_LMS7=OFF -DENABLE_OCTAVE=OFF -DENABLE_SIMD_FLAGS=SSE3
|
CMAKE_ARGS ${COMMON_CMAKE_ARGS}
|
||||||
|
-DLIME_SUITE_EXTVER=release
|
||||||
|
-DENABLE_GUI=OFF
|
||||||
|
-DENABLE_NOVENARF7=OFF
|
||||||
|
-DENABLE_SOAPY_LMS7=OFF
|
||||||
|
-DENABLE_OCTAVE=OFF
|
||||||
|
-DENABLE_QUICKTEST=OFF
|
||||||
|
-DENABLE_EXAMPLES=OFF
|
||||||
|
-DENABLE_LIME_UTIL=OFF
|
||||||
|
-DENABLE_SIMD_FLAGS=SSE3
|
||||||
BUILD_BYPRODUCTS "${LIMESUITE_LIBRARY}"
|
BUILD_BYPRODUCTS "${LIMESUITE_LIBRARY}"
|
||||||
INSTALL_COMMAND ""
|
INSTALL_COMMAND ""
|
||||||
TEST_COMMAND ""
|
TEST_COMMAND ""
|
||||||
@ -438,7 +447,11 @@ if (LINUX)
|
|||||||
GIT_REPOSITORY https://github.com/analogdevicesinc/libiio.git
|
GIT_REPOSITORY https://github.com/analogdevicesinc/libiio.git
|
||||||
GIT_TAG ${LIBIIO_TAG}
|
GIT_TAG ${LIBIIO_TAG}
|
||||||
PREFIX "${EXTERNAL_BUILD_LIBRARIES}/libiio"
|
PREFIX "${EXTERNAL_BUILD_LIBRARIES}/libiio"
|
||||||
CMAKE_ARGS ${COMMON_CMAKE_ARGS} -DOSX_PACKAGE=OFF -DWITH_DOC=OFF
|
CMAKE_ARGS ${COMMON_CMAKE_ARGS}
|
||||||
|
-DOSX_PACKAGE=OFF
|
||||||
|
-DWITH_DOC=OFF
|
||||||
|
-DWITH_MATLAB_BINDINGS_API=OFF
|
||||||
|
-DWITH_TESTS=OFF
|
||||||
BUILD_BYPRODUCTS "${LIBIIO_LIBRARIES}"
|
BUILD_BYPRODUCTS "${LIBIIO_LIBRARIES}"
|
||||||
INSTALL_COMMAND ""
|
INSTALL_COMMAND ""
|
||||||
TEST_COMMAND ""
|
TEST_COMMAND ""
|
||||||
@ -575,6 +588,7 @@ if (WIN32 OR APPLE)
|
|||||||
-DENABLE_OCTAVE=OFF
|
-DENABLE_OCTAVE=OFF
|
||||||
-DENABLE_QUICKTEST=OFF
|
-DENABLE_QUICKTEST=OFF
|
||||||
-DENABLE_EXAMPLES=OFF
|
-DENABLE_EXAMPLES=OFF
|
||||||
|
-DENABLE_LIME_UTIL=OFF
|
||||||
-DENABLE_SIMD_FLAGS=SSE3
|
-DENABLE_SIMD_FLAGS=SSE3
|
||||||
-DFX3_SDK_PATH=${FX3SDK_DIR}
|
-DFX3_SDK_PATH=${FX3SDK_DIR}
|
||||||
BUILD_BYPRODUCTS "${LIMESUITE_LIBRARY}"
|
BUILD_BYPRODUCTS "${LIMESUITE_LIBRARY}"
|
||||||
@ -707,9 +721,6 @@ if (WIN32 OR APPLE)
|
|||||||
endif (ENABLE_AIRSPYHF)
|
endif (ENABLE_AIRSPYHF)
|
||||||
|
|
||||||
if (ENABLE_HACKRF)
|
if (ENABLE_HACKRF)
|
||||||
# SOURCE_SUBDIR require cmake 3.7.0
|
|
||||||
# otherwise use CONFIGURE_COMMAND
|
|
||||||
cmake_minimum_required(VERSION 3.7.0)
|
|
||||||
# needs pkgconfig, libusb, fftw, pthreads
|
# needs pkgconfig, libusb, fftw, pthreads
|
||||||
if (WIN32)
|
if (WIN32)
|
||||||
set(HACKRF_LIBUSB_INCLUDE_DIR ${LIBUSB_INCLUDE_DIR}/libusb-1.0)
|
set(HACKRF_LIBUSB_INCLUDE_DIR ${LIBUSB_INCLUDE_DIR}/libusb-1.0)
|
||||||
@ -811,8 +822,10 @@ if (WIN32 OR APPLE)
|
|||||||
-DLIBXML2_LIBRARIES=${LIBXML2_LIBRARIES}
|
-DLIBXML2_LIBRARIES=${LIBXML2_LIBRARIES}
|
||||||
-DCSHARP_BINDINGS=OFF
|
-DCSHARP_BINDINGS=OFF
|
||||||
-DPYTHON_BINDINGS=OFF
|
-DPYTHON_BINDINGS=OFF
|
||||||
-DWITH_MATLAB_BINDINGS_API=OFF
|
|
||||||
-DOSX_PACKAGE=OFF
|
-DOSX_PACKAGE=OFF
|
||||||
|
-DWITH_DOC=OFF
|
||||||
|
-DWITH_MATLAB_BINDINGS_API=OFF
|
||||||
|
-DWITH_TESTS=OFF
|
||||||
BUILD_BYPRODUCTS "${LIBIIO_LIBRARIES}"
|
BUILD_BYPRODUCTS "${LIBIIO_LIBRARIES}"
|
||||||
INSTALL_COMMAND ""
|
INSTALL_COMMAND ""
|
||||||
TEST_COMMAND ""
|
TEST_COMMAND ""
|
||||||
|
@ -583,6 +583,19 @@
|
|||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
|
<item>
|
||||||
|
<spacer name="horizontalSpacer_2">
|
||||||
|
<property name="orientation">
|
||||||
|
<enum>Qt::Horizontal</enum>
|
||||||
|
</property>
|
||||||
|
<property name="sizeHint" stdset="0">
|
||||||
|
<size>
|
||||||
|
<width>40</width>
|
||||||
|
<height>20</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
</spacer>
|
||||||
|
</item>
|
||||||
<item>
|
<item>
|
||||||
<widget class="QLabel" name="volumeLabel">
|
<widget class="QLabel" name="volumeLabel">
|
||||||
<property name="text">
|
<property name="text">
|
||||||
|
@ -34,7 +34,7 @@ class QNetworkReply;
|
|||||||
class DeviceAPI;
|
class DeviceAPI;
|
||||||
class LimeSDRMIThread;
|
class LimeSDRMIThread;
|
||||||
class LimeSDRMOThread;
|
class LimeSDRMOThread;
|
||||||
class DeviceLimeSDRParams;
|
struct DeviceLimeSDRParams;
|
||||||
|
|
||||||
class LimeSDRMIMO : public DeviceSampleMIMO {
|
class LimeSDRMIMO : public DeviceSampleMIMO {
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
|
@ -33,7 +33,7 @@ class QNetworkReply;
|
|||||||
class DeviceAPI;
|
class DeviceAPI;
|
||||||
class XTRXMIThread;
|
class XTRXMIThread;
|
||||||
class XTRXMOThread;
|
class XTRXMOThread;
|
||||||
class DeviceLimeSDRParams;
|
struct DeviceLimeSDRParams;
|
||||||
|
|
||||||
#endif // PLUGINS_SAMPLEMIMO_XTRXMIMO_XTRXMIMO_H_
|
#endif // PLUGINS_SAMPLEMIMO_XTRXMIMO_XTRXMIMO_H_
|
||||||
|
|
||||||
|
@ -52,7 +52,7 @@ RTLSDRGui::RTLSDRGui(DeviceUISet *deviceUISet, QWidget* parent) :
|
|||||||
ui->sampleRate->setColorMapper(ColorMapper(ColorMapper::GrayGreenYellow));
|
ui->sampleRate->setColorMapper(ColorMapper(ColorMapper::GrayGreenYellow));
|
||||||
|
|
||||||
ui->rfBW->setColorMapper(ColorMapper(ColorMapper::GrayYellow));
|
ui->rfBW->setColorMapper(ColorMapper(ColorMapper::GrayYellow));
|
||||||
ui->rfBW->setValueRange(4, 350, 8000);
|
ui->rfBW->setValueRange(4, 0, 10000);
|
||||||
|
|
||||||
connect(&m_updateTimer, SIGNAL(timeout()), this, SLOT(updateHardware()));
|
connect(&m_updateTimer, SIGNAL(timeout()), this, SLOT(updateHardware()));
|
||||||
connect(&m_statusTimer, SIGNAL(timeout()), this, SLOT(updateStatus()));
|
connect(&m_statusTimer, SIGNAL(timeout()), this, SLOT(updateStatus()));
|
||||||
|
@ -100,11 +100,13 @@ void SoapySDRInputThread::run()
|
|||||||
|
|
||||||
qDebug("SoapySDRInputThread::run: format: %s fullScale: %f", format.c_str(), fullScale);
|
qDebug("SoapySDRInputThread::run: format: %s fullScale: %f", format.c_str(), fullScale);
|
||||||
|
|
||||||
if ((format == "CS8") && (fullScale == 128.0)) { // 8 bit signed - native
|
// Older version of soapy and it's plugins were incorrectly reporting
|
||||||
|
// (1 << n) instead (1 << n) - 1. Accept both values.
|
||||||
|
if ((format == "CS8") && (fullScale == 127.0 || fullScale == 128.0)) { // 8 bit signed - native
|
||||||
m_decimatorType = Decimator8;
|
m_decimatorType = Decimator8;
|
||||||
} else if ((format == "CS16") && (fullScale == 2048.0)) { // 12 bit signed - native
|
} else if ((format == "CS16") && (fullScale == 2047.0 || fullScale == 2048.0)) { // 12 bit signed - native
|
||||||
m_decimatorType = Decimator12;
|
m_decimatorType = Decimator12;
|
||||||
} else if ((format == "CS16") && (fullScale == 32768.0)) { // 16 bit signed - native
|
} else if ((format == "CS16") && (fullScale == 32767.0 || fullScale == 32768.0 )) { // 16 bit signed - native
|
||||||
m_decimatorType = Decimator16;
|
m_decimatorType = Decimator16;
|
||||||
} else { // for other types make a conversion to float
|
} else { // for other types make a conversion to float
|
||||||
m_decimatorType = DecimatorFloat;
|
m_decimatorType = DecimatorFloat;
|
||||||
@ -160,24 +162,24 @@ void SoapySDRInputThread::run()
|
|||||||
{
|
{
|
||||||
if (m_nbChannels > 1)
|
if (m_nbChannels > 1)
|
||||||
{
|
{
|
||||||
callbackMIIQ(buffs, numElems*2); // size given in number of I or Q samples (2 items per sample)
|
callbackMIIQ(buffs, ret*2); // size given in number of I or Q samples (2 items per sample)
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
switch (m_decimatorType)
|
switch (m_decimatorType)
|
||||||
{
|
{
|
||||||
case Decimator8:
|
case Decimator8:
|
||||||
callbackSI8IQ((const qint8*) buffs[0], numElems*2);
|
callbackSI8IQ((const qint8*) buffs[0], ret*2);
|
||||||
break;
|
break;
|
||||||
case Decimator12:
|
case Decimator12:
|
||||||
callbackSI12IQ((const qint16*) buffs[0], numElems*2);
|
callbackSI12IQ((const qint16*) buffs[0], ret*2);
|
||||||
break;
|
break;
|
||||||
case Decimator16:
|
case Decimator16:
|
||||||
callbackSI16IQ((const qint16*) buffs[0], numElems*2);
|
callbackSI16IQ((const qint16*) buffs[0], ret*2);
|
||||||
break;
|
break;
|
||||||
case DecimatorFloat:
|
case DecimatorFloat:
|
||||||
default:
|
default:
|
||||||
callbackSIFIQ((const float*) buffs[0], numElems*2);
|
callbackSIFIQ((const float*) buffs[0], ret*2);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -185,24 +187,24 @@ void SoapySDRInputThread::run()
|
|||||||
{
|
{
|
||||||
if (m_nbChannels > 1)
|
if (m_nbChannels > 1)
|
||||||
{
|
{
|
||||||
callbackMIQI(buffs, numElems*2); // size given in number of I or Q samples (2 items per sample)
|
callbackMIQI(buffs, ret*2); // size given in number of I or Q samples (2 items per sample)
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
switch (m_decimatorType)
|
switch (m_decimatorType)
|
||||||
{
|
{
|
||||||
case Decimator8:
|
case Decimator8:
|
||||||
callbackSI8QI((const qint8*) buffs[0], numElems*2);
|
callbackSI8QI((const qint8*) buffs[0], ret*2);
|
||||||
break;
|
break;
|
||||||
case Decimator12:
|
case Decimator12:
|
||||||
callbackSI12QI((const qint16*) buffs[0], numElems*2);
|
callbackSI12QI((const qint16*) buffs[0], ret*2);
|
||||||
break;
|
break;
|
||||||
case Decimator16:
|
case Decimator16:
|
||||||
callbackSI16QI((const qint16*) buffs[0], numElems*2);
|
callbackSI16QI((const qint16*) buffs[0], ret*2);
|
||||||
break;
|
break;
|
||||||
case DecimatorFloat:
|
case DecimatorFloat:
|
||||||
default:
|
default:
|
||||||
callbackSIFQI((const float*) buffs[0], numElems*2);
|
callbackSIFQI((const float*) buffs[0], ret*2);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user