1
0
mirror of https://github.com/f4exb/sdrangel.git synced 2024-11-25 09:18:54 -05:00

RTL-SDR: offset tuning support: REST API and version update

This commit is contained in:
f4exb 2018-11-26 13:31:51 +01:00
parent 772a150136
commit 5d0f9c7878
12 changed files with 55 additions and 8 deletions

View File

@ -35,7 +35,7 @@ static int runQtApplication(int argc, char* argv[], qtwebapp::LoggerWithFile *lo
*/ */
QCoreApplication::setOrganizationName("f4exb"); QCoreApplication::setOrganizationName("f4exb");
QCoreApplication::setApplicationName("SDRangel"); QCoreApplication::setApplicationName("SDRangel");
QCoreApplication::setApplicationVersion("4.3.0"); QCoreApplication::setApplicationVersion("4.3.1");
#if QT_VERSION >= 0x050600 #if QT_VERSION >= 0x050600
QApplication::setAttribute(Qt::AA_EnableHighDpiScaling); // DPI support QApplication::setAttribute(Qt::AA_EnableHighDpiScaling); // DPI support
QCoreApplication::setAttribute(Qt::AA_UseHighDpiPixmaps); //HiDPI pixmaps QCoreApplication::setAttribute(Qt::AA_UseHighDpiPixmaps); //HiDPI pixmaps

View File

@ -57,7 +57,7 @@ static int runQtApplication(int argc, char* argv[], qtwebapp::LoggerWithFile *lo
QCoreApplication::setOrganizationName("f4exb"); QCoreApplication::setOrganizationName("f4exb");
QCoreApplication::setApplicationName("SDRangelBench"); QCoreApplication::setApplicationName("SDRangelBench");
QCoreApplication::setApplicationVersion("4.3.0"); QCoreApplication::setApplicationVersion("4.3.1");
int catchSignals[] = {SIGQUIT, SIGINT, SIGTERM, SIGHUP}; int catchSignals[] = {SIGQUIT, SIGINT, SIGTERM, SIGHUP};
std::vector<int> vsig(catchSignals, catchSignals + sizeof(catchSignals) / sizeof(int)); std::vector<int> vsig(catchSignals, catchSignals + sizeof(catchSignals) / sizeof(int));

View File

@ -56,7 +56,7 @@ static int runQtApplication(int argc, char* argv[], qtwebapp::LoggerWithFile *lo
QCoreApplication::setOrganizationName("f4exb"); QCoreApplication::setOrganizationName("f4exb");
QCoreApplication::setApplicationName("SDRangelSrv"); QCoreApplication::setApplicationName("SDRangelSrv");
QCoreApplication::setApplicationVersion("4.3.0"); QCoreApplication::setApplicationVersion("4.3.1");
int catchSignals[] = {SIGQUIT, SIGINT, SIGTERM, SIGHUP}; int catchSignals[] = {SIGQUIT, SIGINT, SIGTERM, SIGHUP};
std::vector<int> vsig(catchSignals, catchSignals + sizeof(catchSignals) / sizeof(int)); std::vector<int> vsig(catchSignals, catchSignals + sizeof(catchSignals) / sizeof(int));

6
debian/changelog vendored
View File

@ -1,3 +1,9 @@
sdrangel (4.3.1-1) unstable; urgency=medium
* RTL-SDR: offset tuning support
-- Edouard Griffiths, F4EXB <f4exb06@gmail.com> Sun, 02 Dec 2018 21:14:18 +0100
sdrangel (4.3.0-1) unstable; urgency=medium sdrangel (4.3.0-1) unstable; urgency=medium
* SoapySDR support * SoapySDR support

View File

@ -496,7 +496,7 @@
<item> <item>
<widget class="QCheckBox" name="offsetTuning"> <widget class="QCheckBox" name="offsetTuning">
<property name="toolTip"> <property name="toolTip">
<string>Offset tuning</string> <string>Offset tuning (applies to some tuners only incl. E4000)</string>
</property> </property>
<property name="text"> <property name="text">
<string>Ofs</string> <string>Ofs</string>

View File

@ -598,6 +598,9 @@ int RTLSDRInput::webapiSettingsPutPatch(
if (deviceSettingsKeys.contains("noModMode")) { if (deviceSettingsKeys.contains("noModMode")) {
settings.m_noModMode = response.getRtlSdrSettings()->getNoModMode() != 0; settings.m_noModMode = response.getRtlSdrSettings()->getNoModMode() != 0;
} }
if (deviceSettingsKeys.contains("offsetTuning")) {
settings.m_offsetTuning = response.getRtlSdrSettings()->getOffsetTuning() != 0;
}
if (deviceSettingsKeys.contains("transverterDeltaFrequency")) { if (deviceSettingsKeys.contains("transverterDeltaFrequency")) {
settings.m_transverterDeltaFrequency = response.getRtlSdrSettings()->getTransverterDeltaFrequency(); settings.m_transverterDeltaFrequency = response.getRtlSdrSettings()->getTransverterDeltaFrequency();
} }
@ -638,6 +641,7 @@ void RTLSDRInput::webapiFormatDeviceSettings(SWGSDRangel::SWGDeviceSettings& res
response.getRtlSdrSettings()->setLog2Decim(settings.m_log2Decim); response.getRtlSdrSettings()->setLog2Decim(settings.m_log2Decim);
response.getRtlSdrSettings()->setLowSampleRate(settings.m_lowSampleRate ? 1 : 0); response.getRtlSdrSettings()->setLowSampleRate(settings.m_lowSampleRate ? 1 : 0);
response.getRtlSdrSettings()->setNoModMode(settings.m_noModMode ? 1 : 0); response.getRtlSdrSettings()->setNoModMode(settings.m_noModMode ? 1 : 0);
response.getRtlSdrSettings()->setOffsetTuning(settings.m_offsetTuning ? 1 : 0);
response.getRtlSdrSettings()->setTransverterDeltaFrequency(settings.m_transverterDeltaFrequency); response.getRtlSdrSettings()->setTransverterDeltaFrequency(settings.m_transverterDeltaFrequency);
response.getRtlSdrSettings()->setTransverterMode(settings.m_transverterMode ? 1 : 0); response.getRtlSdrSettings()->setTransverterMode(settings.m_transverterMode ? 1 : 0);
response.getRtlSdrSettings()->setRfBandwidth(settings.m_rfBandwidth); response.getRtlSdrSettings()->setRfBandwidth(settings.m_rfBandwidth);

View File

@ -3474,6 +3474,9 @@ margin-bottom: 20px;
"noModMode" : { "noModMode" : {
"type" : "integer" "type" : "integer"
}, },
"offsetTuning" : {
"type" : "integer"
},
"transverterMode" : { "transverterMode" : {
"type" : "integer" "type" : "integer"
}, },
@ -23614,7 +23617,7 @@ except ApiException as e:
</div> </div>
<div id="generator"> <div id="generator">
<div class="content"> <div class="content">
Generated 2018-11-14T01:13:54.986+01:00 Generated 2018-11-26T13:24:54.460+01:00
</div> </div>
</div> </div>
</div> </div>

View File

@ -24,11 +24,13 @@ RtlSdrSettings:
type: integer type: integer
noModMode: noModMode:
type: integer type: integer
offsetTuning:
type: integer
transverterMode: transverterMode:
type: integer type: integer
transverterDeltaFrequency: transverterDeltaFrequency:
type: integer type: integer
format: int64 format: int64
rfBandwidth: rfBandwidth:
type: integer type: integer
fileRecordName: fileRecordName:

View File

@ -24,11 +24,13 @@ RtlSdrSettings:
type: integer type: integer
noModMode: noModMode:
type: integer type: integer
offsetTuning:
type: integer
transverterMode: transverterMode:
type: integer type: integer
transverterDeltaFrequency: transverterDeltaFrequency:
type: integer type: integer
format: int64 format: int64
rfBandwidth: rfBandwidth:
type: integer type: integer
fileRecordName: fileRecordName:

View File

@ -3474,6 +3474,9 @@ margin-bottom: 20px;
"noModMode" : { "noModMode" : {
"type" : "integer" "type" : "integer"
}, },
"offsetTuning" : {
"type" : "integer"
},
"transverterMode" : { "transverterMode" : {
"type" : "integer" "type" : "integer"
}, },
@ -23614,7 +23617,7 @@ except ApiException as e:
</div> </div>
<div id="generator"> <div id="generator">
<div class="content"> <div class="content">
Generated 2018-11-14T01:13:54.986+01:00 Generated 2018-11-26T13:24:54.460+01:00
</div> </div>
</div> </div>
</div> </div>

View File

@ -50,6 +50,8 @@ SWGRtlSdrSettings::SWGRtlSdrSettings() {
m_agc_isSet = false; m_agc_isSet = false;
no_mod_mode = 0; no_mod_mode = 0;
m_no_mod_mode_isSet = false; m_no_mod_mode_isSet = false;
offset_tuning = 0;
m_offset_tuning_isSet = false;
transverter_mode = 0; transverter_mode = 0;
m_transverter_mode_isSet = false; m_transverter_mode_isSet = false;
transverter_delta_frequency = 0L; transverter_delta_frequency = 0L;
@ -88,6 +90,8 @@ SWGRtlSdrSettings::init() {
m_agc_isSet = false; m_agc_isSet = false;
no_mod_mode = 0; no_mod_mode = 0;
m_no_mod_mode_isSet = false; m_no_mod_mode_isSet = false;
offset_tuning = 0;
m_offset_tuning_isSet = false;
transverter_mode = 0; transverter_mode = 0;
m_transverter_mode_isSet = false; m_transverter_mode_isSet = false;
transverter_delta_frequency = 0L; transverter_delta_frequency = 0L;
@ -114,6 +118,7 @@ SWGRtlSdrSettings::cleanup() {
if(file_record_name != nullptr) { if(file_record_name != nullptr) {
delete file_record_name; delete file_record_name;
} }
@ -152,6 +157,8 @@ SWGRtlSdrSettings::fromJsonObject(QJsonObject &pJson) {
::SWGSDRangel::setValue(&no_mod_mode, pJson["noModMode"], "qint32", ""); ::SWGSDRangel::setValue(&no_mod_mode, pJson["noModMode"], "qint32", "");
::SWGSDRangel::setValue(&offset_tuning, pJson["offsetTuning"], "qint32", "");
::SWGSDRangel::setValue(&transverter_mode, pJson["transverterMode"], "qint32", ""); ::SWGSDRangel::setValue(&transverter_mode, pJson["transverterMode"], "qint32", "");
::SWGSDRangel::setValue(&transverter_delta_frequency, pJson["transverterDeltaFrequency"], "qint64", ""); ::SWGSDRangel::setValue(&transverter_delta_frequency, pJson["transverterDeltaFrequency"], "qint64", "");
@ -209,6 +216,9 @@ SWGRtlSdrSettings::asJsonObject() {
if(m_no_mod_mode_isSet){ if(m_no_mod_mode_isSet){
obj->insert("noModMode", QJsonValue(no_mod_mode)); obj->insert("noModMode", QJsonValue(no_mod_mode));
} }
if(m_offset_tuning_isSet){
obj->insert("offsetTuning", QJsonValue(offset_tuning));
}
if(m_transverter_mode_isSet){ if(m_transverter_mode_isSet){
obj->insert("transverterMode", QJsonValue(transverter_mode)); obj->insert("transverterMode", QJsonValue(transverter_mode));
} }
@ -335,6 +345,16 @@ SWGRtlSdrSettings::setNoModMode(qint32 no_mod_mode) {
this->m_no_mod_mode_isSet = true; this->m_no_mod_mode_isSet = true;
} }
qint32
SWGRtlSdrSettings::getOffsetTuning() {
return offset_tuning;
}
void
SWGRtlSdrSettings::setOffsetTuning(qint32 offset_tuning) {
this->offset_tuning = offset_tuning;
this->m_offset_tuning_isSet = true;
}
qint32 qint32
SWGRtlSdrSettings::getTransverterMode() { SWGRtlSdrSettings::getTransverterMode() {
return transverter_mode; return transverter_mode;
@ -391,6 +411,7 @@ SWGRtlSdrSettings::isSet(){
if(m_iq_imbalance_isSet){ isObjectUpdated = true; break;} if(m_iq_imbalance_isSet){ isObjectUpdated = true; break;}
if(m_agc_isSet){ isObjectUpdated = true; break;} if(m_agc_isSet){ isObjectUpdated = true; break;}
if(m_no_mod_mode_isSet){ isObjectUpdated = true; break;} if(m_no_mod_mode_isSet){ isObjectUpdated = true; break;}
if(m_offset_tuning_isSet){ isObjectUpdated = true; break;}
if(m_transverter_mode_isSet){ isObjectUpdated = true; break;} if(m_transverter_mode_isSet){ isObjectUpdated = true; break;}
if(m_transverter_delta_frequency_isSet){ isObjectUpdated = true; break;} if(m_transverter_delta_frequency_isSet){ isObjectUpdated = true; break;}
if(m_rf_bandwidth_isSet){ isObjectUpdated = true; break;} if(m_rf_bandwidth_isSet){ isObjectUpdated = true; break;}

View File

@ -75,6 +75,9 @@ public:
qint32 getNoModMode(); qint32 getNoModMode();
void setNoModMode(qint32 no_mod_mode); void setNoModMode(qint32 no_mod_mode);
qint32 getOffsetTuning();
void setOffsetTuning(qint32 offset_tuning);
qint32 getTransverterMode(); qint32 getTransverterMode();
void setTransverterMode(qint32 transverter_mode); void setTransverterMode(qint32 transverter_mode);
@ -124,6 +127,9 @@ private:
qint32 no_mod_mode; qint32 no_mod_mode;
bool m_no_mod_mode_isSet; bool m_no_mod_mode_isSet;
qint32 offset_tuning;
bool m_offset_tuning_isSet;
qint32 transverter_mode; qint32 transverter_mode;
bool m_transverter_mode_isSet; bool m_transverter_mode_isSet;