[GUIDE]Enable VoLTE for unsupported carriers

somin.n

Senior Member
Feb 3, 2013
440
446
103
Hi :) Let me introduce tutorial, how to enable VoLTE/VoWiFi for some other carriers. All credits goes to @Airpil for his great work with enabling diag port for Pixel 2 phones and to @topjohnwu for his original Magisk project.

ANOTHER UPDATE:
  • On Android 11 you can use module VoLTE_enabler_pixel_2_v1_1.zip, but you will myabe need to use SeLinux permissive module too.

BIG UPDATE:
  • use only on PIE
  • for android 10 use solution with PDC tool
  • I created new magisk module with everything needed for enabling VoLTE. Just install VoLTE_enabler_pixel_2_v1_1.zip and enjoy.
  • this will work only, if there is proper *.mbn for your provider
  • sometimes is needed to remove/add module after updating monthly updates
  • sometimes is needed to toggle off/on enhanced 4g LTE mode and go to airplane mode and back


Prerequizites:
  • your carrier have to support this feature
    • and you have to enable this feature on operator's side
  • PC with windows
  • you must have some luck

Prepare your PC:
  • google for QPST_2.7.474 and install it
  • install provided drivers (if they willn't work, google for better)
  • from provided nokia_mbn_files.zip find the right mcfg_sw.mbn for your carrier, if there isn't any mbn for your carrier, you can try another one, but without warranty

Prepare your phone:
  • backup everything, what you can :D especially EFS partition - just for sure ;)
  • root your phone with provided Magisk.zip
  • boot up your phone
  • In Magisk Manager app find and install VoEnabler module, restart phone
    • there will be new settings under Settings-Network & internet-Mobile network-Advanced
  • connect phone to PC and set to charge only mod
  • in terminal emulator run this commands (this will enable diagnostic port on phone):
    Code:
    su
    setenforce 0  
    setprop sys.usb.configfs 1 && setprop sys.usb.config diag,serial_cdev,rmnet_gsi,adb

Next steps:
  • find PDC tool from installed QPST and open
  • select device from drop-down menu, if it is empty, you will have to reinstall/choose another driver
  • click load button and find prepared mcfg_sw.mbn file
  • now right-click on new loaded profile and select SetSelectedConfig - Sub0
  • and now button Activate
  • activate provided VoEnabler module via MagiskManager
  • restart device
  • and now, if you are lucky one, your VoLTE is working :victory:

Final steps:
  • if everything is working, you should reinstall original Magisk from twrp

Troubleshhoting:
  • 99,9% of all problems comes with wrong driver
  • open windows device manager and try to choose another driver for HW like:
    • Qualcomm HS-USB Modem 9091
    • Qualcomm HS-USB Diagnostics 9091
    • Qualcomm HS-USB WWAN Adapter 9091


Is it working?
  • dial *#*#4636#*#*
  • Phone information-3dots-IMS service status
  • If IMS Registration: Registered and Voice over LTE: Available you won
  • after update with factory images you will have to re-do this steps

Confirmed carriers:
  • Czech T-mobile
    • VoLTE - yes
    • VoWiFi - no
  • Poland Orange (confirmed by @saperkus)
    • VoLTE - yes
    • VoWiFi - yes
  • Poland Play (confirmed by @saperkus)
    • VoLTE - yes
    • VoWiFi - yes
  • Telenor Bulgaria with Telenor Danemark mbn (confirmed by @pavel5044)
    • VoLTE - yes
    • VoWiFi - no
  • T-Mobile Hungary (Telekom) (confirmed by @hunfatal)
    • VoLTE - yes
    • VoWiFi - no


Downloads:
Code:
Drivers:
[url]https://mega.nz/#!oMEHTIbA!0g7ahr8r81Q3ue8LpEy-sfd7FTLEEQlGRi2CJfG_Kq0[/url]
 

Attachments

Last edited:

royroyal

Senior Member
Mar 2, 2014
89
6
0
Hi :) Let me introduce tutorial, how to enable VoLTE/VoWiFi for some other carriers. All credits goes to @Airpil for his great work with enabling diag port for Pixel 2 phones and to @topjohnwu for his original Magisk project.

Prerequizites:
  • your carrier have to support this feature
    • and you have to enable this feature on operator's side
  • PC with windows
  • you must have some luck

Prepare your PC:
  • google for QPST_2.7.474 and install it
  • install provided drivers (if they willn't work, google for better)
  • from provided nokia_mbn_files.zip find the right mcfg_sw.mbn for your carrier, if there isn't any mbn for your carrier, you can try another one, but without warranty

Prepare your phone:
  • backup everything, what you can :D especially EFS partition - just for sure ;)
  • root your phone with provided Magisk.zip
  • boot up your phone
  • In Magisk Manager app find and install VoEnabler module, restart phone
    • there will be new settings under Settings-Network & internet-Mobile network-Advanced
  • connect phone to PC and set to charge only mod
  • in terminal emulator run this commands (this will enable diagnostic port on phone):
    Code:
    setenforce 0  
    setprop sys.usb.configfs 1 && setprop sys.usb.config diag,serial_cdev,rmnet_gsi,adb

Next steps:
  • find PDC tool from installed QPST and open
  • select device from drop-down menu, if it is empty, you will have to reinstall/choose another driver
  • click load button and find prepared mcfg_sw.mbn file
  • now right-click on new loaded profile and select SetSelectedConfig - Sub0
  • and now button Activate
  • and now, if you are lucky one, your VoLTE is working :victory:

Final steps:
  • if everything is working, you should reinstall original Magisk from twrp

Troubleshhoting:
  • 99,9% of all problems comes with wrong driver
  • open windows device manager and try to choose another driver for HW like:
    • Qualcomm HS-USB Modem 9091
    • Qualcomm HS-USB Diagnostics 9091
    • Qualcomm HS-USB WWAN Adapter 9091

Is it working?
  • dial *#*#4636#*#*
  • Phone information-3dots-IMS service status
  • If IMS Registration: Registered and Voice over LTE: Available you won

Downloads:
Code:
Drivers:
[url]https://mega.nz/#!oMEHTIbA!0g7ahr8r81Q3ue8LpEy-sfd7FTLEEQlGRi2CJfG_Kq0[/url]
Hi I am stuck at the terminal emulator step.
when i type in "setenforce 0" the terminal says "couldn't set enforcing status to '0' invalid argument"
i tried googling and tried some stuff but no luck.

Note: Is there something to do with the kernel coz i am on Sultan Kernel and not sure if its build for only enforcing or only permissive.

please get back to me ASAP.
thankyou
 

somin.n

Senior Member
Feb 3, 2013
440
446
103
Hi I am stuck at the terminal emulator step.
when i type in "setenforce 0" the terminal says "couldn't set enforcing status to '0' invalid argument"
i tried googling and tried some stuff but no luck.

Note: Is there something to do with the kernel coz i am on Sultan Kernel and not sure if its build for only enforcing or only permissive.

please get back to me ASAP.
thankyou
Hi, yeah, my mistake :angel: You have to use "su" command first to allow root access. Full command is:
Code:
su
setenforce 0  
setprop sys.usb.configfs 1 && setprop sys.usb.config diag,serial_cdev,rmnet_gsi,adb
And please, don't quote full first post ;)
 

royroyal

Senior Member
Mar 2, 2014
89
6
0
Hi, yeah, my mistake :angel: You have to use "su" command first to allow root access. Full command is:


And please, don't quote full first post ;)
Yes sorry for replying over the OP.

Yes i knew already to use "su" inorder to grant supersu access, but this didnt work for me and i am not able to proceed. Husssshh..:(
 

somin.n

Senior Member
Feb 3, 2013
440
446
103
Yes sorry for replying over the OP.

Yes i knew already to use "su" inorder to grant supersu access, but this didnt work for me and i am not able to proceed. Husssshh..:(
Hmm, should work? Try to write it, not copy... Try the other command without changing enfonforcing, it is maybe not necessary.
 

royroyal

Senior Member
Mar 2, 2014
89
6
0
Hmm, should work? Try to write it, not copy... Try the other command without changing enfonforcing, it is maybe not necessary.
Tried to write as well as copying, also tried without the 1st command but no luck.. and as no one has tried this yet aslo not able to know if this is happening with my device only.
 

somin.n

Senior Member
Feb 3, 2013
440
446
103
Tried to write as well as copying, also tried without the 1st command but no luck.. and as no one has tried this yet aslo not able to know if this is happening with my device only.
Interesting :D try to restart your phone, open windows device manager, connect phone (now should be detected some new hw), open terminal and write commands and look, if some new hw was detected or if you have some new unknown devices in device manager. You should also look to Airpil's thread for some help.
Code:
[url]https://forum.xda-developers.com/pixel-2-xl/how-to/guide-qxdm-port-activation-pixel-2-xl-t3884967[/url]
 

royroyal

Senior Member
Mar 2, 2014
89
6
0
Interesting :D try to restart your phone, open windows device manager, connect phone (now should be detected some new hw), open terminal and write commands and look, if some new hw was detected or if you have some new unknown devices in device manager. You should also look to Airpil's thread for some help.
Will try this and update here
 

ashokabs

Senior Member
Mar 9, 2011
168
79
0
New Delhi
Enable VoLTE for Vodafone in India

Vodafone in India has not provisioned the Pixel 2 till yet for VoLTE despite many people getting after them. A lot of noise was generated by users when Google pointed out that they had done what was required in the Android Pie updates.

Many thanks for this guide as it has helped me to enable VoLTE on my Pixel 2. On checking with *#*#4636#*#* it shows that VoLTE is now provisioned for voice. I now need to connect to any other phone where VoLTE is working and see if it indeed connects using VoLTE.

The only problem I had was in opening the port before using QPST. I had to type in the commands a second time in the terminal and then the port opened allowing me to proceed.
 

royroyal

Senior Member
Mar 2, 2014
89
6
0
Successfully enable volte on my pixel2,Thanks!
Hi,

did u do it over the stock rom/kernel or on any custom kernel.

and can u post every step that u did to get it done.

currently i m on pure stock 9.0 pie with locked bootloader on february security patch.

this is my previous comment over the thread..

Hi I am stuck at the terminal emulator step.
when i type in "setenforce 0" the terminal says "couldn't set enforcing status to '0' invalid argument"
i tried googling and tried some stuff but no luck.

Note: Is there something to do with the kernel coz i am on Sultan Kernel and not sure if its build for only enforcing or only permissive.
 

almightysiman

Senior Member
Sep 10, 2016
243
28
0
Hi,

did u do it over the stock rom/kernel or on any custom kernel.

and can u post every step that u did to get it done.

currently i m on pure stock 9.0 pie with locked bootloader on february security patch.

this is my previous comment over the thread..

Hi I am stuck at the terminal emulator step.
when i type in "setenforce 0" the terminal says "couldn't set enforcing status to '0' invalid argument"
i tried googling and tried some stuff but no luck.

Note: Is there something to do with the kernel coz i am on Sultan Kernel and not sure if its build for only enforcing or only permissive.
I am on du rom.you should type su before setenforce 0
 

jallenhayslett

Senior Member
Dec 23, 2012
479
105
63
Please provide carrier details in your post guys! With that being said, has anyone got it to work on Straight Talk (Verizon or ATT sim?)
I'm back overseas now, but while I was home for the holidays I used a Straight Talk ATT sim and had no problems using the MagiskHide Props module to manually add the lines from this module:

https://forum.xda-developers.com/apps/magisk/module-v4-volte-enabler-t3649613

It was somewhat inconsistent though. Seemed to only work with certain people I called. Also, I use Google Voice when I'm home, so that may account for the inconsistency.

I haven't tried the method outlined by the OP, though. I've had a solid setup for months now and I'm a bit hesitant to try anything that might kink it up.

Edit:
Now that I think about it, I never checked the IMS Registration to be sure, so I can't be sure if it was actually working, but it would show the "HD" calling icon on the dialer screen when connected, so I just assumed it was working.
 
Last edited:

saperkus

Senior Member
Dec 16, 2010
55
39
0
Somewhere
Thank you for sharing this guide.
I can confirm, that VoLTE and VoWiFi is working fine in Orange Poland and PLAY (Poland). In case of PLAY, both services are disabled by default. You have to contact with service provider and ask them to enable WiFi Calling. By enabling it, VoLTE will be also enabled.
 
Last edited:

bige93

Senior Member
Dec 17, 2010
107
30
0
Szczecin
Thank you for sharing this guide.
I can confirm, that VoLTE is working in Orange Poland and VoLTE and VoWiFi is working in PLAY (Poland). In case of PLAY, both services are disabled by default. You have to contact with service provider and ask them to enable WiFi Calling. By enabling it, VoLTE will be also enabled.
Any chance to get WiFi calling working on Orange PL?
And will this work at all on OG Pixel?
 

saperkus

Senior Member
Dec 16, 2010
55
39
0
Somewhere
Any chance to get WiFi calling working on Orange PL?
It seems, that I haven't been patient enough in case of Orange PL... I have redone the tests and was able to make VoWiFi to work. There's a need to reboot the device after swapping SIM cards. After reboot, VoWiFi works fine.

And will this work at all on OG Pixel?
You're free to check it. I've checked on Nexus 5X and it didn't work at all.
 

bige93

Senior Member
Dec 17, 2010
107
30
0
Szczecin
It seems, that I haven't been patient enough in case of Orange PL... I have redone the tests and was able to make VoWiFi to work. There's a need to reboot the device after swapping SIM cards. After reboot, VoWiFi works fine.


You're free to check it. I've checked on Nexus 5X and it didn't work at all.
Do I have to use some special ("diag") version of the Magisk as it says it the 1st post? Can't find 'magisk diag' for Sailfish.
 

saperkus

Senior Member
Dec 16, 2010
55
39
0
Somewhere
Do I have to use some special ("diag") version of the Magisk as it says it the 1st post? Can't find 'magisk diag' for Sailfish.
This is a modded version of Magisk, which gives an ability to enable diagnostic port (normally it can't be enabled). It was prepared for Pixel 2 XL, but it also works fine with Pixel 2. I can't tell, if you need to use this version or not. Install standard Magisk version and check if you can enable this port using provided commands. If not, then it's up to you to decide, if you want to check modded version of Magisk or not.
 
  • Like
Reactions: bige93