diff --git a/interface/src/scripting/AudioDevices.cpp b/interface/src/scripting/AudioDevices.cpp
index 4aa1018c23..7fc129de3c 100644
--- a/interface/src/scripting/AudioDevices.cpp
+++ b/interface/src/scripting/AudioDevices.cpp
@@ -268,9 +268,14 @@ void AudioDeviceList::onDevicesChanged(const QList<HifiAudioDeviceInfo>& devices
             for (bool isHMD : {false, true}) {
                 auto& backupSelectedDeviceName = isHMD ? _backupSelectedHMDDeviceName : _backupSelectedDesktopDeviceName;
                 if (deviceInfo.deviceName() == backupSelectedDeviceName) {
-                    HifiAudioDeviceInfo& selectedDevice = isHMD ? _selectedHMDDevice : _selectedDesktopDevice;
-                    selectedDevice = deviceInfo;
-                    backupSelectedDeviceName.clear();
+                    if (isHMD && deviceInfo.getDeviceType() != HifiAudioDeviceInfo::desktop) {
+                        _selectedHMDDevice= deviceInfo;
+                        backupSelectedDeviceName.clear();
+                    } else if (!isHMD && deviceInfo.getDeviceType() != HifiAudioDeviceInfo::hmd) {
+                        _selectedDesktopDevice = deviceInfo;
+                        backupSelectedDeviceName.clear();
+                    }
+
                 }
             }
         }
@@ -323,8 +328,14 @@ void AudioDeviceList::onDevicesChanged(const QList<HifiAudioDeviceInfo>& devices
             }
             else {
                 //no selected device for context. fallback to saved
-                const QString& savedDeviceName = isHMD ? _hmdSavedDeviceName : _desktopSavedDeviceName;
-                isSelected = (device.info.deviceName() == savedDeviceName);
+                QString& savedDeviceName = isHMD ? _hmdSavedDeviceName : _desktopSavedDeviceName;
+
+                if (device.info.deviceName() == savedDeviceName) {
+                    if ((isHMD && device.info.getDeviceType() != HifiAudioDeviceInfo::desktop) ||
+                        (!isHMD && device.info.getDeviceType() != HifiAudioDeviceInfo::hmd)) {
+                        isSelected = true;
+                    }
+                }
             }
 
             if (isSelected) {
diff --git a/libraries/audio-client/src/AudioClient.cpp b/libraries/audio-client/src/AudioClient.cpp
index cb8128bbc9..3e1557e09b 100644
--- a/libraries/audio-client/src/AudioClient.cpp
+++ b/libraries/audio-client/src/AudioClient.cpp
@@ -570,7 +570,7 @@ HifiAudioDeviceInfo defaultAudioDeviceForMode(QAudio::Mode mode) {
     HifiAudioDeviceInfo foundDevice;
     foreach(QAudioDeviceInfo audioDevice, devices) {
         if (audioDevice.deviceName().trimmed() == deviceName.trimmed()) {
-            foundDevice=HifiAudioDeviceInfo(audioDevice, true, mode, HifiAudioDeviceInfo::desktop);
+            foundDevice = HifiAudioDeviceInfo(audioDevice, true, mode, HifiAudioDeviceInfo::desktop);
             break;
         }
     }