Skip to content

R0rt1z2/realme-ota

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

51 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Realme OTA Downloader

License GitHub release (latest by date including pre-releases) GitHub Issues

Requirements

  • Python 3.9 (or newer).

Installation

Windows

Required Windows Terminal or PowerShell.

# (Requires privileges - start Terminal/PowerShell as administrator)
Invoke-WebRequest https://raw.githubusercontent.com/R0rt1z2/realme-ota/master/Install.ps1 | Invoke-Expression

Linux

sudo apt install python3-pip
pip3 install --upgrade git+https://github.com/R0rt1z2/realme-ota

Usage

usage: realme-ota [-h] [-v {0,1,2,3,4,5} | -s] [-r {0,1,2,3}] [-g GUID]
               [-i IMEI [IMEI ...]] [-b] [--old-method] [-d DUMP] [-o ONLY]
               product_model ota_version {1,2,3,4} [nv_identifier]

positional arguments:
  product_model         Product Model (ro.product.name).
  ota_version           OTA Version (ro.build.version.ota).
  {1,2,3,4}             RealmeUI Version (ro.build.version.realmeui).
  nv_identifier         NV (carrier) identifier (ro.build.oplus_nv_id) (if
                        none, provide 0 or omit).

options:
  -h, --help            show this help message and exit
  -v {0,1,2,3,4,5}, --verbosity {0,1,2,3,4,5}
                        Set the verbosity level. Range: 0 (no logging) to 5
                        (debug). Default: 4 (info).
  -s, --silent          Enable silent output (purge logging). Shortcut for
                        '-v0'.

request options:
  -r {0,1,2,3}, --region {0,1,2,3}
                        Use custom region for the request (GL = 0, CN = 1, IN
                        = 2, EU = 3).
  -g GUID, --guid GUID  The guid of the third line in the file
                        /data/system/openid_config.xml (only required to
                        extract 'CBT' in China).
  -i IMEI [IMEI ...], --imei IMEI [IMEI ...]
                        Specify one or two IMEIs for the request.
  -b, --beta            Try to get a test version (IMEI probably required).
  --old-method          Use old method for the request (only applies if
                        rui_version >= 2).

output options:
  -d DUMP, --dump DUMP  Save request response into a file.
  -o ONLY, --only ONLY  Only show the desired value from the response.

Additional notes

  • If your request returns flow limit or status code 500, try to wait a few minutes and then request again.
  • You can use the ALL_PROXY environment variable to send the request via a proxy (useful if an update can't be found in your country). On Windows you can run set ALL_PROXY=ADDRESS:PORT, while on Linux and MacOS you can do export ALL_PROXY=ADDRESS:PORT.
  • Since Android 11 (RUI2), Realme started using components, which means you won't be able to get a full OTA link.
  • The --beta option might not work correctly, it has not been fully tested!

License

  • This tool is licensed under the GNU (v3) General Public License. See LICENSE for more details.

About

Request and download OTA packages from BBK server(s)

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published