If you’re getting into software modding and flashing, then TWRP is a tool you should be familiar with. It is a custom recovery that lets you flash custom ROMs, kernels, mods like ViPER4Android and Xposed Framework, or even take NANDroid backups of the whole Android OS. If you’re after rooting, you can also use TWRP to flash Magisk and root your phone, something I will be demonstrating in this tutorial as well.
In the past, I have already included tutorials to install TWRP on the Exynos Galaxy S20 series and root it using Magisk. The method for the Snapdragon models was a bit different and required additional steps and files. So I determined to do a separate academic for it.
TWRP for Snapdragon Galaxy S20 series
Thanks to XDA Senior Member and developer afaneh92, fully working builds of TWRP recovery are now available for the Snapdragon models of the Galaxy S20, S20+, and S20 Ultra.
While the recovery is completely stable for usage. Since the initial release, the developer has made significant improvements. For example, the recovery is now updated to TWRP 3.6.0, supports userspace fastboot (fastbootd) as well as Dynamic Partitions.
However, there are two issues that have been highlighted by the developer:
- First, encryption of the
/datapartition does not work. This means TWRP will not be able to recognize your phone’s internal storage unless it’s decrypted first (something that’s covered below).
- Second, haptic feedback (vibration) doesn’t work while in TWRP. This doesn’t affect the functionality though.
With that information at hand, let me now show you how to install TWRP recovery and subsequently root Snapdragon Galaxy S20/S20+/S20 Ultra using Magisk. The instructions below will take you through the complete process in a comprehensive manner.
Important Info: Installing a custom binary, such as the modified VBMeta and TWRP will trip the KNOX counter permanently. You will not be able to use applications that rely on KNOX like Samsung Folder, Secure Pay, etc.
Following is the list of Snapdragon Galaxy S20 devices supported by this guide, along with their corresponding model numbers.
- Galaxy S20:
- SM-G9810 (Hong Kong/China)
- SM-G981N (Korea)
- SM-G981U (USA)
- SM-G981U1 (USA unlocked)
- SM-G981W (Canada)
- Galaxy S20+:
- SM-G9860 (Hong Kong/China)
- SM-G986N (Korea)
- SM-G986U (USA)
- SM-G986U1 (USA unlocked)
- SM-G986W (Canada)
- Galaxy S20 Ultra:
- SM-G9880 (Hong Kong/China)
- SM-G988N (Korea)
- SM-G988U (USA)
- SM-G988U1 (USA unlocked)
- SM-G988W (Canada)
Before you start
Here are a few things you should do before you attempt the instructions.
1. Take a backup: Unlocking the bootloader will erase all the data stored on your phone including that on the internal storage. The data will be wiped again during the instructions to decrypt the /data partition.
So, make sure that you take a complete backup of your important data before you proceed.
2. Install Samsung USB drivers: Your Windows computer should automatically install the required USB drivers when the device is connected. But if you face any issues with the connection, you’d need to manually install the Samsung Android USB drivers on your computer.
3. Charge your phone: Make sure that your Galaxy S20 has a sufficient battery charge to avoid it from suddenly shutting down in the middle of the process. 40-50% battery level is a good starting point.
Download required files
Below, you will find the links to download all the files required during this guide. Download these files to your computer and place all of them inside a single folder so that they are easier to locate later on.
Note: The TWRP recovery files linked below are the latest at the time of publishing this guide. Should you arrive at this tutorial at a later time, make sure that you check the respective database page and use the latest recovery at all times.
- TWRP recovery for Snapdragon Galaxy S20
- For Android 11 R: twrp-3.5.0_10-2_afaneh92-R-x1q.tar
- for Android 10 Q: twrp-3.5.0_10-1_afaneh92-Q-x1q.tar
- TWRP recovery for Snapdragon Galaxy S20+
- For Android 11 R: twrp-3.5.0_10-2_afaneh92-R-y2q.tar
- For Android 10 Q: twrp-3.5.0_10-1_afaneh92-Q-y2q.tar
- TWRP recovery for Snapdragon Galaxy S20 Ultra
- For Android 11 R: twrp-3.5.0_10-2_afaneh92-R-z3q.tar
- For Android 10 Q: twrp-3.5.0_10-1_afaneh92-Q-z3q.tar
- Odin Flash Tool v3.14.1:
- Odin Download Repository (Extract the ZIP file after downloading)
- VBMeta Disabler:
- vbmeta_disabled.tar available on this XDA thread. Scroll down to the bottom of the first post and view the attachments. (Credits: XDA Recognized Developer jesec)
- Multidisabler for Samsung:
- multidisabler-samsung-3.x.zip from this XDA thread (Credits: XDA Senior Member ianmacd). Transfer this file to your phone’s external storage (SD card). Alternatively, you can also transfer it to a USB OTG storage device.
- Magisk installer script:
- Magisk v22 APK or newer available on the official GitHub release page (The latest Magisk installer script is an APK file and not a ZIP file; TWRP 3.6 supports flashing the Magisk APK file starting from v22)
Make sure that you download the TWRP recovery according to the Galaxy S20 device you have and the Android version installed on it.
The linked TWRP files are the latest at the time of publishing this guide. However, I strongly suggest that you visit the respective database for your device to verify that you’re using the latest version at all times.
I have broken down the instructions into 8 major steps so that it’s easier for you to understand. These steps will take you through the complete process of installing TWRP recovery on the Snapdragon Galaxy S20 series and subsequently rooting the phone using Magisk.
Step 1: Unlock the bootloader of your Snapdragon Galaxy S20
Note: Again, Snapdragon models sold in the USA and Canada come with a non-unlockable bootloader. In order to unlock the bootloader on these devices, you will need to opt for a paid service known as SamPWND.
Once the bootloader is unlocked, you can come back here and start following the instructions from Step #2 and onward.
To unlock the bootloader, you will first need to enable the ‘OEM unlocking’ option located inside the ‘Developer options menu. Begin by enabling Developer Options on your Galaxy S20 using the instructions on this page.
Once enabled, go to “Settings” → “Developer options” on your Galaxy S20 and turn ON the “OEM unlocking” toggle. Then select “Enable” to confirm.
With OEM unlocking enabled, you can now unlock the bootloader on your Snapdragon Galaxy S20/S20+/S20 Ultra. To do this, power off your Galaxy S20 first. Then connect it to the computer using the USB cable while holding the Volume Up and Volume Down keys together. You should see the bootloader screen on your phone.
Now long-press the Volume Up key to enter “Device unlock mode”. You should be presented with a confirmation prompt for unlocking the bootloader. Finally, press the Volume Up key to confirm and unlock the bootloader on your Galaxy S20.
Your phone should now automatically boot into the system (OS) and you should see the unlocked bootloader warning message during the boot process (as shown in the image below).
After your phone boots, set it up and connect it to the internet. Then enable the Developer options and go to “Settings” → “Developer options”. Verify that the OEM unlocking toggle is greyed out and says that the bootloader is already unlocked. If not, you will need to reperform the unlock again.
Step 2: Boot your Galaxy S20 into Download Mode
In order to flash using Odin, you need to boot your Galaxy S20 into Download Mode (also known as “Odin Mode”).
To do this, power off your phone first. Then connect it to the computer using the USB cable while holding the Volume Up and Volume Down keys together until you see the Bootloader screen (what you saw while performing step #2). Simply, press the Volume Up key once to enter Download Mode.
Step 3: Flash vbmeta_disabled.tar to disable AVB
With the bootloader unlocked and your Galaxy S20 in Download mode, you now need to use Odin to flash
vbmeta_disabled.tar file to disable Android Verified Boot.
So, launch the Odin tool on your computer by double-clicking the “Odin3 v3.14.1.exe” executable. The tool will automatically recognize your Galaxy S20 and display the corresponding COM port number of the top-left.
Begin by downloading the latest version of the Android SDK platform-tools to your computer. After downloading, extract the contents of the “platform-tools-windows.zip” file by right-clicking the file in Windows Explorer and then selecting “Extract all”.
The extracted “platform-tools” folder should include
adb.exe, along with the rest of the tool binaries. You can further move this folder to the C:\ drive for easier access.
Now that you have ADB installed, you need to launch PowerShell inside the working directory (i.e. “platform-tools” folder).
To do this, navigate to the “platform-tools” folder in Windows Explorer first. Then hold the Shift key of your keyboard and right-click on any empty space inside the folder. Finally, select “Open PowerShell window here” from the contextual menu that appears on the screen.
Step 6: Transfer Multidisabler and Magisk to the phone
Copy the downloaded “multidisabler-samsung-3.1.zip” and “Magisk-v21.4.zip” files inside the ‘platform-tools’ folder.
Now, enter the following commands in the PowerShell window to transfer these files:
.\adb push multidisabler-samsung-3.1.zip / .\adb push Magisk-v22.0.apk /
The above command will copy the files directly to the root directory of your phone.
Step 7: Flash Multidisabler via TWRP and format data partition
You now have to flash the Multidisabler and format the
/data partition to disable encryption completely. Multidisabler will patch the kernel to prevent it from triggering encryption when the phone boots.
Go to “Wipe” from the TWRP main screen and tap on “Wipe”. Select “Format Data” and enter “yes” in the provided field to format the data partition.
Once the wipe is complete, go back to the main screen and tap “Install”. Press “(Up A Level)” located at the top of the file selector to go back to the root directory of your phone.
Scroll down to the bottom and you should find the files you transferred during the previous step. Tap on “multidisabler-samsung-3.1.zip” to add it to TWRP’s flashing queue. Then swipe the blue-colored button on the bottom of the screen to flash the file.
Step 8: Flash Magisk to root Snapdragon Galaxy S20
The final step of this tutorial is to flash the Magisk ZIP file via TWRP to root your Snapdragon Galaxy S20/S20+/S20 Ultra.
To do this, select “Install” from the TWRP main screen and navigate to the root directory of your phone by pressing “(Up A Level)”. Scroll down to the bottom and tap on the Magisk installer ZIP file (e.g. Magisk-v22.0.apk) to add the file to the flashing queue. Finally, swipe the button on the bottom of the screen to flash Magisk and root your phone.
Once the flash completes, press “Reboot” and then select “System”.
That’s it .