How to flash OTA without downloading the full rom in a rooted Oneplus 3

Oneplus updater detects root and offers only the full download (around 1.3GB) even if actually need only around 70 MB if an actual OTA is downloaded. This outlines how to bypass that and install only the OTA.

The thing is you need to temporarily unroot.
Assuming you’ve installed Superuser in a systemless mode (by default it it so), your root part is in your bootloader and certain changes by the Superuser apk. The only changes in your /system is the busybox binary and bash (if you installed it).

So with a root explorer, delete busybox binary and all of its symlinks.
Go to chainfire superuser, and choose to unroot fully.
The phone will reboot.
Next, go to Settings>Apps
Wipe storage for this app.
Now check for updates. It should now download only the small update.
If you have TWRP, flash the stock recovery now, or check whether TWRP can flash the OTA (probably not).
Allow the update downloader to reboot to recovery to install the update.

Yea, I know the flow of words isnt smooth. I’m busy.


You are reading this post on Joel G Mathew’s tech blog. Joel's personal blog is the Eyrie, hosted here.

Root Moto E 1st generation (2014) (condor)

Unlock bootloader.
Install TWRP recovery.
Boot to TWRP (Go to bootloader screen by Power off, followed by Vol – and Power On button pressed simultaneously, then Power button released; Next Vol – to highlight recovery menu, and press Vol +)/
Install Superuser latest package from TWRP.
Reboot, and install SuperSU app from Play Store.
Also install busybox with Busybox installer by sterricson, from the Play Store.


You are reading this post on Joel G Mathew’s tech blog. Joel's personal blog is the Eyrie, hosted here.

Backup Stock Android recovery

First you would need to root your phone without installing a custom recovery:
For the One Plus One, download SuperSU flashable package from http://download.chainfire.eu/396/SuperSU/
Now, download TWRP recovery from here: http://techerrata.com/browse/twrp2/bacon

The usual method of rooting is to:
1. Unlock bootloader.
Press Vol +, Power button at the same time after switching off phone. Then release Power button keeping Vol+ button pressed. You will be landed in fastboot mode.

Enter the following:

Note: Unlocking bootloader automatically wipes everything.

fastboot oem unlock

Now bootloader is unlocked and you will be booted to a clean fresh ROM.

Next, enable USB debugging.
Enable Developer options by pressing on the Android version number 10 times.

Now go to fastboot mode again to boot a custom recovery.
After downloading the TWRP recovery, you can boot off it without installing the recovery by running:

fastboot boot openrecovery-twrp-2.8.0.1-bacon.img

Once TWRP opens up (give it 10-15 secs), choose to reboot to system. TWRP has an automatic system to check whether the phone is rooted, and to install SuperSU properly, rooting your phone in the process. If that doesnt happen, you can repeat the process, booting to TWRP, and then flashing the zip file of SuperSU you downloaded earlier.

Kudos..you have successfully rooted your phone, preserving stock recovery. The advantage is that you will continue to receive OTA updates while having root too. Usually custom recoveries are unable to flash OTAs.

If you wish to have TWRP as your main recovery, just flash it from fastboot mode:

fastboot flash recovery openrecovery-twrp-2.7.0.0-bacon.img

You are reading this post on Joel G Mathew’s tech blog. Joel's personal blog is the Eyrie, hosted here.

How to install the latest Android 4.4.4 update on a rooted Nexus 7

The following was tested on a rooted Nexus 7 Wifi only (2012 version), also known as “grouper”.

First, unroot your device using the option in the Chainfire SuperSU app.

Now, reboot to bootloader mode and flash the stock Nexus recovery (Download).

Unzip the downloaded recovery zip file and flash the recovery image in bootloader mode (Power off, then Vol- and Power key pressed together lands you in bootloader mode).

fastboot flash recovery recovery.img

Now download the latest Kitkat factory image of Nexus 7 from Google
Choose the one labelled “Factory Images “nakasi” for Nexus 7 (Wi-Fi)”. As of now the latest is 4.4.4 (KTU84P).

Download the file, a .tar file, extract it with Winzip/Winrar.
It yields a directory containing a file without an extension. Rename it to give it a .tar extension.
Extract the .tar file. This gives you a list of the following files:

bootloader-grouper-4.23.img
flash-all.bat
flash-all.sh
flash-base.sh
image-nakasi-ktu84p.zip

Rename flash-all.bat as modflash.bat, and edit it to comment the additional lines as below:

PATH=%PATH%;"%SYSTEMROOT%\System32"
fastboot oem unlock
fastboot erase boot
fastboot erase cache
fastboot erase recovery
fastboot erase system
:: fastboot erase userdata
:: fastboot flash bootloader bootloader-grouper-4.23.img
fastboot reboot-bootloader
ping -n 10 127.0.0.1 >nul
fastboot update image-nakasi-ktu84p.zip

Note that the following lines are modified ones to protect your data from being corrupted:

:: fastboot erase userdata
:: fastboot flash bootloader bootloader-grouper-4.23.img
fastboot update image-nakasi-ktu84p.zip

Once done, you can flash the latest TWRP back. Download version 2.7.1.1 here

fastboot flash recovery openrecovery-twrp-2.7.1.1-grouper_2.img

Now download the latest SuperUser updater zip from Chainfire’s site:. Push it to sdcard via adb while TWRP recovery is on.

adb push UPDATE-SuperSU-v2.01.zip /sdcard/

Now install the zip from TWRP.
Once you reboot, go to the Market link for Chainfire SuperSU apk and install it. That’s it you’ve successfully updated to the latest Android version without losing root.


You are reading this post on Joel G Mathew’s tech blog. Joel's personal blog is the Eyrie, hosted here.