[Nokia 6.1 (2018) Guides, News, & Discussion] AHershler:
On 3 separate Nokia 6.1 (2018) TA-1050 devices, after the OTA upgrade from Android 9 to Android 10 (using either the December 2019 Stable Android 10 Full OTA update with version number V4.10C, or using the May 2020 Full OTA update with version number V4.15C), I encountered a bootloop. Many users with Nokia devices for which Nokia released an OTA upgrade from Android 9 to Android 10 report the same:

After the OTA is applied, the phone restarts, the screen goes black, the phone restarts again, until finally the following screen is displayed:

(sorry for not posting a screenshot - as a new user I am apparently not allowed that privilege until I have made 10 posts, so I have to put in the literal text of the screen instead, using the color scheme of the real screen)

Android Recovery

nokia/plate2_00mm/PL2 sprout

10/QKQ1_190828.002/00ww_4_10C

user/release-keys

Use volume up/down and power.

Cannot load Android system. Your data may be corrupt. If

you continue to get this message, you may need to perform

a factory data reset and erase all user data stored on this

device.

Try again

Factory data reset

Supported API: 3

Boot Reason: enablefilecrypto_failed

In the rest of this post I will refer to this screen as the enablefilecrypto_failed screen.

Note the numbers I indicated in bold in this screen, which indicate that the phone is attempting to start Android 10.

Even though I searched the Internet extensively for several months, I did not find a complete solution for this issue. After a lot of trial and error, I have found a working solution myself, which I am documenting here. The idea behind this procedure is to make sure that both slots in the phone get upgraded to Android 10, which the OTA, by design, does not do.

If you have a Nokia 6.1 or a similar Nokia phone (with A/B slots) with the symptom as described above, you are welcome to try this solution AT YOUR OWN RISK!

Please note that following this procedure will result in the complete erasure of all user data stored on the phone! Save whatever data you need on external storage!

Prerequisites

Android Platform Tools: ADB and Fastboot (download here)

The procedure does not require the phone to be unlocked or rooted.

Procedure

If you are on the enablefilecrypto_failed screen, follow these steps to try to boot your phone from the inactive slot, which should not have been touched:

a. First of all, just for good measure, select "Try again" with the volume keys, then press the power button. The phone will restart. If you get the same screen again, try it up to five times. Your phone should turn off completely after the third time. You can turn it on again to try a further few times.

b. Connect the phone to the computer using the USB cable. If the phone was off, the phone will turn on and show the battery charge screen.

c. From the battery charge screen, or the enablefilecrypto_failed screen, press and hold the volume down key (make sure you do not accidentally select "Factory data reset"), then press and hold the power key. Keep both pressed throughout the power up sequence. You will end up with a screen showing the android one logo and on top the words "Download mode". From now on we will refer to this screen as the bootloader screen.

d. Open a Command Prompt on the computer, and change the current directory of the command prompt to the folder in which the platform tools were installed.

e. Type in the following command, and at its end press the Enter key:

fastboot getvar current-slot

You will see either: current-slot: a or current-slot: b. On some phones, the slot character may be prefixed by an underscore (i.e. _a or _b). Write down the current slot.

f. We now want to make the inactive slot active. If the current slot was a (or _a), you want to type the following command (if the current slot was prefixed by an underscore, then also put an underscore before b in the following command), then press Enter:

fastboot --set-active=b

If the current slot was b (or _b), then type the command (if the current slot was prefixed by an underscore, then also put an underscore before a in the following command), then press Enter:

fastboot --set-active=a

You will see either Setting current slot to 'a' or Setting current slot to 'b', depending on which slot has been made active.

g. Now reboot the phone by typing the following command and pressing Enter:

fastboot reboot

h. Your phone may come up with the following screen:

Android Recovery

nokia/plate2_00mm/PL2 sprout

9/PPR1.186610.011/00ww_3_54P

user/release-keys

Use volume up/down and power.

Cannot load Android system. Your data may be corrupt. If

you continue to get this message, you may need to perform

a factory data reset and erase all user data stored on this

device.

Try again

Factory data reset

Supported API: 3

Boot Reason: enablefilecrypto_failed

Note that this screen shows that the phone has switched to Android 9, as indicated by the numbers I placed in bold in the above screen.

If so, make sure "Try again" is selected, then press the power button. Your phone will restart and Android 9 will come up, which will give you the opportunity to back up your phone before proceeding.

Backup the phone

a. Make sure your contacts, calendar entries, etc., are completely synchronized with whatever cloud provider you are using (usually Google).

b. To backup Whatsapp messages, go into Whatsapp settings and perform a backup either to the cloud, or to phone memory.

c. To backup SMS and MMS messages, use an app like "Anything to SMS".

d. Connect the phone with the computer using a USB cable, and copy the entire contents of the phone memory to a new folder on the computer. Make sure this copy is complete, including the backups of Whatsapp, SMS messages, and any other app-specific data, as well as your documents, pictures and videos, and anything else you want to keep.

e. If your phone is rooted, you may want to additionally use Titanium Backup to make a complete backup of all apps and their data, and use a custom recovery like TWRP to make a NANDroid backup. Make sure these backups are moved off the phone, as you will be required to perform a complete "wipe" of the entire phone.

To make further troubleshooting easier, you may want to enable Developer Mode and USB Debugging:

a. Open Settings->About phone

b. Scroll down until Build number

c. Tap 7 times on Build number

d. When prompted, enter phone PIN or password

e. Exit Settings

f. Open Settings->System->Advanced->Developer options

g. Scroll down to USB debugging and turn it on

h. Exit Settings

i. If not prompted to allow USB debugging, disconnect and then reconnect the USB cable. You should see a prompt on your phone asking whether to allow USB debugging from a specific device (the computer the phone is connected to). You should answer affirmatively to this prompt.

Further preparations

a. If your phone is rooted, disable all apps that require root (for example the firewall), and completely uninstall Magisk, restart the phone when prompted.

b. Before continuing, either connect the phone to a charger, or make sure the phone is (almost) completely charged.

c. Open Settings->System->System update. Let the phone check for updates, download the update, follow the prompts, resume the upgrade it necessary, allow the system update to install, and, when prompted, restart the phone (even if you already did all of this in the past). Your phone will restart and return to the enablefilecrypto_failed screen. Before continuing with the next part, make sure the enablefilecrypto_failed screen shows the version numbers corresponding to Android 10 (as shown at the beginning of this post).

Booting into recovery from the enablefilecrypto_failed screen showing the version numbers corresponding to Android 10

a. If you have a custom recovery permanently installed, follow the next steps until you see the custom recovery screen.

b. If disconnected, connect the phone to the computer using the USB cable.

c. While making sure "Try again" is selected, press the power button.

d. The moment the phone restarts, press and hold the volume up key, then press and hold the power key. Keep both pressed throughout the power up sequence. If you have a custom recovery permanently installed, it should come up now. If you have the stock recovery, you will end up with a screen showing an android robot lying down on its back, with a red triangle over its open belly, and the words "no command" below it. To enter the stock recovery from this screen, hold the power key and tap the volume up key once. You will then see a screen with a larger menu (see below); this is the stock recovery screen. From now on we will refer to this screen as the stock recovery screen. If you end up again with the enablefilecrypto_failed screen instead, try the above steps again; the timing of step d is quite critical.

The stock recovery screen looks like this:

Android Recovery

nokia/plate2_00mm/PL2 sprout

10/QKQ1_190828.002/00ww_4_10C

user/release-keys

Use volume up/down and power.

Reboot system now

Reboot to bootloader

Apply update from ADB

Apply update from SD card

Wipe data/factory reset

Mount /system

View recovery logs

Run graphics test

Run locale test

Power off

Supported API: 3

Boot Reason: (null)

Using ADB to sideload the Full OTA upgrade from the stock recovery screen

Please note the links provided here are the official links to the Full OTA for the Nokia 6.1 (2018) "PL2_sprout". If you are attempting these steps on a different Nokia phone, you will have to find the correct links for the corresponding Full OTA upgrade. Do not use the links provided here.

a. Check the Android 10 version number in the stock recovery screen.

b. If the Android 10 version is 4_10C, then, on the computer, download the Full OTA upgrade from here: https://android.googleapis.com/pack.../c6260831df0acdfe9828f18bcea7ffb556f4b2e5.zip

If the Android 10 version number in the stock recovery screen is 4_15C, then download the Full OTA upgrade from here: https://android.googleapis.com/pack.../bb7fea8687fc11e36c298f2b8e49c0116a174e11.zip

c. If you have a custom recovery on your phone, now press the keys to start the ADB sideload.

d. If you have the stock recovery, on the phone, use the volume down key to move the selection to "Apply update from ADB" and press the power key to confirm the selection.

e. On the computer, open a Command Prompt, and change the current directory of the command prompt to the folder in which the platform tools were installed.

f. Type in the following command, replacing [complete path to filename] with the complete and exact path to the file downloaded in step b above, including the full name of the file itself, and at the end of the command press the Enter key:

adb sideload "[complete path to filename]"

The phone screen will show it is finding the package, opening the package, verifying the package, and then it will install the package in two steps: Step 1/2 and Step 2/2.

g. When the two steps have completed, you may see some error messages about the recovery log on the phone. You can safely ignore these errors.

h. The menu entry selected on the phone screen should now be "Reboot system now". Press the phone power button to restart the phone.

i. In some cases, the phone will now start normally into Android 10, with all data intact. If so, congratulations! You can skip the rest of this post.

j. In most cases, the phone will again show the enablefilecrypto_failed screen. You will want to select "Try again" with the volume keys and press the power button to try to start the phone normally again.

k. When you have tried this 5 times, you can assume it is not going to work. Select "Factory data reset" with the volume keys and press the power button.

l. The phone will prompt you with a warning "Wipe all user data? THIS CANNOT BE UNDONE!" Select "Factory data reset" with the volume keys, and press the power button.

m. The phone will now wipe all user data, and then turn off.

n. When the phone has turned off for a good while, press the power button (you may need to hold the power button a bit longer than usual). The Nokia logo should come up. The Nokia logo will stay on the screen for a relatively very long time. Your phone should eventually start the Android 10 startup sequence ("Welcome" etc.), in which you will be asked to set up your phone.

o. My recommendation is to connect the phone to WiFi and allow it to download and install all applicable OTA updates before you continue to set up the phone. These incremental OTA upgrades do not usually cause the issue we experienced with the Full OTA upgrade from Android 9 to Android 10.

Links to various sites, posts and blogs which I used to prepare the above:

Reddit describing the issue, with actual screenshots: https://www.reddit.com/r/AndroidPreviews/comments/f2uqz7/nokia_61_got_stuck_in_loop/

Another article describing the issue, with a simpler fix which works for some phones: https://www.techmesto.com/possible-fix-nokia-smartphone-stuck-on-download-mode-after-ota-update/

Article describing how to apply OTA using ADB Sideload, including links to official OTA downloads: https://www.the***********.com/nokia-6-1-plus-android-10-update/

Link to discussion on Nokia community which was the main inspiration for my above post: https://community.phones.nokia.com/discussion/comment/149245/#Comment_149245

Link to thread here on XDA Developers about what seems to be a similar issue with the Nokia 7.1: https://xdaforums.com/nokia-7-1/help/android-10-bootloop-update-t4022893/page3

Link to official TWRP FAQ with explanation about ADB Sideload: https://twrp.me/FAQ/

Link to unofficial TWRP recovery which supports encryption on the Nokia 6.1 (2018) (useful only if the phone has an unlocked bootloader): https://xdaforums.com/nokia-6-2018/development/unofficial-twrp-3-4-0-0-team-win-t4122949

Information about the install of Magisk: https://www.xda-developers.com/how-to-install-magisk/

Information about applying OTA updates with Magisk installed (this procedure does not seem to work for the Full OTA upgrade from Android 9 to Android 10, through no fault of Magisk): https://topjohnwu.github.io/Magisk/ota.html

I welcome any comments to this post.