Connection Problem or Invalid MMI Code
Android Android Phone or Tablet
Severity: ModerateWhat it means
'Connection problem or invalid MMI code' appears when you dial a short string like *123#, *#06#, or a carrier balance code, and Android couldn't get a response from the carrier.
MMI / USSD codes are little carrier commands that ride on the voice channel, so they only work when calls work — they aren't an internet thing.
The usual causes are dialling on the wrong SIM, a temporary carrier hiccup, the phone on Wi-Fi calling, or the code itself being wrong for your carrier or country.
Affected Models
- All Android phones using carrier USSD codes (balance checks, top-ups, hotspot toggles)
- Common on dual-SIM phones where the wrong SIM dials the code
- Also seen when roaming, since carrier codes are usually different abroad
Common Causes
- Dialled on the wrong SIM on a dual-SIM phone
- Wi-Fi calling on — some carriers don't carry USSD over Wi-Fi calling
- Voice over LTE (VoLTE) hiccup blocking USSD
- Carrier network busy or having a short outage
- Wrong code for your carrier or country (codes that work at home often don't work abroad)
- Phone is roaming and the carrier hasn't enabled USSD on roaming
- Network mode set to a band that doesn't carry voice properly
- Recently changed carrier and code is still tied to the old one
How to Fix It
-
Try the code again after a few seconds.
USSD codes are short-lived and sensitive — a single retry, after 10–15 seconds, often goes through.
Don't bash the call button repeatedly; that can lock the channel briefly. -
Dial from the correct SIM.
On a dual-SIM phone, the carrier code only works on the matching SIM.
Some phone dialers let you pick which SIM to use per call (look for a SIM 1 / SIM 2 selector before dialing).
Or temporarily set the SIM as the default for outgoing calls in Settings > Network & internet > SIMs > Calls. -
Turn Wi-Fi calling off for the test.
Settings > Network & internet > SIMs > [your SIM] > Wi-Fi calling > off.
Try the code over the mobile network.
Some carriers route USSD only over cellular, not Wi-Fi calling.
Turn Wi-Fi calling back on after if you want it. -
Toggle airplane mode and restart the phone.
Turn airplane mode on for 10 seconds, then off — this refreshes the modem.
If still no luck, hold the power button and Restart.
A clean re-register on the carrier's network usually unsticks USSD. -
Check the network type.
Settings > Network & internet > SIMs > Preferred network type — set it to the most permissive option (5G/LTE/3G/2G Auto).
USSD on some carriers needs to drop to 2G/3G to deliver the response; locking the phone to LTE-only or 5G-only blocks that fallback. -
Verify the code is right for where you are.
Carrier balance and self-service codes are different in each country, and even between brands within a country.
Look up the exact code on your carrier's website — typing one extra # or skipping the leading * makes the dial fail.
If you're roaming, the home-country code may not work; the carrier often publishes a separate roaming code. -
Use the carrier's app or call them.
Most carriers now have an app that shows your balance, plan, and usage without needing USSD codes at all.
That's the cleanest fix.
If you can't get any USSD code to work and the carrier app also fails, ring the carrier from another phone — they can confirm the account is active and the network is healthy in your area.
Frequently Asked Questions
Why does *#06# show 'Connection problem or invalid MMI code' on my Android?
*#06# is the universal IMEI display code and it should always work — if it returns 'Connection problem or invalid MMI code', the dialer didn't pass the code through to the modem at all.
This usually happens when Wi-Fi calling captures the dial (turn it off and retry), when a third-party dialer is set as default and is intercepting the code (switch back to the built-in phone app), or when the phone hasn't fully booted after a restart.
If even *#06# fails after these checks, restart the phone — a fresh boot almost always brings USSD back.