How To Guide [GUIDE] Enabling Vo5G/VoNR on T-Mobile (plus VoLTE, VoWiFI, video calling for everyone else?)

Search This thread

LHui

Member
Sep 20, 2017
46
0
Google Pixel 7
Sorry to bother you. Is it accurate to say only these two lines matter to truly enable VoWifi? They don't seem to work just by themselves

<boolean name="carrier_default_wfc_ims_enabled_bool" value="true" />
<boolean name="carrier_wfc_ims_available_bool" value="true" />

I finally fixed my 5G issue for my Pixel 7 Pro after resetting all my network, data, bluetooth setting via that one-click without erasing my eSim AND re-performing Network Signal Guru.
O You refer to this link to see if the toilet is in effect.
 

LHui

Member
Sep 20, 2017
46
0
Google Pixel 7
Sorry to bother you. Is it accurate to say only these two lines matter to truly enable VoWifi? They don't seem to work just by themselves

<boolean name="carrier_default_wfc_ims_enabled_bool" value="true" />
<boolean name="carrier_wfc_ims_available_bool" value="true" />

I finally fixed my 5G issue for my Pixel 7 Pro after resetting all my network, data, bluetooth setting via that one-click without erasing my eSim AND re-performing Network Signal Guru.
Screenshot_20230321-025742.png

But my code works, yours doesn't work?
 

supermansaga

Senior Member
Mar 12, 2011
323
66
View attachment 5867989
But my code works, yours doesn't work?
Without pasting any additional lines of code, wifi-calling is already available on appearance for my CT physical SIM, except it won't work. And when I called 10000 customer service hotline for China telecom, they said no such feature currently. Not sure true or not. So supposedly even if paste in extra lines of codes, they still won't work because the carrier simply doesn't support it. I guess if you can experiment with CT, that would be great. China mobile may be in advance here technologically speaking. Thx
 

LHui

Member
Sep 20, 2017
46
0
Google Pixel 7
The .xml file is attached below. Would you please help me to find any mistakes in the file? The signal on my device shows 5G but the 'Vo5G' switch still does not appear in the settings menu after the .xml file is edited as the attachment.
After restarting the phone, do you see if this file retains your modified code?
e.g
<boolean name="vonr_enabled_bool" value="true" />
 

LHui

Member
Sep 20, 2017
46
0
Google Pixel 7
After restarting the phone, do you see if this file retains your modified code?
e.g
<boolean name="vonr_enabled_bool" value="true" />
File permissions reserved 0600
<boolean name="enhanced_4g_lte_on_by_default_bool" value="true" />
<boolean name="carrier_volte_available_bool" value="true" />
<boolean name="vendor_hide_volte_settng_ui" value="false" />
<boolean name="vonr_enabled_bool" value="true" />
<boolean name="vonr_setting_visibility_bool" value="true" />
Test the above code, copy it to the second line or the last last line
under test
 
Last edited:

howardfok

Member
Jan 9, 2020
12
0
After restarting the phone, do you see if this file retains your modified code?
e.g
<boolean name="vonr_enabled_bool" value="true" />
The code in .xml file is the same, and I have tried many times, including different sequences, putting the code to the first line or the last but one line. Vo5G option does not show up in the menu. Frustrating!
Every line is in the file except the 4G LTE line, is this indispensable?
<boolean name="enhanced_4g_lte_on_by_default_bool" value="true" />
 

LHui

Member
Sep 20, 2017
46
0
Google Pixel 7
.xml文件中的代码是一样的,我试过很多次,包括不同的顺序,把代码放到第一行或者最后一行。菜单中未显示 Vo5G 选项。令人沮丧!
文件中除了4G LTE那一行,每一行都在,这个是不可或缺的吗?
<boolean name="enhanced_4g_lte_on_by_default_bool" value="true" />
this is mine you see.
 

Attachments

  • carrierconfig-com.google.android.carrier-8986000019238723xxx-1435.xml
    10.4 KB · Views: 64

howardfok

Member
Jan 9, 2020
12
0
this is mine you see.
Put your file to /data/user_de/0/com.android.phone/files/ but Vo5G switch still does not appear.
But it gave me some hints! The "carrier_config_version_string" in your file is chinamobile_cn-43000000048.12.
After put the file under the path, reboot, and check the SIM settings, the string in 'carrier settings version' is still chinamobile_cn-43000000706.58, which remains the same as my file!!!
The .xml file is the same as yours when I pull it out, which means the file is saved to the path correctly.
To sum up, my device reads the very origin .xml file from the carrier (though the file has been edited many times, no Vo5G boolean sentence in it, of course), even after the file is edited and even is replaced by yours. To solve the problem, is to find out how to make the device read the edited file rather than the original one from the carrier. Could you give me some advice?
 

LHui

Member
Sep 20, 2017
46
0
Google Pixel 7
<item value="1" />
<item value="2" />
</int-array>
<boolean name="vonr_enabled_bool" value="true" />
<boolean name="vonr_setting_visibility_bool" value="true" />
<boolean name="vendor_hide_volte_settng_ui" value="false" />
<boolean name="editable_enhanced_4g_lte_bool" value="true" />
<boolean name="editable_wfc_mode_bool" value="true" />
<boolean name="enhanced_4g_lte_title_variant_bool" value="true" />
<int name="enhanced_4g_lte_title_variant_int" value="1" />
<boolean name="enhanced_4g_lte_on_by_default_bool" value="true" />
<boolean name="hide_enhanced_4g_lte_bool" value="false" />
<int name="lte_plus_threshold_bandwidth_khz_int" value="1" />
<int name="nr_advanced_threshold_bandwidth_khz_int" value="1" />
<boolean name="hide_lte_plus_data_icon_bool" value="true" />
<boolean name="lte_enabled_bool" value="true" />
<boolean name="show_data_connected_roaming_notification" value="true" />
<boolean name="show_carrier_data_icon_pattern_string" value="true" />
<boolean name="carrier_volte_available_bool" value="true" />
<boolean name="carrier_default_wfc_ims_enabled_bool" value="true" />
<boolean name="carrier_wfc_ims_available_bool" value="true" />
<boolean name="carrier_vt_available_bool" value="true" />
<boolean name="carrier_supports_ss_over_ut_bool" value="true" />

Did you test the magisk module?
In addition, if you test these core codes, it may be that your sim card supplier does not have VO5g enabled or your phone accessory does not have VO5g enabled.
It is recommended to test the magisk module
 

howardfok

Member
Jan 9, 2020
12
0
<item value="1" />
<item value="2" />
</int-array>
<boolean name="vonr_enabled_bool" value="true" />
<boolean name="vonr_setting_visibility_bool" value="true" />
<boolean name="vendor_hide_volte_settng_ui" value="false" />
<boolean name="editable_enhanced_4g_lte_bool" value="true" />
<boolean name="editable_wfc_mode_bool" value="true" />
<boolean name="enhanced_4g_lte_title_variant_bool" value="true" />
<int name="enhanced_4g_lte_title_variant_int" value="1" />
<boolean name="enhanced_4g_lte_on_by_default_bool" value="true" />
<boolean name="hide_enhanced_4g_lte_bool" value="false" />
<int name="lte_plus_threshold_bandwidth_khz_int" value="1" />
<int name="nr_advanced_threshold_bandwidth_khz_int" value="1" />
<boolean name="hide_lte_plus_data_icon_bool" value="true" />
<boolean name="lte_enabled_bool" value="true" />
<boolean name="show_data_connected_roaming_notification" value="true" />
<boolean name="show_carrier_data_icon_pattern_string" value="true" />
<boolean name="carrier_volte_available_bool" value="true" />
<boolean name="carrier_default_wfc_ims_enabled_bool" value="true" />
<boolean name="carrier_wfc_ims_available_bool" value="true" />
<boolean name="carrier_vt_available_bool" value="true" />
<boolean name="carrier_supports_ss_over_ut_bool" value="true" />

Did you test the magisk module?
In addition, if you test these core codes, it may be that your sim card supplier does not have VO5g enabled or your phone accessory does not have VO5g enabled.
It is recommended to test the magisk module
Did not fix after install the magisk module from your github page. The device still reads the orginal .xml file from the carrier CMCC, I think.
 

sronweb

Senior Member
I'm with italian SIM card on Pixel 6 Pro actually on Evolution X rom., which does not work in 5G with my operator (Fastweb), but I just see that 5G is working flashing last android beta.
As I read from OP the main scope of this guide is to enable Vo5G etc but firsly the phone need to have 5G enabled (which is not my case yet), so I need to figure out how to do it, maybe is possible to get the necessary configuration or radio module from last android beta or need to wait until the beta will be deployed as stock rom in the next months.... ( I guess no imei or phone model as it's working with last QPR beta 3).

PS: I found this thread here and 5G now seems to be enabled, as well Vo5G. I love XDA :)
 
Last edited:

Top Liked Posts

  • There are no posts matching your filters.
  • 15
    Update: Android 13 Beta 2 includes Vo5G for T-Mobile, Metro, and Assurance.

    The file you want to edit will look similar to this:
    /data/user_de/0/com.android.phone/files/carrierconfig-com.google.android.carrier-8901260570715066153-1.xml

    Your carrier will likely have a different xml file name. Vo5G should also work for Metro and T-Mobile MVNOs like Mint. Not sure if any other carriers support it. When in doubt, ls the folder. If you are dual-sim, pick the right one.

    Root file explorers and editors might not see this file but give it a try. Probably easier to just do this on the device.

    You can also do this from command line or do a weird sequence of copies, pulls, edits, pushes with adb and your favorite text editor. You need root.

    Example:
    adb shell
    su
    cp /data/user_de/0/com.android.phone/files/carrierconfig-com.google.android.carrier-8901260570715066153-1.xml /sdcard/
    exit
    exit
    adb pull /sdcard/carrierconfig-com.google.android.carrier-8901260570715066153-1.xml
    *edit file*
    adb push carrierconfig-com.google.android.carrier-8901260570715066153-1.xml /sdcard/
    adb shell
    su
    cp /sdcard/carrierconfig-com.google.android.carrier-8901260570715066153-1.xml /data/user_de/0/com.android.phone/files/
    reboot

    Add or edit these items before the </bundle> at the end. You can combine.

    For Vo5G:
    <boolean name="vonr_enabled_bool" value="true" />

    For VoLTE (experimental):
    <boolean name="carrier_volte_available_bool" value="true" />

    For VoWiFi (experimental):
    <boolean name="carrier_default_wfc_ims_enabled_bool" value="true" /> <boolean name="carrier_wfc_ims_available_bool" value="true" />

    For VT carrier video calling (experimental, seems to set the toggle with my AT&T sim):
    <boolean name="carrier_vt_available_bool" value="true" />

    Reboot. Enjoy.

    Experimental means experimental. Try at your own risk. Additional flags to properly config your carrier or use when roaming are likely needed.

    To test Vo5G, the best way is to set NR-only in *#*#4636#*#* and then try to dial your voicemail. I have not tested ViNR/Vi5G (Video over 5G). Your phone will typically only use Vo5G as a last resort otherwise. Be sure to set back to NR/LTE/GSM/WCDMA when done.

    And no, I don't know how to enable 5G for your phone in an unsupported country/carrier. I have a few leads on where the xml files may control 5G but again, untested. Or it's deep in the modem package's config files and not something I want to mess with. I'm just laying out my research. Your carrier may block or whitelist these features by IMEI or plan. At least that's the case for my AT&T sim.

    Background:
    This phone launched without Vo5G support. Or did it? When Android 13 DP1 came out, this was left enabled, among other goodies in the carrier settings and modem. When subsequent builds came out, Vo5G was gone regardless of modem or carrier config pb file overrides. Turns out I was looking in the wrong place. Credit to @foobar66 for laying a great foundation in the original VoLTE thread and ideas on how these kinds of edits can be Magisk modules. For the VoLTE item, when I set to false in the xml, I could no longer place calls in 4G or 5G modes on T-Mobile. It didn't shift down to HSPA+ though as a fallback. And yes, I know that T-Mobile is actually using an VoLTE/EPS core for Vo5G, but it's still Vo5G as far as the phone cares.

    oriole:/ # logcat | grep -i vonr 04-28 23:55:50.668 2473 2473 D VoNrSettings: init: 04-28 23:55:50.668 2473 2473 D VoNrSettings: mHas5gCapability: true,mIsNrEnabledFromCarrierConfig: true,mIsVonrEnabledFromCarrierConfig: true,mIsVonrVisibleFromCarrierConfig: true
    1
    Tested from China and it's not working when I tried to enable 5G. I'm using China Telecom and apparently it's an unsupported carrier.
    I think we need and Carrier configuration file from a sim from a supported country to do a comparison and merge... Every sim from every carrier create a specific .XML file
    1
    I think we need and Carrier configuration file from a sim from a supported country to do a comparison and merge... Every sim from every carrier create a specific .XML file
    Maybe we can get the corresponding operator profile through the 5g Samsung mobile phone (exynos)that has been root? Translation from Google - form China
    1
    Isnt your whole guide based on editing the carrier config?
    It is, but I've been speaking with other folks such as Gabe from the bounty Telegram. The portion I removed really only concerned 5G toggles in menus and not the ability to actually use it. Some carriers don't even let you select 5G as an option, that's all I was able to override.

    I think we need and Carrier configuration file from a sim from a supported country to do a comparison and merge... Every sim from every carrier create a specific .XML file
    I haven't seen anything in the carrier config files that suggests 5G can be enabled there. At most, you can control NSA vs SA or defining specific bands that need to be supported like n77, but actually telling the phone to use 5G seems to be at the modem level.
    1
    The July update FINALLY allowed me to enable wi-fi calling (straight talk, verizon sim).
    But, I still can't enable VoLTE. When I try to select it, it is grayed out?
    Any hacks for that??
    No without root