[HOWTO] Enable Hidden Menus for Verizon Galaxy S4

Search This thread

vacaloca

Senior Member
Jun 11, 2010
263
115
Since VZW and Samsung Level 2 support didn't know the answer, here is how to enable the hidden menus on the dialer screen for the Verizon GS4. Previously, there was a 'master' code that enabled the hidden menus. Now it is a filesystem based check. Boo!

Due to editing /system/build.prop and /efs/carrier/HiddenMenu you MUST be rooted. Also, you must be on a stock TouchWiz-based ROM. This will not work on CM builds/etc. At a very minimum, hiddenmenu.apk must be present on your stock device for this to work, but possibly others, so beware of ROMs that remove 'bloat' APKs.

1) Add the following line* to /system/build.prop
Code:
sys.hiddenmenu.enable=1

Edit: I noticed that after I hosed build.prop, it was replaced when I loaded the default system image, so in fact, step 1 above is not necessary, at least for the Verizon variant. This means that once you do step #2 below, the changes made to /efs/carrier/HiddenMenu will persist after an Odin restore of the NoWipe Factory Image posted here. What this means is that root is only required to make the modification, and one could revert to stock afterwards with the hidden menus enabled.

2) Change the contents of /efs/carrier/HiddenMenu from OFF to ON

3) Reboot.

4) Try it out! Go to the phone dialer and enter *#06# (show MEID) as a test.

For more codes that worked on the S3 that (may) also work on the S4, see below:
http://androidforums.com/samsung-ga...unlocking-jelly-bean-service-modes-found.html

Having the hidden menus enabled is particularly useful for those who want to disable WiFi Power Saving mode -- I was having issues with an access point at work, but sadly disabling it didn't fix the problem. Otherwise, the hidden menus are useful to test your sensors/display/etc or just looking around in general. Enjoy!

For those that are NOT rooted, there is an alternative to get to SOME of these menus, but it is not a free app (currently $1.99). It's called "Sammy S Mode". Note that I am not affiliated with the developer, I just bought it to test if the menus were present before I dug deeper into finding out how to fully enable the hidden menus on my Verizon Galaxy S4. When I have time in the next day or so, I'll try to figure out how the app calls the menus, and update the post if I find a free solution for those that are not rooted.
---

* Note: I added the "sys.hiddenmenu.enable=1" line right after the "persist.cne.feature=0" one, but I don't think it matters where you add it. Just be careful editing this file. I managed to get my phone boot-looping, probably because I used notepad to edit the file and it added Windows CR/LFs to it, and had to use the NoWipe Factory Image posted here to restore my phone. The second time around I used Root Explorer's built in text editor and it worked fine.

In case anyone is curious how I figured this out, click here.
Mods: Thanks for moving this to the development section since it fits better here. :)

---

I wanted to compile a list of the ones that seem useful or new in general and working for me:

*#197328640# Service Mode
*#0228# BatteryStatus
*#0*# Screen/Sensor/Vibration/Touch/Speaker/LED/etc testing -- even gives out raw values for light sensor, barometer, etc in real time :)
*#2263 RF Band Selection
*#66336 MDM Randump Mode (defaults to OFF)
 
Last edited:

lagvoid

Senior Member
Feb 29, 2008
100
13
Thanks OP! Confirmed to be working on my Verizon S4. Followed your guide with the same placement in build.prop and using root explorer.
 
  • Like
Reactions: vacaloca

dmichael

Member
Dec 12, 2010
11
2
I can't be rooted due to work MDM. I hope an alternative method is found. I hate the constant wifi notification.
 

vacaloca

Senior Member
Jun 11, 2010
263
115
I can't be rooted due to work MDM. I hope an alternative method is found. I hate the constant wifi notification.
If you were talking about the menu on the S3 that opened "HiddenMenuWifiOffload" dialing *#6335623#, this does not work on my S4. In fact, it stopped working after a software update on the S3. There is a temporary solution that is lost on reboot. I tried it and it works for me. See link below:

http://androidcommunity.com/how-to-...i-notification-on-verizon-galaxy-s-4-20130527
 
Last edited:
  • Like
Reactions: citenx and 12ival

vacaloca

Senior Member
Jun 11, 2010
263
115
For anyone that needs to get to a service menu without being rooted, here is the basic idea. You'll have to get a launcher or shortcut app that supports creating shortcuts to activities.

Code:
Intent localIntent1 = new Intent("android.intent.action.MAIN");
localIntent1.putExtra("keyString", "0011");
localIntent1.setClassName("com.sec.android.RilServiceModeApp", "com.sec.android.RilServiceModeApp.ServiceModeApp");
startActivity(localIntent1);

I'll expand later using a free app that supports doing that when I get it to work on my end. In the meantime, here's a very simple app that can serve as a template to place the values above:
http://viralpatel.net/blogs/android-install-uninstall-shortcut-example/

Edit 1: A free app can be used to create the shortcut. It is called Manual Intent Shortcuts.
 
Last edited:
  • Like
Reactions: Fixup

tCizler

Senior Member
Sep 1, 2011
385
54
Not working for me, did exactly what was posted. I even posted the line in the same place

Sent from Verizon Galaxy S4
 
Last edited:

vacaloca

Senior Member
Jun 11, 2010
263
115
Not working for me, did exactly what was posted. I even posted the line in the same place

Sent from Verizon Galaxy S4

I should note that this only works if you're running a stock ROM. If you're running CM or some other non-TouchWiz ROM or missing hiddenmenu.apk this won't work. I have added this to the OP.
 
Last edited:

vacaloca

Senior Member
Jun 11, 2010
263
115
Not working for me, did exactly what was posted. I even posted the line in the same place

Yep, stock and rooted

The only thing I can think of is perhaps there is a space in the /efs/carrier/HiddenMenu file that is failing the code check. It is an exact match:
Code:
    if (new File(this.HIDDENMENU_ENABLE_PATH).exists())
      try
      {
        String str = read(this.HIDDENMENU_ENABLE_PATH);
        if (str.equals("ON"))
          return true;
You can also issue the command when USB debugging is set/connected to PC:
Code:
adb shell getprop sys.hiddenmenu.enable
or
Code:
getprop sys.hiddenmenu.enable
from a terminal emulator app on your phone to verify that the property is set correctly. Either command should return the value input -- 1 in this case.

I'll see if I make a recovery flashable update.zip to make it easier for everyone.
 
Last edited:

tCizler

Senior Member
Sep 1, 2011
385
54
The only thing I can think of is perhaps there is a space in the /efs/carrier/HiddenMenu file that is failing the code check. It is an exact match:
Code:
    if (new File(this.HIDDENMENU_ENABLE_PATH).exists())
      try
      {
        String str = read(this.HIDDENMENU_ENABLE_PATH);
        if (str.equals("ON"))
          return true;
You can also issue the command when USB debugging is set/connected to PC:
Code:
adb shell getprop sys.hiddenmenu.enable
or
Code:
getprop sys.hiddenmenu.enable
from a terminal emulator app on your phone to verify that the property is set correctly. Either command should return the value input -- 1 in this case.

I'll see if I make a recovery flashable update.zip to make it easier for everyone.

I ran the "getprop sys.hiddenmenu.enable" line in terminal emulator and it came back with a value of "1".

Also, if it's any help, the *#06# code works. A few others work too. Just can't get the hidden menu *#26337# (*#codes#)

Sent from Verizon Galaxy S4
 

vacaloca

Senior Member
Jun 11, 2010
263
115
I ran the "getprop sys.hiddenmenu.enable" line in terminal emulator and it came back with a value of "1".

Also, if it's any help, the *#06# code works. A few others work too. Just can't get the hidden menu *#26337# (*#codes#)

Sent from Verizon Galaxy S4

Oh, duh, haha. That's my fault. That was just an example of the format of the codes. There is no *#CODES# menu. :facepalm: I removed that from the OP. Sorry for the confusion, and thanks for testing/helping me clarify my post :)

The Service Mode Main Menu code is: *#197328640#.
 
Last edited:

tCizler

Senior Member
Sep 1, 2011
385
54
Oh, duh, haha. That's my fault. That was just an example of the format of the codes. There is no *#CODES# menu. :facepalm: I removed that from the OP. Sorry for the confusion.
The Service Mode Main Menu code is: *#197328640#.

Hahahahaha! Wow now I feel like an ass! The facepalm should be for me

Sent from Verizon Galaxy S4
 

crookedview

Senior Member
Jun 14, 2009
108
21
Can anyone else share their service mode setting (*#197328640#) under sim information, check nv, band pref? Mine says unexpected value.

Trying to figure out if my sim is borked and causing 4g slowness.

Sent from my SCH-I545 using xda premium
 

vacaloca

Senior Member
Jun 11, 2010
263
115
Can anyone else share their service mode setting (*#197328640#) under sim information, check nv, band pref? Mine says unexpected value.

Trying to figure out if my sim is borked and causing 4g slowness.

Sent from my SCH-I545 using xda premium
Mine says the same and no 4g issues here either. If you have another phone handy that you can swap sims, that would be one way to test. *#2263 has band preference settings, but I haven't touched mine and don't plan to just in case, want to avoid resetting to stock and re-rooting/going back to recovery if the phone doesn't like some setting I picked there.
 
Last edited:

tCizler

Senior Member
Sep 1, 2011
385
54
Mine says the same. If you have another phone handy that you can swap sims, that would be one way to test. *#2263 has band preference settings, but I haven't touched mine and don't plan to just in case, haha.

Mine says the same, and I have no 4g issues

Sent from Verizon Galaxy S4
 

Top Liked Posts

  • There are no posts matching your filters.
  • 46
    Since VZW and Samsung Level 2 support didn't know the answer, here is how to enable the hidden menus on the dialer screen for the Verizon GS4. Previously, there was a 'master' code that enabled the hidden menus. Now it is a filesystem based check. Boo!

    Due to editing /system/build.prop and /efs/carrier/HiddenMenu you MUST be rooted. Also, you must be on a stock TouchWiz-based ROM. This will not work on CM builds/etc. At a very minimum, hiddenmenu.apk must be present on your stock device for this to work, but possibly others, so beware of ROMs that remove 'bloat' APKs.

    1) Add the following line* to /system/build.prop
    Code:
    sys.hiddenmenu.enable=1

    Edit: I noticed that after I hosed build.prop, it was replaced when I loaded the default system image, so in fact, step 1 above is not necessary, at least for the Verizon variant. This means that once you do step #2 below, the changes made to /efs/carrier/HiddenMenu will persist after an Odin restore of the NoWipe Factory Image posted here. What this means is that root is only required to make the modification, and one could revert to stock afterwards with the hidden menus enabled.

    2) Change the contents of /efs/carrier/HiddenMenu from OFF to ON

    3) Reboot.

    4) Try it out! Go to the phone dialer and enter *#06# (show MEID) as a test.

    For more codes that worked on the S3 that (may) also work on the S4, see below:
    http://androidforums.com/samsung-ga...unlocking-jelly-bean-service-modes-found.html

    Having the hidden menus enabled is particularly useful for those who want to disable WiFi Power Saving mode -- I was having issues with an access point at work, but sadly disabling it didn't fix the problem. Otherwise, the hidden menus are useful to test your sensors/display/etc or just looking around in general. Enjoy!

    For those that are NOT rooted, there is an alternative to get to SOME of these menus, but it is not a free app (currently $1.99). It's called "Sammy S Mode". Note that I am not affiliated with the developer, I just bought it to test if the menus were present before I dug deeper into finding out how to fully enable the hidden menus on my Verizon Galaxy S4. When I have time in the next day or so, I'll try to figure out how the app calls the menus, and update the post if I find a free solution for those that are not rooted.
    ---

    * Note: I added the "sys.hiddenmenu.enable=1" line right after the "persist.cne.feature=0" one, but I don't think it matters where you add it. Just be careful editing this file. I managed to get my phone boot-looping, probably because I used notepad to edit the file and it added Windows CR/LFs to it, and had to use the NoWipe Factory Image posted here to restore my phone. The second time around I used Root Explorer's built in text editor and it worked fine.

    In case anyone is curious how I figured this out, click here.
    Mods: Thanks for moving this to the development section since it fits better here. :)

    ---

    I wanted to compile a list of the ones that seem useful or new in general and working for me:

    *#197328640# Service Mode
    *#0228# BatteryStatus
    *#0*# Screen/Sensor/Vibration/Touch/Speaker/LED/etc testing -- even gives out raw values for light sensor, barometer, etc in real time :)
    *#2263 RF Band Selection
    *#66336 MDM Randump Mode (defaults to OFF)
    4
    To anyone That's Having Issues With This.. I Have The Newest Firmware and I Have it Rooted With The Bootloader Still Locked.. all You Have to Do is:
    Download ES Explorer Which is Free on The Market.
    Open it Then Click The Menu
    Click on Root Explorer and Make Sure It's Enabled.
    Then Click on Top Right corner Where it Says sdcard and Select Device
    Now Click efs Then carrier Then hidden Menu It'll Prompt you to Select then Select text
    click on Es Note Editor
    Click Menu Edit
    Change it to ON Then Click Back
    It'll Ask you if you want to Save
    Say Yes and Then Get out of There and Reboot

    :)

    Worked Great For Me :)
    4
    I figured this out and built an app to do it about a week ago. I also have all the dialer codes for the s4, pulled them from the phone. If people want it I guess I could release it. I would need to clean it up a bit first though.

    Sent from my SCH-I545 using Tapatalk 2
    4
    In the same boat here, can't get to band selection.

    *#27663368378#

    Umts -> Debug Screen -> Phone Control -> Network Control -> Band Selection -> LTE Band Preference

    (on Verizon GS4 w/Hyperdrive 10)
    2
    The Service Mode Main Menu code is: *#197328640#.

    Working for me.

    Interesting choice of code sequence. 1973, 286 (intel), 40 (your age this year if born in 73)

    Sent from my SGS4 using one opposable thumb.