diff --git a/fmapp2/src/com/caf/fmradio/FMRadio.java b/fmapp2/src/com/caf/fmradio/FMRadio.java
index 9c44addac4091f8b36e7d5765477812e768e62bc..909a14c0f63c73d291a2f4af2f4bc7d6be31916d 100644
--- a/fmapp2/src/com/caf/fmradio/FMRadio.java
+++ b/fmapp2/src/com/caf/fmradio/FMRadio.java
@@ -1679,7 +1679,6 @@ public class FMRadio extends Activity
 
    private void disableRadio() {
       boolean bStatus = false;
-      boolean bSpeakerPhoneOn = isSpeakerEnabled();
 
       cancelSearch();
       endSleepTimer();
@@ -1698,11 +1697,6 @@ public class FMRadio extends Activity
             }
 
             enableRadioOnOffUI();
-            // restore default wired headset on FM power off
-            if (bSpeakerPhoneOn) {
-               mService.enableSpeaker(false);
-               mSpeakerButton.setImageResource(R.drawable.btn_earphone);
-            }
          }catch (RemoteException e) {
             e.printStackTrace();
          }
diff --git a/fmapp2/src/com/caf/fmradio/FMRadioService.java b/fmapp2/src/com/caf/fmradio/FMRadioService.java
index 02319976a4d9f81a85062beb70d11ec1ebd968fd..83018f560ec5c24b91ec9f17bfc4ec276e2c8380 100644
--- a/fmapp2/src/com/caf/fmradio/FMRadioService.java
+++ b/fmapp2/src/com/caf/fmradio/FMRadioService.java
@@ -2137,6 +2137,7 @@ public class FMRadioService extends Service
    * Turn OFF FM Operations: This disables all the current FM operations             .
    */
    private void fmOperationsOff() {
+      // stop recording
       if (isFmRecordingOn())
       {
           stopRecording();
@@ -2147,14 +2148,19 @@ public class FMRadioService extends Service
                return;
           }
       }
+      // disable audio path
       AudioManager audioManager = (AudioManager) getSystemService(Context.AUDIO_SERVICE);
       if(audioManager != null)
       {
          Log.d(LOGTAG, "audioManager.setFmRadioOn = false \n" );
          stopFM();
-         //audioManager.setParameters("FMRadioOn=false");
          Log.d(LOGTAG, "audioManager.setFmRadioOn false done \n" );
       }
+      // reset FM audio settings
+      if (isSpeakerEnabled() == true)
+          enableSpeaker(false);
+      if (isMuted() == true)
+          unMute();
 
       if (isAnalogModeEnabled()) {
               SystemProperties.set("hw.fm.isAnalog","false");