Try to add this to build.prop for WiFi Calling:
persist.sys.cust.lte_config=true
persist.data.iwlan.enable=true
# 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.radio_gpri=1
ro.amrwb_gpri=1
persist.data.iwlan=1
persist.data.iwlan.ipsec.ap=1
The last line with ipsec is added if you have an app called ipsec in your /system/app or /system/priv-app. Check it first, if you don't have the app, delete the last line
also check: /data/ipsec/wo/ what files you have there. Should have .conf files of all apns for VoWiFi VoLTE.
I activated VoWiFi on my LG G6 with stock based custom rom but i had to replace its original build.prop file with one from my carrier's VoWiFi enabled rom and to that build.prop i added all the extra bits from the custom ROM i'm on atm, plus the lines above. Last thing i did, i went to /OP and there i deleted a folder called _COMMON with all the content inside. Still in /OP i created a folder called SUPERSET. Then i went to OP/P4P_PL where i had config files for WiFi Calling and coppied all the content from the folder to /OP/SUPERSET. In SUPERSET i edited a file called cust.prop and changed the rootdir of cupps-capss prop /OP/P4P_PL to /OP/SUPERSET (second line in cust.prop)
In /OP i also had files called cust_group_mapping.cfg and official_op_resize.cfg. In 1st file i changed part after = to GLOBAL-COM (that is my base build i got from tapping IMEI SV in phone info). In second file i added at the top: SUPERSET_SIZE=(same size as my carrier's which was also on the list in the file).
- Deleting _COMMON forced my system to recognize my MNC-MCC code which is a crucial thing for apn registration.
- Creating SUPERSET and copying inside everything from my carrier's (P4P_PL) folder in /OP was to ensure that the system will always use my carrier's configuration, as if SUPERSET is present in /OP folder it is recognized by system as default one.
I also edited apns-conf.xml in /system/etc/ and added my needed apns there manually to be sure that my ims and xcap apns are always there, even if i restore all apns to default.
Last thing (that applies to LG phones) i had to do is turn on WiFi Calling toggles and settings in UI. I went into LG's hidden menu, Field Test->GPRI VoLTE/VoWiFi->UX and ticked UI settings i wanted to have visible.
P.S. make sure that in your build.prop you have a following line: ro.capp_cupss.rootdir=/OP as it shows the system where to look for your carrier's additional configuration files
