1
0
mirror of https://github.com/f4exb/sdrangel.git synced 2026-06-02 22:14:45 -04:00

HackRF output: compensate shifted interpolators

This commit is contained in:
f4exb
2019-04-01 14:40:01 +02:00
parent bfcfe8f87c
commit dc4a98b58a
3 changed files with 41 additions and 30 deletions
@@ -278,7 +278,7 @@ bool HackRFOutput::handleMessage(const Message& message)
freqMsg.getFrequency(),
0,
m_settings.m_log2Interp,
DeviceSampleSink::FC_POS_CENTER,
(DeviceSampleSink::fcPos_t) m_settings.m_fcPos,
m_settings.m_devSampleRate);
qDebug("HackRFOutput::handleMessage: MsgSynchronizeFrequency: centerFrequency: %lld Hz", centerFrequency);
HackRFOutputSettings settings = m_settings;
@@ -414,14 +414,17 @@ bool HackRFOutput::applySettings(const HackRFOutputSettings& settings, bool forc
reverseAPIKeys.append("LOppmTenths");
}
if (force || (m_settings.m_centerFrequency != settings.m_centerFrequency) ||
(m_settings.m_LOppmTenths != settings.m_LOppmTenths))
if ((m_settings.m_centerFrequency != settings.m_centerFrequency) ||
(m_settings.m_devSampleRate != settings.m_devSampleRate) ||
(m_settings.m_LOppmTenths != settings.m_LOppmTenths) ||
(m_settings.m_log2Interp != settings.m_log2Interp) ||
(m_settings.m_fcPos != settings.m_fcPos) || force)
{
qint64 deviceCenterFrequency = DeviceSampleSink::calculateDeviceCenterFrequency(
settings.m_centerFrequency,
0,
settings.m_log2Interp,
DeviceSampleSink::FC_POS_CENTER,
(DeviceSampleSink::fcPos_t) settings.m_fcPos,
settings.m_devSampleRate);
setDeviceCenterFrequency(deviceCenterFrequency, settings.m_LOppmTenths);