Hidden Android Debug Menu
Nokia started the trend of having service menus accessible by tapping in codes to the dialer. Entering *#92702689# (*#WAR0ANTY#) into any Nokia phone revealed various pieces of information about its manufacture, and there were all kinds of other sequences to get and set various configuration options not available through the menu system.
Now it seems that Android supports the same. I’ve tested this on my ADP-1 (for all intents and purposes the same as a T-Mobile G1) and my Nexus One, and it’s had the same effect on both devices.
Start the Phone app (or press the Phone button) to bring up the screen where you would dial a phone number.
When you’re there, dial the following:
This will bring up the debug menu main screen. Here you can fiddle with a whole load of hidden settings. The most interesting page is Phone Information, so tap on that.
The ‘Run ping test’ button is quite useful for checking your network connectivity, but otherwise the top of the Phone Info page is just telling us stuff. Scroll down to get to the goodies.
Here you can choose to lock the phone to 3G or GSM only. You can switch to GSM only through the normal menu system, but forcing 3G might be useful if you’re in a marginal signal area or if you’re using your phone with Wireless Tether or Wired Tether to stop it hopping onto an unusably slow network.
Toggle ciphering – my suggestion is to leave well alone. Crypto is a good thing with your phone and there’s no reason to turn it off.
The QXDM SD log is quite promising. QXDM is the Qualcomm eXtensible Diagnostic Monitor, which as far as I can tell can read this log to provide more detailed information about the performance of the radios (and potentially the whole platform, as Snapdragon is Qualcomm’s baby from the ground up). I’ll switch this on at some point and see what I can dig out of the log.
Turning off the radio is not enormously useful, though I do wonder if it’ll just turn off the cellular radio and leave the WiFi state intact. If so, it could be quite useful in situations where you don’t want to waste battery on the cellular radio but do want to use WiFi – planes with in-flight WiFi, for example. I’ll test this too and update the post.
The SMSC is the SMS service centre, which you shouldn’t change. Refresh will pull the SMSC number from your SIM card, which you can then edit and write back to the card with Update. I strongly recommend you leave it well alone, and if you are going to play with it then note down your original SMSC number first!
The DNS check is a bit of a mystery. It seems to circumvent some internal check that watches out for the phone’s nameservers being set to 0.0.0.0 (potentially representing no autoconfigured IP address). That’s all conjecture, though.
There are all kinds of other funky things in the service menu, screenshots of which are below – click the thumbnails to enlarge. Be careful – don’t change anything that you’re not sure you can change back – and happy hacking.
Let me know if you discover anything particularly tasty!