📞 Enable VoLTE and VoWiFi on Any Custom ROM — Working Guide (2026)
📱 One of the most frustrating things about custom ROMs is losing VoLTE and Wi-Fi Calling. You flash a shiny new ROM, everything works great... except your calls default to 2G/3G quality and Wi-Fi Calling vanishes completely.
The good news: it's fixable in most cases. The bad news: it requires some tinkering. Let's get into it. 🛠️
🔹 Quick explanation:
- VoLTE/VoWiFi needs IMS (IP Multimedia Subsystem) — a framework that handles voice calls over data networks
- OEM stock ROMs include carrier-specific IMS configurations
- AOSP-based custom ROMs don't include these configs by default
- Carriers whitelist devices by IMEI/model — custom ROMs may not be recognized
So even though your hardware supports VoLTE, the software configuration is missing or the carrier rejects the connection.
🔹 Qualcomm Devices (Most Xiaomi, OnePlus, POCO)
Open Phone app → Dial:
- → Phone Information
- → Set preferred network type: "LTE/NR (5G) only"
- → Scroll down → Check "VoLTE Provisioned" if available
🔹 MediaTek Devices (Some Xiaomi, Realme)
This toggles VoLTE directly.
🔹 Samsung Devices
→ Service Mode → Check IMS status.
This is the most reliable method and works on most AOSP-based ROMs.
🔹 Step 1: Download CarrierConfig Overlay
Each carrier needs specific overlay files. Common sources:
- Your ROM's Telegram group (maintainers often share these)
- XDA device forums
- GitHub repositories like nickcano/VoLTEPatch
🔹 Step 2: Install the Overlay
With Root (Magisk):
Without Root (ADB):
🔹 Step 3: Verify
After reboot, check Settings → Network → Mobile Network. You should see "VoLTE" or "HD Voice" toggle. Enable it.
For Wi-Fi Calling: Settings → Network → Wi-Fi Calling.
There are Magisk modules specifically designed to fix VoLTE:
🔹 VoLTE and VoWiFi Enabler Module
- Download from GitHub or your ROM's community
- Magisk → Modules → Install from Storage
- Select the ZIP
- Reboot
Popular modules:
- VoLTE-VoWiFi Enabler by flavioislima — works with many carriers
- IMS Fix by xyzuan — common for Indonesian carriers
- VoLTE Carrier Config — device-specific configurations
🔹 Props Modification
Some carriers check device properties. Open a terminal with su and run:
Reboot after setting these properties.
If you don't want to use modules, edit build.prop directly (root required):
| Carrier | Tips |
|---|---|
| Jio (India) | Usually works out of the box. If not, use VoLTE enabler Magisk module. Check APN settings. |
| Airtel (India) | Often needs carrier config overlay. May need persist.vendor.ims.disableUserAgent=0. VoWiFi might need manual APN config. |
| T-Mobile / AT&T (US) | Carrier config overlays usually required. IMEI whitelist can be an issue — contact carrier. |
| Vodafone / O2 (Europe) | Generally works with standard IMS props. VoWiFi may require specific carrier overlay. |
🔹 During a Call
- Look for "HD" or "VoLTE" icon in the status bar during a call
- The call should connect almost instantly (2G calls take 3-5 seconds to connect)
- Voice quality should be noticeably clearer
🔹 Via Service Mode
Dial: *#*#4636#*#* → Phone Information → IMS Registration: Should show "Registered" → Voice over LTE: Should show "Available" or "Registered".
🔹 Via ADB
Some combinations of carrier + ROM + device simply won't support VoLTE on custom ROMs. If you've tried everything:
- Check your ROM's Telegram/XDA group for device-specific solutions
- Consider a ROM that has VoLTE built-in for your carrier (some maintainers include carrier configs)
- Check if updating radio/modem firmware helps — our restore stock ROM guide shows how to extract and flash stock firmware
✅ VoLTE/VoWiFi troubleshooting checklist
- 📟 tried dialer codes (*#*#4636#*#* etc.)
- 📦 installed carrier config overlay
- 🧩 flashed Magisk VoLTE enabler module
- ⚙️ added build.prop IMS lines
- 🌍 checked carrier-specific settings
- 📶 verified via service mode / ADB
- 🔄 updated modem firmware (if needed)
- 🧯 contacted carrier for whitelist
- 💬 asked ROM community for help
- 🎯 enjoy HD calling & Wi‑Fi Calling!
