Windows Phone 8.1 bootloader unlock and application deploy

About Windows Phone 8.1

Windows Phone 8.1 is the third generation of Microsoft’s Windows Phone mobile operating system, succeeding Windows Phone 8. Rolled out at Microsoft’s Build Conference in San Francisco, California, on April 2, 2014, it was released in final form to Windows Phone developers on April 14, 2014 and reached general availability on August 4, 2014. All Windows Phones running Windows Phone 8 can be upgraded to Windows Phone 8.1, with release dependent on carrier rollout dates. - Wikipedia

Why

You want to unlock the bootloader and enable root access if you want to deploy applications to your phone and you don’t want to upgrade to Windows 10 Mobile (the special case of Nokia Lumia 1020 because it loses access to several features of the PureView camera, like RAW photo exports; also it has been reported that the camera is ultra slow in WP 10).

Microsoft Store is gone so this is the only way you can deploy games and applications to your phone, like Telegram , VLC player , The Sims, Adobe Photoshop Express, Civilization Revolution and many more. One notable application that won’t work is Whatsapp because Facebook sucks sweaty donkey balls. Sorry but not sorry.

Requirements

Before you start make sure you actually have a compatible phone:

And the respective phone has a compatible OS:

  • 8.10.12393.890
  • 8.10.12397.895
  • 8.10.14219.341
  • 8.10.14226.359
  • 8.10.14234.375
  • 8.10.15116.125
  • 8.10.15148.160

You’ll need a Windows 10 machine (recommended, should work with Windows 7 too but I haven’t tested it) or a Virtual Machine (VirtualBox , VMware , etc) and less than an hour of your life.

Hardware

  • A Nokia/Microsoft Lumia phone with Windows Phone 8.1 already installed. If you have Windows Phone 10 already installed you need to downgrade first. In my case, I have a Nokia Lumia 1020 (code RM-875) phone ready to be smashed into pieces enhanced. Make sure it’s fully charged or at least over 60%.

  • A micro USB cable to connect the phone to the Windows 10 machine/VM.

Software

  • WPinternals 2.8 - external link , mirror
  • Engineering SBL3 files for your phone if you want to enable Mass Storage Mode (recommended) - link . Extract them somewhere.
  • Emergency Flash Loaders for your phone model. Use WPinternals tool to download them or the LumiaFirmware site .
  • The original firmware you already have installed on your phone in .ffu format. WPinternals can assist you in downloading the correct firmware or you can use the LumiaFirmware site . You will need the correct code for your phone (RM-875 for Nokia Lumia 1020).
  • Microsoft Visual Studio Community 2015 , might work with other versions but not tested.
  • WPV XAP deployer 2.0 if you want to actually deploy apps to your phone - external link , mirror
  • Lumia applications repository

Modus operandi

Start by opening the Windows Phone Internals app as administrator (wpinternals.exe) and connect the phone to your Windows machine/VM using the micro USB cable. Power up the phone. Now there are four steps and the last one is optional.

1. Download required files

On the left side of WPinternals select Download and make sure the Producttype, Productcode and Operatorcode fields are filled in correctly. For my Lumia 1020 phone, the product type is RM-875, the product code is 059T7R5 and the operator code is HUT-GB. You will see different values depending on your phone.

Press the Search button and wait while the Search results field is populated with two entries: the .ffu firmware file for your phone, os version and carrier and the emergency flash loader files.

Press Download all and go grab a cup of coffee, tea or whatever your poison is. When the application will finish downloading the firmware and emergency files (about 1.6GB of data) it will download another .ffu for a different phone model and OS because it needs to extract some files from it. This download will be about 3GB of data. So it will be a total of ~4.6GB of downloaded data, keep that in mind if you’re on a metered connection.

The downloaded files go into C:\ProgramData\WPinternals\Repository unless you change it.

For my phone it downloaded four files:

  • RM-875\FAST8960_EOS_ROW.hex
  • RM-875\RM875_3051.50009.1424.0003_RETAIL_eu_euro1_260_03_447996_prd_signed.ffu
  • RM-875\RM875_msimage_v1.0.mbn
  • RM-1085\RM1085_1078.0053.10586.13169.12547.035242_retail_prod_signed.ffu

Remember that the files (and names) above will be different for you because you will have a different phone model, a different product code and a different operator code (carrier). Once all the files are downloaded you can proceed to the next step.

2. Unlock bootloader

On the left side of WPinternals select Unlock bootloader and you will get a notification “In order to start unlocking the bootloader, the phone needs to be switched to Flash-mode”. Click OK and wait. Once the phone is rebooted into flash mode you will see the Nokia logo on the phone screen and WPinternals will automatically connect to it.

On the new screen press Select your FFU-image… and select the .ffu image you just downloaded. Make sure it’s the one for your phone not the different one. In my case that would be the RM875_3051.50009.1424.0003_RETAIL_eu_euro1_260_03_447996_prd_signed.ffu file. Click on the Optionally select an FFU-image or raw image with an Engineering SBL3 partition.. link and select the correct SBL3 engineering file for your phone (download the .zip file from the Requirements -> Software section above, extract it somewhere and locate the correct file for your phone; for my phone that would be Engineering-SBL3-Lumia-1020.bin).

Press Unlock and go drink some more coffee.

3. Enable root access

On the left side of WPinternals select Enable root access and click Unlock Phone. The phone will be rebooted into Mass Storage mode and WPinternals will do its magic. If the phone doesn’t reboot into the normal mode automatically, press Info on the left WPinternals menu and under the General info section press Normal.

That’s it, your phone’s bootloader is unlocked and you enabled root access.

4. Deploy your first app

In order to deploy applications in XAP, APPX or APPXBUNDLE formats to your phone you will need to install Microsoft Visual Studio 2015 community (link above in the Requirements -> Software section) because this will be installing the deployment tools.

After Visual Studio is installed, go to the Windows machine’s Start Menu, Windows Phone SDK 8.1 submenu and click on the Windows Phone Application Deployment 8.1 tool.

On the Target dropdown make sure Device is selected. Click Browse and select a .xap, .appx or .appxbundle file with the application you want to deploy to your phone. You can browse the Lumia applications repository for stuff you want to install on your phone.

Click Deploy and wait for the application to be deployed onto the phone and the icon to appear in the phone menu.

Note

If you don’t install Visual Studio 2015 and instead install the lite Windows Phone 8 SDK and the lite Windows Phone 8.1 SDK you will need to use the WPV XAP Deployer tool from the Requirements -> Software section to deploy the apps to your phone.

Software

There is a huge repository of Windows Phone applications thanks to Μιχάλης Παπαχαραλάμπους here but some of the apps you might want to install are below (direct links):

More info

The Lumia phone has 3 modes of operation:

  • Normal mode - boots normally into the Windows Phone operating system.
  • Flash mode - boots into the flashing profile which is used for querying and provisioning the phone.
  • Mass Storage mode - enables you to accedd the complete filesystem of the phone. NOTE: make sure you don’t alter or remove files because you can easily brick your phone.