1
0
mirror of https://github.com/mbirth/tcl_ota_check.git synced 2024-11-09 22:06:47 +00:00
Go to file
2017-11-03 01:32:19 -04:00
.gitignore save downloaded encrypted headers in subfolder 2017-11-03 01:00:49 -04:00
prds.txt new otas, new prds 2017-11-03 00:50:22 -04:00
README.md Allow to specify from-version for tclcheck_allota.py. Updated README. 2017-10-04 12:53:04 +02:00
requirements.txt Require wheel for numpy setup. 2017-11-02 02:03:47 +01:00
tclcheck_allfull.py add prd filter to tclcheck_allfull 2017-11-03 01:25:25 -04:00
tclcheck_allota.py add prd filter to allota 2017-10-31 11:41:06 -04:00
tclcheck_findprd.py filter extraneous 'PRD-' in findprd 2017-10-26 14:16:39 -04:00
tclcheck_findver.py make findprd and findver executable 2017-10-26 14:14:25 -04:00
tclcheck.py save downloaded encrypted headers in subfolder 2017-11-03 01:00:49 -04:00
tcllib.py work around encoding errors with chinese text in check response 2017-11-03 01:32:19 -04:00
upload_logs.py Use normpath() for readability. 2017-11-02 02:44:46 +01:00

TCL OTA Check

This is a Python script originally created by thurask (original GIST) to check for update files for a BlackBerry KEYone phone. It tries to emulate the requests done by the "Updater" app or the "Mobile Q Loader" firmware updater.

What is a FOTA/OTA?

(F)OTA = (Firmware) Over-the-Air

OTAs are differential(!) updates for a specific firmware version to a newer one. To install it, you must have the correct initial firmware installed. Otherwise, the updater script will fail and abort the update.

How to find available OTA updates

After downloading or cloning the repository, make all tclcheck*.py scripts executable if needed. Let's assume you have a UK BBB100-2, so your PRD would be PRD-63117-003 and as of September 2017, your firmware version would be AAM481. Just run the following script:

./tclcheck_allota.py AAM481

You'll get an output like this:

List of latest OTA firmware from AAM481 by PRD:
...
PRD-63117-003 failed. (No update available.)
PRD-63117-011: AAM481 ⇨ AAN358 d819919187b46793abeaeff60dd6deee17baac4b (QWERTZ BBB100-2 (Germany))
PRD-63117-015: AAM481 ⇨ AAN358 d819919187b46793abeaeff60dd6deee17baac4b (BBB100-2 (NL, Belgium))
PRD-63117-019: AAM481 ⇨ AAN358 d819919187b46793abeaeff60dd6deee17baac4b (BBB100-2)
PRD-63117-023: AAM481 ⇨ AAN358 d819919187b46793abeaeff60dd6deee17baac4b (AZERTY BBB100-2 (Belgium))
PRD-63117-025 failed. (No data for requested CUREF/FV combination.)
PRD-63117-027: AAM481 ⇨ AAN358 d819919187b46793abeaeff60dd6deee17baac4b (QWERTY BBB100-2 (UAE))
PRD-63117-028: AAM481 ⇨ AAN358 d819919187b46793abeaeff60dd6deee17baac4b (BBB100-2)
PRD-63117-029: AAM481 ⇨ AAN358 d819919187b46793abeaeff60dd6deee17baac4b (BBB100-2)
PRD-63117-034 failed. (No data for requested CUREF/FV combination.)
PRD-63117-036 failed. (No data for requested CUREF/FV combination.)
PRD-63117-037 failed. (No data for requested CUREF/FV combination.)
PRD-63117-041: AAM481 ⇨ AAN358 d819919187b46793abeaeff60dd6deee17baac4b (BBB100-2)
PRD-63117-042 failed. (No data for requested CUREF/FV combination.)
PRD-63117-703 failed. (No data for requested CUREF/FV combination.)
PRD-63117-704 failed. (No data for requested CUREF/FV combination.)
PRD-63117-717 failed. (No data for requested CUREF/FV combination.)
...

As you can see, our PRD-63117-003 variant doesn't have the update yet, but other variants have.

You can use this info, to install the update for a different variant. Just make sure to use a variant that has the same model number (63117 = BBB100-2).