Install TWRP on Snapdragon Galaxy S20/S20+/S20 Ultra and Root using Magisk

How to Install TWRP on Snapdragon Galaxy S20 and root using Magisk

In this tutorial, I will walk you through the steps to install TWRP recovery on Snapdragon Galaxy S20, S20+, or S20 Ultra, and simultaneously root the phone using Magisk. This will work with all Snapdragon Galaxy S20/S20+/S20 Ultra models sold in the USA, Canada, Hong Kong, and Korea.

Disclosure: Snapdragon variants of the Galaxy S20 series sold in the USA and Canada come with non-unlockable bootloaders. The only way to unlock the bootloader on these devices is by using a paid service like SamPWND or UNSAMLOCK.

If you have Hong Kong (China) and Korea based model, you can unlock the bootloader as shown in the instructions below.

If you’re stepping into software modding and flashing, then TWRP is a tool you should be familiar with. It is a custom recovery that allows you to flash custom ROMs, kernels, mods like ViPER4Android and Xposed Framework, and even take NANDroid backups of the complete 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 covered 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 decided to do a separate tutorial for it.

Did you know? You can easily remove bloatware from the Galaxy S20 series without Root.

Table of Contents

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.5.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 /data partition 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.

Supported Devices

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. You could also refer to our tutorial on backing up Android devices if you need guidance.

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 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.

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.

Instructions

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.

Let’s start!

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.

Enable OEM unlocking on Galaxy S20/S20+/S20 Ultra

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.

Unlock bootloader on Snapdragon Galaxy S20
Image for reference only

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).

Snapdragon Galaxy S20 unlocked bootloader warning message
Image for reference only

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.

Why do you need to do this? It is important to go through the initial setup and verify OEM unlocking. This will prevent Samsung’s Vaultkeeper service from kicking in and relocking the bootloader.

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.

Boot Snapdragon Galaxy S20 into Download Mode
Image for reference only

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.

Flash vbmeta_disabled.tar to disable AVB on Snapdragon Galaxy S20

Click the “Userdata” button in Odin and select the downloaded “vbmeta_disabled.tar” to load it into the slot for flashing. Then click “Start” to flash the file to your phone.

Once the flash is complete, exit the Odin tool. Your Galaxy S20 will automatically reboot and enter the stock recovery mode. It will prompt you to reset the device because the VBMeta signature has been changed. Use your phone’s Volume Up or Down keys to move the selector and press the Power key to confirm.

After doing this, the phone will boot into the system (OS). Do not set up the device yet as it will be wiped again during the steps that follow.

Step 4: Install TWRP Recovery on Snapdragon Galaxy S20

Now that you have unlocked the bootloader and disabled AVB, it’s time to finally install TWRP on your Snapdragon Galaxy S20 / S20+ / S20 Ultra.

Begin by booting your phone into Download Mode again, as described in step #2. Then make sure that your phone is connected to the computer and launch the Odin Flash Tool.

Click the “AP” button and load the downloaded TWRP .tar file in the slot for flashing. Then click the ‘Options’ tab in Odin and uncheck the “Auto Reboot” option.

Install TWRP on Snapdragon Galaxy S20 using Odin

Finally, hit “Start” to flash TWRP on your Galaxy S20. The process should take a couple of seconds to finish. Once it does, close the Odin window, but DO NOT DISCONNECT the phone from the computer yet.

Now you will need to boot the phone directly into TWRP recovery. To do this, hold the Volume Down and Power keys together for about 7 seconds to exit Download Mode. As soon as the screen turns off, release the Volume Down key and quickly hold the Volume Up key while still holding the Power key.

Your Galaxy S20 should enter TWRP recovery mode now. Keep the phone connected to the computer.

Step 5: Install ADB and launch PowerShell on the computer

As I mentioned initially, TWRP recovery for the Snapdragon Galaxy S20 does not support decryption of the data partition. In simpler words, it won’t be able to read your phone’s internal storage unless you disable encryption. So, you will need to use the ADB push command to transfer the Multidisabler and Magisk ZIP files to a temporary location.

Alternative way: If you have a micro SD card or a USB OTG storage device available, transfer the files to it and insert/plug the card/OTG device into your phone. You can then directly flash the files from it without using ADB push.

If you are going to opt for this route, you can skip this step as well as step #6 and follow ahead.

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.

Android SDK platform-tools folder

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.

Launch PowerShell inside platform-tools folder

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.

Copy Multidisabler and Magisk ZIP files inside 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 /

Transfer Multidisabler and Magisk ZIP files to the phone using ADB push

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.

Format data partition in TWRP on Snapdragon Galaxy S20
Image for reference only

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.

Flash Multidisabler to disable encryption on Snapdragon Galaxy S20
Image for reference only

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.

Flash Magisk to root Snapdragon Galaxy S20
Image for reference only

Once the flash completes, press “Reboot” and then select “System”.

That’s it!

Wrapping up

Your Snapdragon Galaxy S20 should be rooted with Magisk now with TWRP recovery installed. Once your phone boots set it up by following the on-screen instructions.

You can verify root by launching the Magisk Manager application and checking Magisk’s installation status. You can now install and use root applications such as Titanium Backup, or install modules like ViPER4Android and Xposed Framework.

Starting with Magisk v20.4, Magisk Hide is disabled out-of-the-box on new installations. So, make sure that you enable it from the Magisk Manager settings.

While at it, you can also check if your rooted Galaxy S20 passes SafetyNet. If SafetyNet fails and shows ‘Hardware’ evalType, it means that Google’s new hardware-backed attestation is now in effect on your phone. You can try fixing this by using the Universal SafetyNet Fix module.

With TWRP installed, you can now backup and restore NANDroid and install custom ROMs that are available on the XDA-Developers forum.

So by now, you have learned how to install TWRP recovery on Snapdragon Galaxy S20, S20+, and S20 Ultra, and root the phones using Magisk. If you have any questions or face any difficulties while performing the instructions, feel free to let me know.

A huge thanks to afaneh92 for bringing up TWRP support for the Snapdragon S20 devices. He was also patient in answering some of the questions I had while jotting down this tutorial. You should also consider joining his Telegram group.

Source: XDA