Git Product home page Git Product logo

oneplus8t-5g-newradio's Introduction

oneplus8t-5g-newradio

Disclaimer: Use the content in this repo at your own risk. The content shared is all based on personal experiments on personal devices, and not affiliated with OnePlus, Qualcomm, or any mobile operator.

Hopefully this repository becomes redundant soon, by having OnePlus handle 5G properly in some future software OTA update.

About

Qualcomm carrier_policy XML files for NR 5G fixes on OnePlus 8T.

This repository is inspired by the work described in the OnePlus forums.

Whilst the steps (not files) presented there are compatible with the OnePlus 8T, there were 2 main issues with the provided carrier policy files:

  • The provided files had no effect on the OnePlus 8T, at least in the UK
  • The provided files are severely outdated in terms of base
    • Based on OnePlus 7 / early 8 series
    • Based on XML version 16.11.21, whereas this is based on the one provided in the EU stable OP8T firmware (Oxygen OS 11.0.10.10.KB05BA - August 2021): 16.23.6 / 16.29.12

Usage

Follow the same instructions as indicated in the original thread, however use the following two files from this repository, under qualcomm-modem-fs:

Shortcut Cheat-sheet

  • Enabling engineering mode: "dial" *#801# (this requires the installation of the OnePlus Engineering Mode APK first)
  • Modifying radio settings: "dial" *#*#4636#*#*

Extra steps

  • Unfortunately the OP8T UI does not automatically update to show the 5G option. Therefore, the *#*#4636#*#* procedure as documented in the original post has to be done upon every device reboot, by setting the value to NR/LTE/TDSCDMA/GSM/WCDMA. Failure to do so will not cause problems, but 5G will not work.

Implementation

This change solves the problem by enabling NR 5G always in the EU/UK region. The rationale here is that:

  • NR bands 1, 3, 28, 40 and 78 are allowed throughout the EU/UK space
  • Both NSA (Non-Standalone Architecture) and SA (Standalone Architecture) are enabled - availability depends on availability by your operator and coverage in the area you are in
  • The lack of support should be dependant on the operator offering it and not the phone deciding it - if there is no operator on a particular band, the phone will simply just not connect to it and fallback to other radios (LTE, WCDMA, etc) and radio modes (NSA / SA), making it transparent to the user anyway
  • The EU/UK region definition is as pre-defined already in the original policy files, under europe_mccs.

The philosophy here is: a phone should not wait until its manufacturer puts the respective operator on the allow list for 5G to work. Instead, it should dynamically work based on available implementations in the user's environment.

A comparison diff between the OnePlus original implementation and the mod, can be found here.

Additional Info

Tested on

  • OnePlus 8T KB2003 (EU Model - 8GB RAM / 128GB ROM)

Tested regions / operators

  • UK
    • O2

Enabled NR bands

Note: The carrier_policy.xml* files start the band count from 0 not 1. As an example, band 78 is listed as 77 in the XML files.

  • n1 (untested)
  • n3 (untested)
  • n28 (untested)
  • n40 (untested)
  • n78 (tested on O2 UK)

Additional points

  • Some commits contain the files as provided in the original firmware, without any modifications. Refer to CHANGELOG.md for changes to map the correct revision with OP8T_ORIGINAL / MOD and pick the file from the appropriate tag. The main branch should always have the latest MOD version.
  • The related file .version.json describes the files at that particular commit, and the revision number within it is aligned with CHANGELOG.md. The possible values for type are:
    • OP8T_ORIGINAL - As extracted from the stock OnePlus 8T modem partition
    • MOD - Modified version
  • Improvements or suggestions welcome. Please do so either via the issue tracker or via pull requests.

EOF

oneplus8t-5g-newradio's People

Contributors

francocm avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.