mirror of
https://github.com/f4exb/sdrangel.git
synced 2026-06-02 14:04:46 -04:00
BladeRF2 input: fixed auto/manual transition gain control
This commit is contained in:
@@ -810,24 +810,6 @@ bool BladeRF2Input::applySettings(const BladeRF2InputSettings& settings, bool fo
|
||||
m_deviceShared.m_dev->setBiasTeeRx(settings.m_biasTee);
|
||||
}
|
||||
|
||||
if ((m_settings.m_globalGain != settings.m_globalGain) || force)
|
||||
{
|
||||
forwardChangeRxBuddies = true;
|
||||
|
||||
if (dev)
|
||||
{
|
||||
// qDebug("BladeRF2Input::applySettings: channel: %d gain: %d", requestedChannel, settings.m_globalGain);
|
||||
int status = bladerf_set_gain(dev, BLADERF_CHANNEL_RX(requestedChannel), settings.m_globalGain);
|
||||
|
||||
if (status < 0) {
|
||||
qWarning("BladeRF2Input::applySettings: bladerf_set_gain(%d) failed: %s",
|
||||
settings.m_globalGain, bladerf_strerror(status));
|
||||
} else {
|
||||
qDebug("BladeRF2Input::applySettings: bladerf_set_gain(%d)", settings.m_globalGain);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if ((m_settings.m_gainMode != settings.m_gainMode) || force)
|
||||
{
|
||||
forwardChangeRxBuddies = true;
|
||||
@@ -845,6 +827,25 @@ bool BladeRF2Input::applySettings(const BladeRF2InputSettings& settings, bool fo
|
||||
}
|
||||
}
|
||||
|
||||
if ((m_settings.m_globalGain != settings.m_globalGain)
|
||||
|| ((m_settings.m_gainMode != settings.m_gainMode) && (settings.m_gainMode == BLADERF_GAIN_MANUAL)) || force)
|
||||
{
|
||||
forwardChangeRxBuddies = true;
|
||||
|
||||
if (dev)
|
||||
{
|
||||
// qDebug("BladeRF2Input::applySettings: channel: %d gain: %d", requestedChannel, settings.m_globalGain);
|
||||
int status = bladerf_set_gain(dev, BLADERF_CHANNEL_RX(requestedChannel), settings.m_globalGain);
|
||||
|
||||
if (status < 0) {
|
||||
qWarning("BladeRF2Input::applySettings: bladerf_set_gain(%d) failed: %s",
|
||||
settings.m_globalGain, bladerf_strerror(status));
|
||||
} else {
|
||||
qDebug("BladeRF2Input::applySettings: bladerf_set_gain(%d)", settings.m_globalGain);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (forwardChangeOwnDSP)
|
||||
{
|
||||
int sampleRate = settings.m_devSampleRate/(1<<settings.m_log2Decim);
|
||||
|
||||
Reference in New Issue
Block a user