Related
After over a week of trying, I've come up with a solution to enable WiFi Calling (probably also VoLTE) in Fulmics ROM for LG G6 and probably G5 running any stock based ROM.
THIS GUIDE WILL ONLY WORK IF YOUR DEVICE IS ON THE LIST OF YOUR CARRIER'S VOWIFI/VOLTE SUPPORTED DEVICES AND THE SERVICE IS ENABLED THROUGH AN OTA UPDATE FOR YOUR STOCK, BRANDED ROM PROVIDED BY YOUR CARRIER!
I don't believe in magic, you shouldn't either so don't think this guide will make VoWiFi/VoLTE work on your device regardless of your carrier's support for your phone model.
Also, if your provider offers VoLTE/VoWiFi through an external app available in Play Store, don't bother reading any further.
General idea described in this guide is to tweak your rom in a way that it is recognized by your carrier as their own VoLTE/VoWiFi enabled build that has a "green light" for IMS and Xcap apns registration in your provider's VoLTE/VoWiFi service. During my attempts you make the service work on my G6 running V10t based Fulmics ROM i discovered that adding IMS and Xcap apns plus getting all the IMS and GPRI VoLTE/WoWiFi hidden menu settings right is not enough. I had everything set up right and still couldn't make a WiFi call. Then it occured to me that maybe i can't make it work because Fulmics ROM is based v10t, and my provider's VoLTE/WoWiFi enabled rom is the v10h? So i tweaked Fulmics 1.6, then 2.0 so it masks itself in front of my provider as v10h while in fact it still is v10t Fulmics ROM 2.0. And guess what... IT WORKED!!! My Carrier's IMS and Xcap apns, manually added by me to the default open-eu apn list storred in /system/etc/apns-conf.xml, got registered in the service activating WiFi Calling on my device.
How to do it step-by-step guide below
1. PREREQUISITES:
- /OP/[YOUR CARRIER'S CUST FOLDER IN XXX_XX NAME FORMAT] in your main dir /root. If you only have OPEN_EU in your /OP you must get your carrier's specific cust folder or install Fulmics over your carrier's VoLTE/VoWiFi enabled rom then the cust folder you need will appear in /OP
- build.prop file from your Carrier's VoLTE/VoWiFi enabled rom for your LG model (make sure following line is in the file: ro.lge.cupp_capss.rootdir=/OP
- /OP dicectory in your device main root directory with your carrier's VoLTE/VoWiFi enabled ROM's subfolder (XXX_XX format). OPEN-EU or
GLOBAL-COM are not the ones .
- files from your carrier's rom: /root/data/ipsec/wo_apn.conf, /root/data/ipsec/wo/apn_xcap.conf
(You can try without those 2 files if you can't get them).
2. TO DO:
!!! AT SOME POINT OF CHANGING STUFF LISTED BELOW YOU WILL GET ALOT OF FC OF VARIOUS APPS. DON'T PANIC, JIST REBOOT YOUR DEVICE AND CARRY ON WITH CHANGES !!!
- in /OP directory delete folder _COMMON if you have one
- in /OP directory create a new directory called SUPERSET and set perms to 755
- copy all content from your carrier specific folder in /OP to SUPERSET. You can also just try renaming cour carrier's folder to SUPERSET instead of creating new filder and copying stuff to it.
- edit cust_group_mapping.cfg in /OP and change whatever you have after = to GLOBAL-COM
- open cust_path_mapping.cfg in /OP and make sure you have 999999,99=/OP/SUPERSET there on the list of providers
-edit official_op_resize.cfg and add SUPERSET_SIZE=[copy size value of your carrier's folder which should also be listed in the file]
-in /OP/SUPERSET (with your carrier's files coppied) edit cust.prop and in second line in the file change whatever you have after = to SUPERSET
- edit your rom current build.prop file and copy all additional stuff (in my case it was all the Fulmics ROM part of build.prop so from #Software Version down) to the build.prop acquired from your carrier's VoLTE/VoWiFi enabled rom. Add the coppied stuff at the bottom of the list.
- add following lines at the end of stuff coppied to your carrier's build.prop from step above:
persist.sys.cust.lte_config=true
persist.lg.data.iwlan.enable=true
# Debug Options
persist.dbg.ims_volte_enable=1
persist.dbg.volte_avail_ovr=1
persist.dbg.vt_avail_ovr=1
persist.dbg.wfc_avail_ovr=1
# Radio Options
persist.radio.rat_on=combine
persist.radio.data_ltd_sys_ind=1
persist.radio.data_con_rprt=1
persist.radio.calls.on.ims=1
# applying GPRI auto-commit
ro.lge.radio_gpri=1
ro.lge.amrwb_gpri=1
wlan.lge.softap5g=false
# 2015-10-12 [email protected] LGP_DATA_IWLAN [START]
persist.lg.data.iwlan=1
persist.lg.data.iwlan.ipsec.ap=1
# 2015-10-12 [email protected] LGP_DATA_IWLAN [END]
Save the build.prop file and place it over your current system default build.prop. set perms to 644
- open your device's hidden menu, go to
Field Test->GPRI VoLTE/VoWiFi->UX and tick 3rd, 4th, 5th, 6th and 9th for WoWiFi only, all except 8th for VoLTE/VoWiFi and 1st and 2nd for VoLTE only.
- go to your apns in network settings and make sure you have all the apns needed (in my case the are: internet, mms, ims and xcap). If you don't have them, try sending settings request message to your carrier's apn service center, if that doesn't help, add the apns manually (you must find your carrier's specific manual settings on the internet). You can also edit /system/etc/apns-conf.xml file and add missing apns manually to the list in above file. To do that you must find your carrier's apns on the list first, (list order by MCC-MNC code) under your carrier's last apn enter your VoLTE/VoWiFi apns in the same way the other apns in the file are typed.
-save apns-conf.xml, go back to apn list in network settings, tap overview->restore defaults and the missing apns you added to your xml file should appear on the list in network settings.
-make sure you have all permissions right of the created/coppied/edited files and reboot your device.
When your phone boots back up to Fulmics you should have your carrier's boot animation instead of default LG one, then you should see initial boot screen with "android is setting up" for a couple of seconds, then your homescreen. When configuring of your sustem is done, open quick settings and your VoLTE and WiFi Calling tiles should appear there. Turn on what you want and test if it's working. Remember, with VoWiFi you must have both WiFi and WiFi calling ON. The easiest way to tell if WiFi Calling is active is the presence of a headphone with little WiFi icon on the status bar and other places in your dialer etc. To test, turn on airplane mode, wait till WiFi gets turned off, turn it back on in airplane mode, wait for WiFi calling icon on status bar and try to make a call with airplane mode on .
REMEMBER! This guide will will only work if your carrier verifies WiFi enabled devices by 3 conditions: 1. Device supported, 2. Apns present, 3. ROM build match (info from build.prop).
I might have forgotten about something (or not ) but will edit if or when questions start to be asked
A picture of WiFi Calling working on my device with Fulmics rom 2.0 below. (WiFi Calling icon next to WiFi icon in status bar.
@mrbeem tried flashing back the kdz trough lgup but in OP i found only three folders: _COMMON, lost+found and OPEN_EU, plus a lot of individual files.
Any clues? Can you specify what files the operator folder should contain? Thanks in advance!
Killua96 said:
@mrbeem tried flashing back the kdz trough lgup but in OP i found only three folders: _COMMON, lost+found and OPEN_EU, plus a lot of individual files.
Any clues? Can you specify what files the operator folder should contain? Thanks in advance!
Click to expand...
Click to collapse
What rom did you flash in LG UP? Was it your provider's stock ROM with WiFi Calling service enabled or was it Open EU rom? OP should contain your carrier's config files of you flash your provider's ROM. The files should be in a separate folder with your Carrier's name (for example, Vodafone Italy should have a folder in /OP named VDF_IT etc.). Carrier specific folder should contain subfolders called: config, overlay, apps, media, poweron, poweroff. Most impostant are: config and overlay. Also in /OP there should be 3 files apart from the subfolders: cust.prop, official_op_resize.cfg and except_buyercode.cfg
Pics of content of cust.prop and official_op_resize.cfg from my carrier's folder (P4P_PL)
mrbeem said:
What rom did you flash in LG UP? Was it your provider's stock ROM with WiFi Calling service enabled or was it Open EU rom? OP should contain your carrier's config files of you flash your provider's ROM. The files should be in a separate folder with your Carrier's name (for example, Vodafone Italy should have a folder in /OP named VDF_IT etc.). Carrier specific folder should contain subfolders called: config, overlay, apps, media, poweron, poweroff. Most impostant are: config and overlay. Also in /OP there should be 3 files apart from the subfolders: cust.prop, official_op_resize.cfg and except_buyercode.cfg
Click to expand...
Click to collapse
The OPEN EU that Bridge downloads when my phone is connected, and is the same one which is referred as "Vodafone Italy" on LG Firmware.
In /OP i have these files: op_list, official_op_resize, custom_path_mapping, custo_group_mapping, client_id, buerycode, strangely are almost the same found on fulmics.
In Open_EU i've overlay and config folders, and these files: official_op_resize.cfg, except_buyercode.cfg and cust.prop.
The strange thing is that the vodafone brand remains also with the fulmics, in fact at everye clean installation i found vodafone apps and vodafone configuration before restore my lgbackup, what a mess lol
Killua96 said:
The OPEN EU that Bridge downloads when my phone is connected, and is the same one which is referred as "Vodafone Italy" on LG Firmware.
In /OP i have these files: op_list, official_op_resize, custom_path_mapping, custo_group_mapping, client_id, buerycode, strangely are almost the same found on fulmics.
In Open_EU i've overlay and config folders, and these files: official_op_resize.cfg, except_buyercode.cfg and cust.prop.
The strange thing is that the vodafone brand remains also with the fulmics, in fact at everye clean installation i found vodafone apps and vodafone configuration before restore my lgbackup, what a mess lol
Click to expand...
Click to collapse
Ok so you have the everything. Just delete _COMMON filder, create SUPERSET and copy all from OPEN_EU to SUPERSET. Basicly follow the steps. Build.prop is most important part. Plus check if you have all apns needed for WiFi Calling, if not, add manually as described. It is a mess, but the key is to put that mess in an order that enables WiFi Calling. Carrier's boot animation on fulmics is a very good indication that you're on the right path to make it work. Just a small tip... Maybe start from the UI part to enable the ability to turn VoWiFi on/off and then the rest. This way you'll be able to see if or when your service becomes active. So.....
1. Copy this to your carrier's build.prop after you've coppied the Fulmics part:
persist.sys.cust.lte_config=true
persist.lg.data.iwlan.enable=true
# Debug Options
persist.dbg.ims_volte_enable=1
persist.dbg.volte_avail_ovr=1
persist.dbg.vt_avail_ovr=1
persist.dbg.wfc_avail_ovr=1
# Radio Options
persist.radio.rat_on=combine
persist.radio.data_ltd_sys_ind=1
persist.radio.data_con_rprt=1
persist.radio.calls.on.ims=1
# applying GPRI auto-commit
ro.lge.radio_gpri=1
ro.lge.amrwb_gpri=1
wlan.lge.softap5g=false
# 2015-10-12 [email protected] LGP_DATA_IWLAN [START]
persist.lg.data.iwlan=1
persist.lg.data.iwlan.ipsec.ap=1
# 2015-10-12 [email protected] LGP_DATA_IWLAN [END]
2. Replace stock fulmics build.prop with the one from your carrier's rom with Fulmics part and above lines added. Check permissions and reboot.
3. Ho to hidden menu Field Test->GPRI VoLTE/VoWiFi->UX and tick all ON apart from 1, 2 and 7. Go back to main hidden menu screen and to to Service Menu->WoWiFi and change value to 1.
4 reboot and check if you have WiFi Calling QS Tile added and WiFi Calling settings enabled in call settings.
mrbeem said:
Ok so you have the everything. Just delete _COMMON filder, create SUPERSET and copy all from OPEN_EU to SUPERSET. Basicly follow the steps. Build.prop is most important part. Plus check if you have all apns needed for WiFi Calling, if not, add manually as described. It is a mess, but the key is to put that mess in an order that enables WiFi Calling. Carrier's boot animation on fulmics is a very good indication that you're on the right path to make it work
Click to expand...
Click to collapse
This evening i'll try, thanks!
@mrbeem so i have done almost all the procedura, just one thing missing, apns. Do you know if there are any for vodafone? Mine is italy, but who knows, it could work with other vodafone ahahaha
Killua96 said:
@mrbeem so i have done almost all the procedura, just one thing missing, apns. Do you know if there are any for vodafone? Mine is italy, but who knows, it could work with other vodafone ahahaha
Click to expand...
Click to collapse
What apns do you currently have on the list?
Can you check what is your sim MCC-MNC CODE? Go to hidden menu, field test->SIM Info and check values under MCC and MNC. Is it 222 and 10??
mrbeem said:
What apns do you currently have on the list?
Can you check what is your sim MCC-MNC CODE? Go to hidden menu, field test->SIM Info and check values under MCC and MNC. Is it 222 and 10??
Click to expand...
Click to collapse
These three
Killua96 said:
These three
Click to expand...
Click to collapse
Ok. I found apns for you. There are 3 more to add. Give me an hour or so and i will make apns-conf.xml for you. Make backup of your apn-conf.xml file and when i send you new one you will just replace your file with mine, go to settings wi
th apn list (one from screen above) and hit restore defaults .
One more thing... Can you tap on the top apn from the list to open it? Then scroll down to see apn type , take a screenshot and post it here
mrbeem said:
Ok. I found apns for you. There are 3 more to add. Give me an hour or so and i will make apns-conf.xml for you. Make backup of your apn-conf.xml file and when i send you new one you will just replace your file with mine, go to settings wi
th apn list (one from screen above) and hit restore defaults .
One more thing... Can you tap on the top apn from the list to open it? Then scroll down to see apn type , take a screenshot and post it here
Click to expand...
Click to collapse
Here
Thanks for everything, hope it'll work xD
Killua96 said:
Here
Thanks for everything, hope it'll work xD
Click to expand...
Click to collapse
PM me with your email address and i will send you edited apns-conf.xml. replace your /system/etc/apns-conf.xml with the one i will send you, go to apn settings tap 3dots at the upper right corner and hit restore defaults and updated apns should come up. Don't forget to tap the empty circle on the right by your internet apn to set the top one as default. I've seen on your screenshot the circle is empty and it shouldn't be
Struggling to get wifi calling on my device. H870 Fulmics O2 UK
Spoke to O2 who told me it doesn't support wifi calling?!
Even though the app allowed me to turn wifi calling on etc?!?
Need help with this as I get no signal at work
Can anyone share me your volte/vowifi working OP files.
Zerter said:
Can anyone share me your volte/vowifi working OP files.
Click to expand...
Click to collapse
:highfive: +1 i need that files.
Isn't enabling WiFi Calling in hidden menu enough to make it work? It seems to be working for me.
[email protected] said:
:highfive: +1 i need that files.
Click to expand...
Click to collapse
Link to the files below. Instructions in .txt file inside the folder.
https://mega.nz/#F!4cdDzTBR!S-_R0c3niD1PsIiJAUwVPQ
Vatt`ghern said:
Isn't enabling WiFi Calling in hidden menu enough to make it work? It seems to be working for me.
Click to expand...
Click to collapse
Which ROM do you have installed?
Im using latest fulmics. And also i'm trying to create manually ELE_EE configuration. I have all information that i need from operator but not sure is it possible. Anyway i got this phone from LG baltics to do it.
I'm writing this post to track my efforts to enable VoLTE and WiFi Calling on my X Compact. To begin with, I don't have a solution yet. I think I understand a lot of how it's supposed to work, but there are still some things I don't know. Hopefully others will be able to chime in and provide some answers.
I use my phone on MetroPCS in the USA. They are an MVNO for T-Mobile (and also owned by T-Mobile). I know that they support both features as my wife's Moto X4 is able to use them.
The X Compact does support VoLTE:
https://support.sonymobile.com/us/x...do-i/801930746ffcf563015c0bfaac370057e6/#gref
The problem is, it's only supported on specific carriers. The first requirement is that the carrier supports VoLTE (MetroPCS). The second requirement is that the feature has to be approved by Sony to be used on that carrier. This is where people have problems. I don't know how Sony makes the approval list, but my carrier isn't on it.
Before digging into this, I had planned on upgrading to the XZ1 Compact because it is specifically advertised as having VoLTE working on T-Mobile. I bought one and expected it to work out of the box on MetroPCS, but it didn't. I went back and forth with both MetroPCS and Sony and it still didn't work. This goes back to the list I mentioned above. If your carrier isn't on it, the phone won't work.
So I'm stuck with a phone that would work perfectly well with these features, but due to carrier/manufacturer approval issues, won't. Moving forward, I'll discuss the things that I've tried to get it to work.
Try making the XC work like the XZ1C
As I mentioned above, the XZ1C supports both features natively on T-Mobile. Why it works on T-Mobile came up in the following thread trying to get VoLTE and fingerprint support at the same time on T-Mobile:
https://forum.xda-developers.com/xperia-xz1-compact/help/volte-tmo-fingerprint-sensor-t3666387
So why does the XZ1C work on T-Mobile? @pbarrette did a good job of explaining the process in this post:
https://forum.xda-developers.com/showpost.php?p=74159245&postcount=105
The XZ1 and the XZ Premium both use the same chipset as the XZ1C, but those features don't work on T-Mobile. In trying to figure out why, @pbarrette determined the mechanism Sony uses to enable this feature. That work is covered in the following thread:
https://forum.xda-developers.com/xz-premium/help/volte-t-mobile-enabled-t3627567/
Simply, the XZ1C has additional files which are triggered to be used when a T-Mobile SIM is placed in the phone. To get the features to work on the XZ1 and XZP, you need to copy the appropriate files on to the phone. @pbarrette created a flashable zip file which does this and it works for those phones. The most important file to get the features working is the proper modem binary file (/etc/customization/modem/), tmobile_us_ims on the XZ1C. Unfortunately, there's no corresponding file on the XC.
I thought that I could just copy the binary file from the XZ1C, but the phones use different hardware so it's likely that a file from one phone won't work on another. I did a file comparison of the default (XC: amss_fsg_kugo_tar.mbn, XZ1C: amss_fsg_lilac_tar.mbn) and T-Mobile (XC: amss_fsg_kugo_tmobile_us_tar.mbn, XZ1C: amss_fsg_lilac_tmobile_us_tar.mbn) modem binary files from each phone, and they're quite different. So it seems like that option won't work.
Even if the XZ1C files did work on the XC, the problem still remains that the XZ1C doesn't work on MetroPCS. So I'd get a franken-ROM that doesn't do what I want it to.
Afaik your operator need to enable volte for your specific device. Here, my operator doesn't support xc and even if I force enable volte it still doesn't work. I contacted them and they said that they have to do some tests and then enable it to use volte.
maluus said:
Afaik your operator need to enable volte for your specific device. Here, my operator doesn't support xc and even if I force enable volte it still doesn't work. I contacted them and they said that they have to do some tests and then enable it to use volte.
Click to expand...
Click to collapse
You might be right, but some of the success stories that I've read lead me to believe that it's not device specific. I'll dig into that in a later post. I've contacted my carrier and according to them, everything is set on their end, so that just leaves the device being the issue.
Try making the XC work like the XZ1C, Part 2
Per @pbarrette, the proper files are loaded only when a SIM with the correct ID is inserted into the phone. For the XZ1C, this info is located in /overlay/com.sonymobile.customizationselector-res-305.apk in a file called configuration_selectors.xml. A file of the same name is also present in the same location on the XC. The sim_config_id can be found by entering the following command with USB debugging enabled:
Code:
adb shell getprop persist.sys.sim_config_ids
When I enter this, I get S8957.1. That value isn't in the configuration_selectors.xml list so the proper files aren't loaded and the default modem binary is used. If it were in the configuration_selectors.xml list, a config_id value of 400 would be associated with the sim_config_id (408 for XZ1C). Your config_id value can be found using the following command:
Code:
adb shell getprop ro.semc.version.cust.active
When I enter this command, I end up with a blank. I believe that this is because the default modem binary is being used, but this is just a guess. Ultimately, it means that the SIM isn't recognized and therefore the features won't work.
There's another file that's part of /overlay/com.sonymobile.customizationselector-res-305.apk, and that is service_providers.xml. I believe that this is where the proper sim_config_id is selected, based upon the MCC and MNC for the carrier. In my case, those values are 310 and 260, respectively. There are two entries which match these values:
Code:
<service_provider_sim_config sim_config_id="S8957.1">
<mcc>310</mcc>
<mnc>260</mnc>
<sim directory="7FFF" file="6F3E">6D</sim>
</service_provider_sim_config>
<service_provider_sim_config sim_config_id="S264.8">
<mcc>310</mcc>
<mnc>260</mnc>
</service_provider_sim_config>
There have been times in the past that my phone has been assigned the sim_config_id or S264.8, but most of the time it's S8957.1. I'm not sure what the sim directory tag refers to. If anyone knows what this means, please let me know as it might be helpful.
So my first strategy of trying to mimic the way the XZ1C works doesn't appear to be an option. A question for others: would it be possible to decompile the relevant files, change the xml files to reference the id's that I'm seeing, recompile and replace the APK's, all without sending my phone into a bootloop? Yes, see below.
But even if that were to work, there's no corresponding modem binary file on the XC, so probably no VoLTE. But there are other modem binary files. Could I just rename one of those? Would using the file from the XZ1C crash the modem on the XC? Yes, see below.
Try making the XC work like the XZ1C, Part 3
Alright, I've had partial success. Using some of the overlay files from the flashable zip that @pbarrette created, I was able to get the VoLTE and WiFi Calling menus to show up in settings. Here's a summary:
Flash old firmware. I used this one available on XperiFirm: F5321_34.1.A.1.198_Commercial and Journalists (1305-9054). It's not strictly necessary to flash the old firmware, but you need root, and root requires an unlocked bootloader, and unlocking the BL will delete your TA partition. I wanted to backup the TA partition for my DRM keys. In order to use the backup tool, you have to use an older version of Android so that the exploit used by the backup tool is still available.
Backup TA partition
Flash current firmware (34.4.A.2.118)
Unlock bootloader (use the Sony Mobile website for this)
Root phone (I used the method described here with the DRM fix option. The use-your-own-TA option didn't work for me.
https://forum.xda-developers.com/x-compact/how-to/stock-8-0-root-recovery-t3747479
Install the following files from the @pbarrette flashable zip:
/oem/modem-config/408/modem.conf
/oem/overlay/android-res-305.apk
/oem/overlay-408/android-res-310-408.apk
/oem/overlay-408/com.android.carrierconfig-res-310-408.apk
/oem/overlay-408/com.android.phone-res-310-408.apk
/oem/overlay-408/com.android.settings-res-310-408.apk
/oem/overlay-408/com.android.systemui-res-310-408.apk
/oem/system-properties/408/config.prop
You also need to install /oem/overlay/com.sonymobile.customizationselector-res-305.apk, but I had to modify the file from the XZ1C to get things to work. Within the APK, there's one XML file that needs to be updated to include the sim_config_id I'm seeing on MetroPCS. That is /res/xml/configuration_selectors.xml. I modified it to look like the following (with my addition in red):
Code:
<?xml version="1.0" encoding="utf-8"?>
<configurations>
<configuration config_id="408">
<sim_config_id>S264.1</sim_config_id>
<sim_config_id>S264.2</sim_config_id>
<sim_config_id>S264.3</sim_config_id>
<sim_config_id>S264.4</sim_config_id>
<sim_config_id>S264.5</sim_config_id>
<sim_config_id>S264.6</sim_config_id>
<sim_config_id>S264.7</sim_config_id>
<sim_config_id>S264.8</sim_config_id>
<sim_config_id>S264.9</sim_config_id>
<sim_config_id>S264.10</sim_config_id>
<sim_config_id>S264.11</sim_config_id>
<sim_config_id>S264.12</sim_config_id>
<sim_config_id>S264.13</sim_config_id>
<sim_config_id>S264.14</sim_config_id>
<sim_config_id>S264.15</sim_config_id>
<sim_config_id>S264.16</sim_config_id>
<sim_config_id>S264.17</sim_config_id>
<sim_config_id>S264.18</sim_config_id>
<sim_config_id>S8663.1</sim_config_id>
[COLOR="Red"]<sim_config_id>S8957.1</sim_config_id>[/COLOR]
</configuration>
</configurations>
To do this, I decompiled the Sony APK from the XZ1C, changed the file, recompiled the APK, signed the file, then placed the file in the /oem/overlay directory with Solid Explorer, and made sure the file permissions were correct.
It's worth mentioning that /oem/modem-config/408/modem.conf lists the modem binary file to be loaded when a T-Mobile SIM is detected. On the XZ1C, this is tmobile_us_ims and that's what modem.conf lists by default. You'll need to change this to one of the modem binary files contained on the XC. I tried using the tmobile_us_ims modem binary file from the XZ1C and it sent my phone into a bootloop. So it's confirmed that the XZ1C modem binary files aren't compatible with the XC. Just pick one from the /etc/customization/modem folder, like amss_fsg_kugo_a1_austria_ims_tar.mbn and list this in the file. You'll need to cut out the prefix and suffix, so just a1_austria_ims for this example. The prefix and suffix will get added by the phone when selecting the file.
Trigger a SIM check by CustomizationSelector. To do this, I deleted the file /data/data/com.sonymobile.customizationselector/shared_prefs/com.sonymobile.customizationselector_preferences.xml and rebooted (as suggested by @pbarrette here: https://forum.xda-developers.com/showpost.php?p=74560870&postcount=76 and here https://forum.xda-developers.com/showpost.php?p=74560870&postcount=77). After a couple of minutes, my phone stated that it needed to reboot to optimize for my network. Once it loaded back up, the proper overlays had been loaded and I could see the settings for VoLTE and WiFi Calling.
This is where my success stops. Without the proper modem binary file, it's a bit of a crapshoot to see if an existing file will work. To do this, just repeat steps 8 and 9 with a different modem binary file. I've tried a handful of these files, but no luck yet. There are 127 files, but I'm sticking with the ones that mention IMS or VoLTE. This reduces the total to 88, but it's still a lot of rebooting and waiting. The files I've tried so far are listed below.
amss_fsg_kugo_a1_austria_ims_tar.mbn
amss_fsg_kugo_a1_austria_volte_vowifi_tar.mbn
amss_fsg_kugo_bouygues_france_ims_tar.mbn
amss_fsg_kugo_bouygues_france_volte_vilte_tar.mbn
amss_fsg_kugo_ee_ims_tar.mbn
amss_fsg_kugo_singtel_ims_tar.mbn
amss_fsg_kugo_telefonica_uk_ims_tar.mbn
amss_fsg_kugo_telekom_germany_ims_tar.mbn
amss_fsg_kugo_tmobile_us_tar.mbn
amss_fsg_kugo_vivo_ims_tar.mbn
amss_fsg_kugo_vodafone_germany_ims_tar.mbn
amss_fsg_kugo_vodafone_spain_ims_tar.mbn
amss_fsg_kugo_vodafone_uk_ims_tar.mbn
amss_fsg_lilac_tmobile_us_ims_tar.mbn
So that's my current status. I'm not planning on doing anything else at this point, because I figured out a way to get my XZ1C working on MetroPCS with VoLTE and WiFi Calling. I'll write a bit about that over in the XZ1C forum. If anyone wants to continue looking into it, please provide an update.
Software Used
In case someone wants to work through this process on their own, here is the software that I used:
Flashtool: Used for flashing firmware to the XC via FTF files. This can also be used to extract the contents of some older SIN files.
http://www.flashtool.net/index.php
newflasher: An alternative to Flashtool. I didn't use this, but I saw it referred to a lot.
https://forum.xda-developers.com/cr...gress-newflasher-xperia-command-line-t3619426
UnSIN: This program can be used to extract the contents of more modern SIN files.
https://forum.xda-developers.com/crossdevice-dev/sony/tool-unsin-sin-v3-unpacker-t3128106
ext2explore: Tool to explore ext4 image files. Once you've used UnSIN, you end up with an ext4 file. This tool can explore the ext4 file and extract files from it.
https://sourceforge.net/projects/ext2read/files/Ext2Read ver 2.0/ext2explore 2.0 beta/
Google platform tools: This includes ADB, fastboot, etc. It comes with the Android SDK, but that file size is massive so Google conveniently packaged just the platform tools in a much smaller zip file.
https://developer.android.com/studio/releases/platform-tools
apktool: This is a tool to decompile/compile APK files. There are other tools out there, but this is the one that I used.
Tool download: https://ibotpeaches.github.io/Apktool/
Guide I used: https://forum.xda-developers.com/showthread.php?t=2213985
Flashable zip guide: I ended up editing the flashable zip from @pbarrette to include only the files I listed above. It was pretty straight forward to edit the script just looking at it, but this was a good resource for explaining things in more detail.
https://forum.xda-developers.com/an...-complete-shell-script-flashable-zip-t2934449
Dirtycow-based TA Dumper for Sony Xperia Devices: This what I used to backup my TA partition.
https://forum.xda-developers.com/crossdevice-dev/sony/universal-dirtycow-based-ta-backup-t3514236
sgs2toext4: This tool can convert an IMG file (eg. boot.img) to ext4. I used it in some of my tinkering (trying to get use-your-own-TA root option working) but I don't think you'll need it
https://forum.xda-developers.com/ga...n-zipalign-t1132724/post15333542#post15333542
Mate there is a magisk module to enable that menu options. But although enabled, neither volte nor vowifi does work without operator support. Does your operator list supported devices for volte? If so, you can risk to change the signatures of your device with a supported and identical platforms.
maluus said:
Mate there is a magisk module to enable that menu options. But although enabled, neither volte nor vowifi does work without operator support. Does your operator list supported devices for volte? If so, you can risk to change the signatures of your device with a supported and identical platforms.
Click to expand...
Click to collapse
Interesting. I've not heard of that module. MetroPCS doesn't list compatible devices as far as I know, but I know of unlocked devices that do work. Could you please provide a link to that module you mentioned?
I don't have Magisk installed but you can search volte in modules library. I think name was the volte enabler or something similar
maluus said:
I don't have Magisk installed but you can search volte in modules library. I think name was the volte enabler or something similar
Click to expand...
Click to collapse
Was it this one? If so, the module isn't doing anything that I'm not already doing. Is there a module that allows for using the Modem Switcher on Sony phones?
https://forum.xda-developers.com/apps/magisk/module-v4-volte-enabler-t3649613
camdecoster said:
Was it this one? If so, the module isn't doing anything that I'm not already doing. Is there a module that allows for using the Modem Switcher on Sony phones?
https://forum.xda-developers.com/apps/magisk/module-v4-volte-enabler-t3649613
Click to expand...
Click to collapse
Yes it is. Btw I noticed a phrase in OP which points out the problem as I stated earlier.
"My carrier supports VoLTE/VoWiFi but not on my device. I made this module to forcefully enable it to test if it worked (it hasn't so far)."
I don't know your provider but still it seems operator support is based on individual devices as it is in my case. When I first call the support center of my carrier the person told me that if my phone does support volte there shouldn't be a problem. I insisted that my phone supports volte and she said that she ll check with tech department and a few minutes later called me back saying indeed they don't support my device. long story short I can't use volte as of now. they support a device from loire platform so may be if I change identification of device to that one to trick the operator network to believe I use the supported device it may work but I have my doubts about consequences so I did not dare yet
maluus said:
Yes it is. Btw I noticed a phrase in OP which points out the problem as I stated earlier.
"My carrier supports VoLTE/VoWiFi but not on my device. I made this module to forcefully enable it to test if it worked (it hasn't so far)."
I don't know your provider but still it seems operator support is based on individual devices as it is in my case. When I first call the support center of my carrier the person told me that if my phone does support volte there shouldn't be a problem. I insisted that my phone supports volte and she said that she ll check with tech department and a few minutes later called me back saying indeed they don't support my device. long story short I can't use volte as of now. they support a device from loire platform so may be if I change identification of device to that one to trick the operator network to believe I use the supported device it may work but I have my doubts about consequences so I did not dare yet
Click to expand...
Click to collapse
My carrier does offer VoLTE and WiFi Calling and those features do work on unlocked phones, so I'm pretty sure it's a Sony problem. In fact, I recently got those features working on an XZ1C. It could work on an XC too, but I'm moving on to the XZ1C. I hope someone gets it to work. Good luck with your carrier.
Don't know if anyone interested, but I found this on a Chinese forum - http://bbs.gfan.com/forum.php?mod=v...rby=lastpost&typeid=&typeid=&orderby=lastpost Apparently, if you flash the 2 files in the link, (http://bbs.gfan.com/android-9530989-1-1.html), it will work. I was going to test it out, but you need an account with some Chinese file sharing service, and I didn't feel like trying to figure it out...
Thank you for the information.
Unfortunately, I am unable to register as the registration needs SMS code received on a Chinese phone number.
I hate when some service requests my phone number (or other irrelevant data) without any way to avoid it…
mp107 said:
Thank you for the information.
Unfortunately, I am unable to register as the registration needs SMS code received on a Chinese phone number.
I hate when some service requests my phone number (or other irrelevant data) without any way to avoid it…
Click to expand...
Click to collapse
2 files on that post (thanks [email protected] ).
Oreo flash CT_v1_xzs.zip , Pie flash CT_v2_xzp.zip .
BUT, that's for XZs and XZP, not for XC. If failed, you can flash oem.sin only (from .FTF firmware) to restore.
To enable VoLTE and Wifi Callling, we need two parts of modem configs.
1. core: *.mbn modem config of specific local carrier that locate in /system/etc/customization/modem/ .
2. guide: modem configs in /oem.
The 2nd part can be import easily from other sony models, but the KEY is 1st part config. If the specific local carrier config can't be found in /system/etc/customization/modem/ , we have to use QPST to put parameters manualy, or no way to enable VoLTE/VoWifi.
camdecoster said:
My carrier does offer VoLTE and WiFi Calling and those features do work on unlocked phones, so I'm pretty sure it's a Sony problem. In fact, I recently got those features working on an XZ1C. It could work on an XC too, but I'm moving on to the XZ1C. I hope someone gets it to work. Good luck with your carrier.
Click to expand...
Click to collapse
Yes, it's Sony's problem. To Sony, importing VoLET/VoWifi parameters of all support carriers is a piece of cake.
There's a post on a Chinese BBS about enable VoLTE:http://bbs.gfan.com/android-9543428-1-1.html
XG_Zepto said:
There's a post on a Chinese BBS about enable VoLTE:http://bbs.gfan.com/android-9543428-1-1.html
Click to expand...
Click to collapse
Has anyone here tried this for a US carrier? I tried to follow along with the translated version but my lack of fully understanding the process and the rough translations have made it very difficult.
Does anyone have experience with the X Compact on T-Mobile?
I was going to change from the iPhone SE (tired of Apple, but need a small phone), which has VoLTE and Wifi Calling out of the box. I have a Note FE which was made for Singapore and I was able to change the CSC to get VoLTE, but not Wifi Calling.
W/O VoLTE it's totally not worth it. Besides not being to use LTE while on a call, I read in the thread the OP referenced regarding the XZ1C, that getting Band 12 w/o VoLTE is also a problem.
And then there's the fingerprint sensor. If I install a European ROM to get it...
Will Rooting help any of the above?
Am I stuck with Apple? That's really depressing...
I've posted on a couple of other related threads about this but thought a fresh thread directly asking the question might help.
I have a UK G5 bought recently secondhand, it was on VM but is now unlocked and works fine on the Three SIM I've tested it on. It's been upgraded OTA by the previous owner to Oreo.
So, what's needed to make it work with WiFi calling on Three UK, or for that matter EE? I've tried the Oreo Three RoM & the Oreo Open EU RoM. I enabled WiFi calling via ADB, but no matter what I try, no menu appears giving the option to activate or use WiFi calling. There's also a setting in the 'Hidden Menu' to toggle WiFi calling but that made no difference either.
Both of the non-VM RoMs complain about being used on the wrong carrier's phone, I know that can be fixed by removing some files in root, but what this tells me is that there are files or settings on the phone that don't get erased with a factory reset. Is it possible to get these files or settings from a Three UK G5 and put them onto another G5?
I did read on another thread that someone had got an ex EE phone working with WiFi calling on a Three SIM, that was with a Nougat RoM. I'm not too sure about trying this as I've seen a couple of stories about bricking due to flashing a lower numbered Anti Rollback RoM.
Any thoughts welcome.
I've loaded a Three UK Nougat RoM and can see that all of the VoWiFi settings via ADB & the hidden menu are on but cannot see any VoWiFI menus. My phone is on Three UK, I'm not sure if there's a menu item for WiFi calling though..
I found a couple of pointers relating to OREO:
https://forum.xda-developers.com/showpost.php?p=78463793&postcount=136
And here, plus a few posts further down on the same page
https://forum.xda-developers.com/showpost.php?p=78584284&postcount=175
I've had some success in enabling WiFi calling on my G5 H850, after getting some ideas from reading these threads and thought I'd share some info, maybe there's a better way of doing this, if so, am happy to learn:
1, about the misc partition
https://forum.xda-developers.com/lg-g3/general/how-to-change-region-t2904951/page8
2, misc partition location on the G5
https://forum.xda-developers.com/lg-g5/help/little-help-misc-partition-h850-t3671068
My phone was originally sold by Virgin Media in the UK, my SIM contract is with Three.
I changed a couple of settings in the misc partition to make my phone think it was from Three.
I take no responsibility for anything that happens if anyone tries this themselves!
1, Unlock the bootloader to gain root access
https://forum.xda-developers.com/lg-g5/development/official-european-lg-g5-h850-bootloader-t3363040
2, Get a copy of the misc partition via DD (see first & second links above)
3, Make a copy of the copy, name one of them 'master' and put them in a safe place
4, Edit the second copy via a Hex Editor
At location 00014000 you will find the phone's MCC & MNC, I changed mine to 23420 (UK H3G)
At location 000D7000 you will find the Buyer Code, I changed mine to H3G_UK
5, Save the updated misc partition & copy it to the phone's internal storage. The thread that I linked at the top, shows the misc partition being saved to the 'sdcard' which on my phone turned out to be the internal storage.
6, Overwrite the phone's misc partition with the updated misc partition with DD.
7, Lock the bootloader
8, Using LGUP, flash the official Three UK OREO ROM to the phone
9, Start the phone, chances are it will not start properly due to some stuff left over from unlocking, if so you need to boot into recovery and reset to defaults
10, After going through the initial setup, check the dialler app settings and see if the WiFi calling option is there.
Does anyone know the correct NTCODE and BUYERCODE to brand an unbranded H850 to Vodafone Germany? I want to try the branded firmware because it supports VoLTE and VoWifi out of the box. I followed the instructions in the previous post but it does not work. The original NTCODE and BUYERCODE are "1","FFF,FFF,FFFFFFFF,FFFFFFFF,11" and OPEN_EU. I changed these to "1","262,02F,FFFFFFFF,FFFFFFFF,FF" and VDF_COM , flashed back the misc partition and after that I flashed the vodafone KDZ. Factory reset was also done but it still does not load the branding in the VDF_COM folder on the cust partition. The software version is reported as V30f_EUR_XX instead of V30f_VDF_COM. Is there something else I have to do? A Vodafone SIM card with MCC 262 and MNC 02 is inserted.
el-sahef said:
Does anyone know the correct NTCODE and BUYERCODE to brand an unbranded H850 to Vodafone Germany? I want to try the branded firmware because it supports VoLTE and VoWifi out of the box. I followed the instructions in the previous post but it does not work. The original NTCODE and BUYERCODE are "1","FFF,FFF,FFFFFFFF,FFFFFFFF,11" and OPEN_EU. I changed these to "1","262,02F,FFFFFFFF,FFFFFFFF,FF" and VDF_COM , flashed back the misc partition and after that I flashed the vodafone KDZ. Factory reset was also done but it still does not load the branding in the VDF_COM folder on the cust partition. The software version is reported as V30f_EUR_XX instead of V30f_VDF_COM. Is there something else I have to do? A Vodafone SIM card with MCC 262 and MNC 02 is inserted.
Click to expand...
Click to collapse
I'm not sure why your patching did not work, but I have turned off WiFI calling on my G5 because the call quality over WiFi is terrible. It may be that I did not find all of the changes that are needed.
I understand that this may be considered duplicate. However due to the title of the previous thread clearly stating that the effort there is closed, I though I open this up. I would really love to get more 4g bands working as I have no LTE service in my area. Here is a post from the aforementioned thread.
-------
Maybe Possible Solution
Just found this thread after I unlock carrier locked my Hisense B16C2G phone that can't be unlocked for almost 3 years. This is just hypothesis, I suggest to try this with concern.
There are several file that determine bands capability in the devices. Most of it is in NV partition, but from the discussion I know that you guys have tried some popular ways to unlock it, but it failed. Like my phone at first i believe its hardware locked too, but i just discovered some Chinese article about unlocking oneplus device. Maybe you can try it too.
Here it is:
1. Connect to QPST and open EFS explorer
2. In policyman folder there are 3 file that most likely can be the cause of this network restiction
carrier_policy.xml
post.xml (in my phone there is none)
rat_mask (in my case this file that restrict my network even after I change NV values to support all bands)
3. Compare all three file with other phone's that most likely have same architechture (maybe MI8 or Pixel). For rat_mask, make sure it have same bits number(compare with Hex Editor)
4. replace that carrrier_policy.xml(and any file that contain this name) and rat_mask with modified files or use you can use other unrestricted phone's instead
These file originally in modem.img. Some phone replace them back with the original file when boot, you can modified init.radio.sh to prevent that.
We can modify carrier_policy.xml in modem.img and flash it to the phone but i cant find where rat_mask located
5. Reboot and hope if it solve your problem
I can't find any reference about how to generate unrestricted rat_mask and device_config so make sure you backup your original file before you make modification. Sorry I can confirm whether it will work or not because i don't own poco
NB: I solve my problem just with replacing carrier_config.xml and rat_mask. There is a file called device_config, be careful with this file because it control how the phone modem interact with qpst too, wrong modification can cause you cant connect to PC even in diag mode.
https://forum.xda-developers.com/poco-f1/help/poco-f1-lte-bands-unlock-t3835467/page22
-------
Does the above information help at all with this effort? I'm not quite savvy enough to pursue this on my own. I also found the below thread which describes a process which is apparently still working for many Qualcomm devices including Xiaomi. Has this method been attempted with the Poco F1?
http://in.c.mi.com/thread-527028-10-1.html
I sold my Poco and took over my GF's which was on 10.2.3. I had LTE at my place, confirmed with speed test and LTE app. After upgrading to 10.3.4 today I no longer have LTE. I've tried switching back and forth between APNs to no avail. Any ideas?
Any updates, did you got it working? I need to unlock B5 and 28.
No description
What is normally in a /data/vendor/modem_fdr folder? I am trying to use this on another device and it doesn't have that folder.. My device has /data/vendor/modem_config it has all the mcfg_hw, mcfg_sw nd ver_info.txt. Is that the same thing?
removed
hardplastic said:
If VoLTE is working on your device, just leave it alone. It's unnecessary but only if you find the module no longer working, delete these two folders to reset.
No, configs won't store at /data since factory reset will wipe them all. I'm not sure if it's working on other devices. You need manual editing the module by adding mbn file if your device doesn't contain your carrier's, add the path on mbn_sw.txt and sign the zip
Click to expand...
Click to collapse
Volte isn't working, that's why I'm here.
I have used efstools to write my mbn to /nv/item_files - but one file keeps on restoring it's self to default -
/nv/item_files/ims/ims_user_agent. My carrier needs the header in this file for volte to work. It worked fine on Android 10 but not 11.
My device doesn't contain the folder /data/vendor/modem_fdr.
When I delete the files in /data/vendor/radio/ they come back when I reboot - so I'm guess that's what it is meant to do.
removed
hardplastic said:
Sounds like not good.
I haven't found the path on my phone, are you using Pixel 3/XL? It's not strict for my carrier to detect header, this device has preinstalled lots of mbn files from various carriers, which also contains my carrier, so all I need is to add the path to make it work. And that's how the module working.
Can you find your carrier from /vendor/rfs/msm/mpss/readonly/vendor/mbn/mcfg_sw/generic?
Click to expand...
Click to collapse
My phone is a Xiaomi Poco F2,
Yep I can find the path, my carrier is Telstra.
The path is slightly different on this device,
It's /vendor/rfs/mdm/mpss/readonly/vendor/mbn/mcfg_sw/generic so I modified the module to that. But still the header reverts.
The actual mbn file does have the correct header in, but ims_user_agent reverts in the /nv/item_files/ims/ - where does it revert it from?
removed
hardplastic said:
Sorry, I haven't used any Xiaomi devices nor MIUI. I guess I can't help you handle this issue. MIUI is completely different from AOSP, which has many deeply modification. Go ask some experts who knows to fix that. Good luck.
Click to expand...
Click to collapse
I'm running AOSP on this device!
Can anyone tell me if this works with any Portuguese carrier?? if not, @hardplastic can you add support for the 3 portuguese carriers?!
I saw the mbn_sw.txt but think that only Vodafone Portugal it's there, it misses two more carriers, NOS and MEO
removed
hardplastic said:
It seems like there's no configuration files for carriers you said above. So it won't work. I would like to update if you can provide them(*.mbn)
Click to expand...
Click to collapse
How can one aquire that?? From other phones that are compatible with VoLTE (prob every new android phone out there except the pixels ones)
removed
what the hell happened here?!