On this instruction we will modify OnePlus 7 Pro 5G, 8 and 8 Pro band combo profiles with Qualcomm software. OnePlus has limited 5G access and 4G+/LTE+ Carrier Aggregation combinations and this instruction help you to unlock. However this instruction doesn’t unlock hardware defined combinations what you can see on below but you can example edit software defined limitations with this instruction and enable 5G on your network.
You can check supported combos here:
- OnePlus 7 Pro 5G. OnePlus 7 Pro 5G have only 5G enabled in EE UK and Elisa FI networks.
- OnePlus 8 (EU)
- OnePlus 8 (US)
- OnePlus 8 (China)
- OnePlus 8 Pro (EU)
- OnePlus 8 Pro (US)
- OnePlus 8 Pro (China)
- OnePlus Nord (EU)
- OnePlus Nord (India)
This instruction is tested with OnePlus 7 Pro 5G (GM1920), 8 and 8 Pro.
This instruction only allow enable/disable 4G Carrier Aggregation & 5G EN_DC combinations and band support if hardware support it. If hardware doesn’t support, you can’t enable/disable band. Example OnePlus 8 (China) 5G doesn’t work in USA even it support n41 (T-Mobile/Sprint) band because it doesn’t support 4G anchor band used in USA.
After November 2019 update FactoryMode is removed from OnePlus-phones so this instruction doesn’t work anymore without installing EngineerMode apk manually.
Before continuing, i remind you these changes could end your device warranty. Be careful because this can make your device unusable.
- USB-cable between your desktop and phone
- On desktop you need have OnePlus driver installed
- QPST-application. Please find application from internet
Enable USB over DIAG
On phone you have to dial to *#801# and enable Engineer Toggle. If you have Android 10, then enable Rndis,diag switch instead of Engineer Toggle.
Connect your phone to your computer via USB.
If you have Android 10, the Windows should install diag-driver automatically via Windows Update. You can check driver is installed. If driver is not automatically installed then you have to follow driver installation instructions.
You have to install diag-driver manually if you have Android 11 installed. Check in Device Manager after enabled Engineer Toggle and connected USB to your computer you see two Unknown device labeled your phone model number. I have IN2013 (OnePlus 8 Europe).
- Download Qualcomm diag-drivers and extract compressed zip-file.
- Right click the device and select Update driver.
- Select Browse my computer for drivers
- Select Let me pick from a list of available drivers on my computer.
- Select All devices.
- Browse drivers in extracted Xperia 1 Qualcomm Drivers zip and find qcuser.inf
- Then find Qualcomm HS-USB MDM Diagnostics 90B6 and click Next to install it. You may get warning because hardware id doesn’t match. This driver still works fine.
- Now install same driver to second unknown devices (IN2013 if you have same model).
Open QPST and you should see devices in ports and active phones list. If you see “No phone” make sure you have Network Signal Guru closed.
Open Start Clients -menu -> QPST EFS Explorer. Select your device (SDX55) and wait a moment.
Then go to policyman directory and on directory copy carrier_polixy.xml (carrier_polixy.xml_Subscription01 is for second SIM) file to your desktop.
Before edit any files, make backup all files what you will modify.
Now you can modify band limitations and CA combos to XML file.
Adding 5G support
OnePlus just limit RAT capability on carrier_policy.xml file so just add to rat_capability section “5G” to enable 5G NSA.
<define_fullrat_config> <actions> <ue_mode> CSFB </ue_mode> <rat_capability base="none"> <include> C H G W L 5G </include> </rat_capability> <rf_bands base="hardware"/> <svc_mode> ALL </svc_mode> <freq_list list="default" /> </actions> </define_fullrat_config>
And add “5G” to every rat_capability sections
<rat_capability base="none" > <include> G W L 5G </include> </rat_capability_if>
For OnePlus 8 and 8 Pro you may have to add nr5g_sa_bands and nr5g_nsa_bands to rf_bands_default section.
<rf_band_list name="rf_bands_default"> <gw_bands base="hardware" /> <lte_bands base="hardware" /> <tds_bands base="hardware" /> <nr5g_sa_bands base="hardware" /> <nr5g_nsa_bands base="hardware" /> </rf_band_list>
Also if there is rf_band_list for your region/network/country, you have to nr5g_sa_bands and nr5g_nsa_bands, example:
<rf_band_list name="EU_FI_bands"> <gw_bands base="hardware" /> <lte_bands base="none"> <include> 0 2 6 7 19 27 31 37 45 </include> </lte_bands> <tds_bands base="none" /> <nr5g_sa_bands base="hardware" /> <nr5g_nsa_bands base="hardware" /> </rf_band_list>
After modify file, please make sure XML syntax is valid and upload file back to phone. Reboot your phone and then your phone load latest configuration. On OnePlus 8 and 8 Pro you may have to enable NR calling to *#*#4636#*#* -> Phone Information -> Set preferred network type -> NR/LTE/TDSCDMA/GSM/WCDMA.
If you switch SIM cards on your phone or you update operating system, you will lose all modifications.
You can confirm 5G-support when you are in 5G-area:
- You should see 5G icon on statusbar.
- You can see on CellMapper App 5G Available (SIB2 ULI) true.
- 5G Status: Restricted = Your mobile plan doesn’t allow connect to 5G NR. Please contact to your network.
- 5G Status: Not Restricted = You don’t have enough good connection to 5G NR. Go to outside and move to closer of 5G tower. You can try also put phone to Airplane mode on / off.
Enable 5G SA (Standalone) in Android 11
The 5G SA is disabled by default in OnePlus phones. It’s enabled only certain networks like T-Mobile US.
You can enable it just add <nr5g_sa_bands base=”hardware” /> same way like <nr5g_nsa_bands base=”hardware” /> added.
Then you have to use Network Signal Guru to change NR5G Mode from NSA to NSA/SA or SA.
You can then confirm 5G SA is enabled in UE Capability message.
Only for OnePlus 8, 8 Pro and Nord
OnePlus has limited DSS (Dynamic Spectrum Sharing) for certain networks. In same policyman directory there is lte_feature_restrictions.xml file. Copy this file to your computer.
In file there is dss-plmns section where is listed MCC-MNC (networks). These networks are allowed use DSS.
<plmn_list name="dss_plmns" ns="global"> 228-01 505-01 505-11 505-39 505-71 505-72 204-04 262-01 262-06 204-16 204-20 232-03 232-07 204-04 311-480 240-02 238-06 240-01 206-01 204-08 204-12 204-18 204-69 238-01 238-10 </plmn_list>
Just add your network MCC-MNC to list. Then change on NR_DSS section all_of to any_of.
<lte_feature name="NR_DSS"> <any_of> <boolean_test name="carrier:dss_is_enabled" /> <serving_plmn_in list="dss_plmns" /> </any_of> </lte_feature>
Make XML Syntax check, copy back to your phone and reboot.