How to enter Service / Field Test Mode
Created by: E3V3A
This is not a real App issue, but may be helpful to understand how Service Mode (SM) or Field Test Mode (FTM) that can be reached on different devices, and on different firmwares (FW aka ROMs).
The SM is device and FW dependent, so what works on stock, usually don't work on a custom ROM, or completely different. The FW provide an OEM Java wrapper for this access, and AOSP, AOKP usually do not provide this wrapper, simply because they want it to work on all phones.
The SM is where you have direct modem access to all the internal and mobile network settings, that are not available in the AOS, API or UI. You can update FW, erase NV items, see all possible network parameters (that's what we want), factory reset phone, disable a multitude of other things, including bricking your phone! A typical (Samsung) SM screenshot may look something like this:
For example, if you own an HTC device running stock FW, you may try these:
*#*#197328640#*#* – Service Mode (SM)
*#*#7262626#*#* = Field-Test Mode (FTM)
*#*#3424#*#* = HTC Function Test
*#2263# – Service Mode
##3424# – Diagnostic Mode
##33284# – Debug Menu : (Debug Screen, Test Calls, RC Data, HDR/1X Selection, Voice Privacy, DTMF Set, Korea Mode Set)
For newer Samsung devices you may try *#0011*#
, or the above.
If you have other devices, do search on XDA. You can also try to search for new codes inside your stock firmware by yourself.
Q: Why is this important? A: Because AOS doesn't provide a reliable way to get detailed neighboring cell info, so we're using the multi-ril-client via OEM_HOOK requests to scrape the SM menu for details. So if you can get to this menu on any non-Samsung device, we would very much like to know which one, and the code you used, so that we can support it in our App.
Want to back this issue? Post a bounty on it! We accept bounties via Bountysource.