diff --git a/external/CMakeLists.txt b/external/CMakeLists.txt
index 1556efac5..19b6cd73e 100644
--- a/external/CMakeLists.txt
+++ b/external/CMakeLists.txt
@@ -12,7 +12,7 @@ set(CODEC2_TAG "v0.9.2")
set(CM256CC_TAG c0e92b92aca3d1d36c990b642b937c64d363c559)
set(MBELIB_TAG 9a04ed5c78176a9965f3d43f7aa1b1f5330e771f)
set(SERIALDV_TAG "v1.1.4")
-set(DSDCC_TAG "v1.8.7")
+set(DSDCC_TAG "v1.8.6")
set(LIMESUITE_TAG "v20.01.0")
set(BLADERF_TAG "2019.07")
set(LIBIIO_TAG 826563e41b5ce9890b75506f672017de8d76d52d)
diff --git a/plugins/channelrx/demoddsd/dsddecoder.h b/plugins/channelrx/demoddsd/dsddecoder.h
index 8be149902..ca2f84ebb 100644
--- a/plugins/channelrx/demoddsd/dsddecoder.h
+++ b/plugins/channelrx/demoddsd/dsddecoder.h
@@ -50,7 +50,6 @@ public:
bool getVoice2On() const { return m_decoder.getVoice2On(); }
void setTDMAStereo(bool tdmaStereo) { m_decoder.setTDMAStereo(tdmaStereo); }
bool getSymbolPLLLocked() const { return m_decoder.getSymbolPLLLocked(); }
- void setDMRBasicPrivacyKey(unsigned char key) { m_decoder.setDMRBasicPrivacyKey(key); }
int getMbeRateIndex() const { return (int) m_decoder.getMbeRate(); }
diff --git a/plugins/channelrx/demoddsd/dsddemod.cpp b/plugins/channelrx/demoddsd/dsddemod.cpp
index 75e9ceeed..60196861a 100644
--- a/plugins/channelrx/demoddsd/dsddemod.cpp
+++ b/plugins/channelrx/demoddsd/dsddemod.cpp
@@ -156,7 +156,6 @@ void DSDDemod::applySettings(const DSDDemodSettings& settings, bool force)
<< " m_slot2On: " << settings.m_slot2On
<< " m_tdmaStereo: " << settings.m_tdmaStereo
<< " m_pllLock: " << settings.m_pllLock
- << " m_dmrBPKey:" << settings.m_dmrBPKey
<< " m_highPassFilter: "<< settings.m_highPassFilter
<< " m_audioDeviceName: " << settings.m_audioDeviceName
<< " m_traceLengthMutliplier: " << settings.m_traceLengthMutliplier
@@ -218,9 +217,6 @@ void DSDDemod::applySettings(const DSDDemodSettings& settings, bool force)
if ((settings.m_pllLock != m_settings.m_pllLock) || force) {
reverseAPIKeys.append("pllLock");
}
- if ((settings.m_dmrBPKey != m_settings.m_dmrBPKey) || force) {
- reverseAPIKeys.append("dmrBPKey");
- }
if ((settings.m_highPassFilter != m_settings.m_highPassFilter) || force) {
reverseAPIKeys.append("highPassFilter");
}
diff --git a/plugins/channelrx/demoddsd/dsddemodgui.cpp b/plugins/channelrx/demoddsd/dsddemodgui.cpp
index 309d47828..4058f9604 100644
--- a/plugins/channelrx/demoddsd/dsddemodgui.cpp
+++ b/plugins/channelrx/demoddsd/dsddemodgui.cpp
@@ -263,12 +263,6 @@ void DSDDemodGUI::on_symbolPLLLock_toggled(bool checked)
applySettings();
}
-void DSDDemodGUI::on_dmrBPKey_valueChanged(int value)
-{
- m_settings.m_dmrBPKey = value < 0 ? 0 : value > 255 ? 255 : value;
- applySettings();
-}
-
void DSDDemodGUI::onWidgetRolled(QWidget* widget, bool rollDown)
{
(void) widget;
diff --git a/plugins/channelrx/demoddsd/dsddemodgui.h b/plugins/channelrx/demoddsd/dsddemodgui.h
index a66a307b5..fa7251d1d 100644
--- a/plugins/channelrx/demoddsd/dsddemodgui.h
+++ b/plugins/channelrx/demoddsd/dsddemodgui.h
@@ -132,7 +132,6 @@ private slots:
void on_highPassFilter_toggled(bool checked);
void on_audioMute_toggled(bool checked);
void on_symbolPLLLock_toggled(bool checked);
- void on_dmrBPKey_valueChanged(int value);
void onWidgetRolled(QWidget* widget, bool rollDown);
void onMenuDialogCalled(const QPoint& p);
void on_viewStatusLog_clicked();
diff --git a/plugins/channelrx/demoddsd/dsddemodgui.ui b/plugins/channelrx/demoddsd/dsddemodgui.ui
index 87cdbcc43..d1628e340 100644
--- a/plugins/channelrx/demoddsd/dsddemodgui.ui
+++ b/plugins/channelrx/demoddsd/dsddemodgui.ui
@@ -1228,41 +1228,6 @@
Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter
-
-
-
- 10
- 170
- 21
- 19
-
-
-
- BP
-
-
-
-
-
- 40
- 170
- 50
- 19
-
-
-
- DMR Basic Privacy key (0: no encryption)
-
-
- Qt::RightToLeft
-
-
- Qt::AlignRight|Qt::AlignTrailing|Qt::AlignVCenter
-
-
- 255
-
-
diff --git a/plugins/channelrx/demoddsd/dsddemodplugin.cpp b/plugins/channelrx/demoddsd/dsddemodplugin.cpp
index 81a63a38f..8998fa49b 100644
--- a/plugins/channelrx/demoddsd/dsddemodplugin.cpp
+++ b/plugins/channelrx/demoddsd/dsddemodplugin.cpp
@@ -30,7 +30,7 @@
const PluginDescriptor DSDDemodPlugin::m_pluginDescriptor = {
DSDDemod::m_channelId,
QString("DSD Demodulator"),
- QString("4.14.14"),
+ QString("4.12.3"),
QString("(c) Edouard Griffiths, F4EXB"),
QString("https://github.com/f4exb/sdrangel"),
true,
diff --git a/plugins/channelrx/demoddsd/dsddemodsettings.cpp b/plugins/channelrx/demoddsd/dsddemodsettings.cpp
index 9a03e5bdd..fff5f20a9 100644
--- a/plugins/channelrx/demoddsd/dsddemodsettings.cpp
+++ b/plugins/channelrx/demoddsd/dsddemodsettings.cpp
@@ -46,7 +46,6 @@ void DSDDemodSettings::resetToDefaults()
m_slot2On = false;
m_tdmaStereo = false;
m_pllLock = true;
- m_dmrBPKey = 0;
m_rgbColor = QColor(0, 255, 255).rgb();
m_title = "DSD Demodulator";
m_highPassFilter = false;
@@ -103,7 +102,6 @@ QByteArray DSDDemodSettings::serialize() const
s.writeU32(28, m_reverseAPIChannelIndex);
s.writeBool(29, m_audioMute);
s.writeS32(30, m_streamIndex);
- s.writeU32(31, m_dmrBPKey);
return s.final();
}
@@ -182,8 +180,6 @@ bool DSDDemodSettings::deserialize(const QByteArray& data)
m_reverseAPIChannelIndex = utmp > 99 ? 99 : utmp;
d.readBool(29, &m_audioMute, false);
d.readS32(30, &m_streamIndex, 0);
- d.readU32(31, &utmp, 0);
- m_dmrBPKey = utmp < 256 ? utmp : 255;
return true;
}
diff --git a/plugins/channelrx/demoddsd/dsddemodsettings.h b/plugins/channelrx/demoddsd/dsddemodsettings.h
index 16c6d860d..0180193c1 100644
--- a/plugins/channelrx/demoddsd/dsddemodsettings.h
+++ b/plugins/channelrx/demoddsd/dsddemodsettings.h
@@ -39,7 +39,6 @@ struct DSDDemodSettings
bool m_slot2On;
bool m_tdmaStereo;
bool m_pllLock;
- uint8_t m_dmrBPKey; //!< Basic Privacy key index - 0: no encryption
quint32 m_rgbColor;
QString m_title;
bool m_highPassFilter;
diff --git a/plugins/channelrx/demoddsd/dsddemodsink.cpp b/plugins/channelrx/demoddsd/dsddemodsink.cpp
index 7462d2e34..61c14b80d 100644
--- a/plugins/channelrx/demoddsd/dsddemodsink.cpp
+++ b/plugins/channelrx/demoddsd/dsddemodsink.cpp
@@ -335,7 +335,6 @@ void DSDDemodSink::applySettings(const DSDDemodSettings& settings, bool force)
<< " m_slot2On: " << settings.m_slot2On
<< " m_tdmaStereo: " << settings.m_tdmaStereo
<< " m_pllLock: " << settings.m_pllLock
- << " m_dmrBPKey: " << settings.m_dmrBPKey
<< " m_highPassFilter: "<< settings.m_highPassFilter
<< " m_audioDeviceName: " << settings.m_audioDeviceName
<< " m_traceLengthMutliplier: " << settings.m_traceLengthMutliplier
@@ -394,11 +393,6 @@ void DSDDemodSink::applySettings(const DSDDemodSettings& settings, bool force)
m_dsdDecoder.setSymbolPLLLock(settings.m_pllLock);
}
- if ((settings.m_dmrBPKey != m_settings.m_dmrBPKey) || force)
- {
- m_dsdDecoder.setDMRBasicPrivacyKey(settings.m_dmrBPKey);
- }
-
if ((settings.m_highPassFilter != m_settings.m_highPassFilter) || force)
{
m_dsdDecoder.useHPMbelib(settings.m_highPassFilter);