To be safe, make a backup via TRWP of your EFS partition BEFORE you flash anything! If you're not rooted, do a nandroid backup via fastboot
1) Set your stock dialer app as default
2) Download and install “Logkit+v1.0.apk”
3) Open dialer app and enter *#800#
Scroll down to Function Switch and then tick-mark the “VoLTE”, “VoWifi” and “VTSwitch”. Exit from app and reboot phone. Go to Settings->Wi-Fi & Network->Sim & Network->Sim 1 and enable “VoLTE” & “Wi-Fi Calling” options. Repeat step for SIM 2 if necessary. Reboot phone.
4)Download and install to PC “QPST_2.7.496” + “qud.win.1.1_installer_10061.1.zip”
5) Enable Developer options and “USB debugging”
6) Download and install “engineeringmode_V1.01.0.171117173719.25c8842-26.apk”
Open dialer app and enter *#801#
Set “Full-port switch” to ON
7) Connect your phone to PC via USB and allow USB debugging on phone
Run ADB as administrator (if you haven’t download and install to your PC)
ADB reboot ftm
You should see some Chinese characters on display
8) Go to Device manager. You should see two "IN2010" devices in "Other devices" section. You need device with PID "MI_00", in my case it's second one. You could check, who is MI_00: Right click on device, properties, Events tab (look at screenshot).
When you find correct device, right click "Update Drivers", "Let me pick from a list...", select "Ports (COM & LPT)", select "Manufacturer -> Qualcomn Incorporated, Model -> Qualcomm HS-USB Diagnostics 90B6"
9) In CMD:
setprop sys.usb.config diag,diag_mdm,qdss,qdss_mdm,serial_cdev,dpl,rmnet,adb
10) Run “as administrator” PDC from QPST package. Select “Qualcomm HS-USB WWAN Adapter 9091” from list. In some cases PDC can’t connect to your phone. There is a strange solution:
Run EFS explorer from QPST package “as administrator”, select device with filled "EFS" and "Banner" fields and connect to your phone. In the moment of connection PDC works as excepted. Listing of EFS explorer takes a lot time, but after successful connection PDC stops working again. Close EFS and repeat step to finish all following steps in PDC.
In PDC right click on "Oversea-Commercial_DS" and deactivate “Sub0” and “Sub1”
Click on “Oversea-Commercial_DS” again and click remove.
Select “India-VoLTE-Vodafone”, right click and SetSelectedConfig for both “Sub0” and “Sub1”. Then click Activate button. Close PDC.
11) Download and extract “Audio+codec+EVS+HD+.zip”
Run EFC explorer “as administrator” and connect to your phone if not done earlier.
Backup to PC “overideconfig” and “overideconfig_Subscription01” from “/efsprofiles/” folder.
Replace “overideconfig” and “overideconfig_Subscription01” from “Audio+codec+EVS+HD+.zip” package with “Discard” “Clean-Up Option”. (Right click on file, “copy Data File from PC..”)
12) In ADB:
13) Install “com.oem.oemlogkit_1.0.200929184727.270d7d2-1.apk” to return stock logkit.
14) Open dialer app and enter *#801#
Set “Full-port switch” to OFF
15) Disable USB Debugging if necessary.
16) Set back your custom dialer if necessary.
That’s all. You have VoLTE/VoWiFi/ViLTE/EVS HD+ codec. Icons in dialer and curtain.
After update to latest version VoLTE was not working again. I think we should repeats this step after every update, until OnePlus (if) fixed this issue.