FORUMS

Analysis & Opinion

Top Forum Discussions

Tutorial - Flash an Lumia device

2,003 posts
Thanks Meter: 1,363
 
By Khaagan, Recognized Contributor on 6th November 2013, 08:46 PM
Post Reply Subscribe to Thread Email Thread
Tutorial - Flash an Lumia device

Preamble








Introducing

The Lumia devices, like the others smartphones, are compounds of an software system, this one constituting what that is called abusively an ROM (Read-Only Memory). It's possible to replace it by another. This modification, done through various specific softwares, is called the flash.

Since this tutorial, to done this modification in your Lumia device, you have to use the Windows Phone Image Designer (WPID) software developed by Microsoft. This software uses the Microsoft FFU Download Mode booting to done this.

The mostly of the Internet links or of the screenshots included in this tutorial can display various advertisings once opened. You can watch this short video to learn how to access at the real content of an Internet link or of an screenshot.

Don't hesitate to post your feedback by message on this thread. This tutorial is also available in French from the MonWindowsPhone community.


Disclaimers and advices

The XDA-Developers community, her representatives (staff), her members, Microsoft, myself (Khaagan), or any other entity/person whatever it is, can't be responsible in case any damage of your Lumia device after the utilization of this tutorial.

The utilization of the Windows Phone Image Designer software could produce an software damage of your Lumia device. As comparison, the utilization of the Windows Phone Recovery Tool (WPRT) software could produce an software damage of your Lumia device even more severe than of the previously mentioned software.

I recommend to accomplish this tutorial on an PC with an separate alimentation of the sector for palliate at the potential power cuts. For example, a laptop PC has an built-in battery.

Be sure to remove the microSD card (if available) and the SIM card of your Lumia device during all of this tutorial and of fully charge the battery of it.

Of course, the replacement of an ROM by another in your Lumia device would deleting any data. So remember to backup all your user content.

Lastly, I recommend to read correctly and entirely the differents steps of this tutorial, because the important informations are written.


Information about the sharing and/or the translation of this tutorial

If you wish, you can share and/or translate the totality of this tutorial. However, there is few necessary conditions at this. Thus, in your thread:
  • indicate clearly the original author (me, Khaagan) of this tutorial;
  • provide an Internet link redirecting to the original tutorial (source) clearly visible;
  • if the screenshots are those of the original tutorial, don't remove the XDA-Developers watermark;
  • don't re-upload the LumiaFlashTools.zip archive elsewhere. In others terms, keep the original download link (available on this tutorial) for this archive.
If you respect these few necessary conditions, so you can send me an private message, or post an message on this thread, indicating the Internet link of your thread for that I included you in the thanking.


Structure of tutorial

I have wrotre this tutorial of manner clear, complete and simple as possible, this for that the largest number of you can achieve this tutorial easily and without clutters. The tutorial is written into six parts, each constituted of a specific theme:Several screenshots are included in this tutorial to provide an visual support. These are shown as an image logo, in order to keep some clarity and cleanliness. However, know that you can click on them to access at this screenshots.

Different numbers of blue color appear in the text of the tutorial and are reproduced on the screenshots. An number corresponds at an action or at an information described textually in the tutorial and visually in the screenshots.


Status of the servers

The status of the servers where the ROMs are stored can take three differents forms:
  • available;
  • partially available;
  • unavailable.
Current status of the servers: available (last checking done the 13/07/2015 at 03:58 pm UTC+2).


Thread by the Numbers

Here are some statistics from this tutorial that I'd like to introduce you. Currently, only the tutorial written in English on the XDA-Developers community is taken into account.
  • 700 000 is the number of readings of this tutorial.
  • 4 000 000 is the number of minutes spent to flash.
  • 900 000 is the number of GB of data downloaded.
Thanking

I wish say thank so much to all those who support the work done, but likewise those who post the feedbacks! If you want to offer to me a coffee, a beer, or any others drinks, here is my PayPal account. Note that if you make a donation, you'll be mentionned below, except otherwise specified of your part.
  • Thank to Aleksandar Rankovic for his donation.
  • Thank to @Androidrobbus for his donation.
  • Thank to Armin Roth for his donation.
  • Thank to Arthur Goan for his donation.
  • Thank to Carlo Paje for his donation.
  • Thank to Carlos Benavides Marroquin for his donation.
  • Thank to @DatDereX1 for his donation.
  • Thank to David White for his donation.
  • Thank to Dean Harris for his donation.
  • Thank to @GEO147 for his donation.
  • Thank to @gio300zx for his donation.
  • Thank to @hlava for his donation.
  • Thank to Ian Jones for his donation.
  • Thank to Issa Al-Balushi for his donation.
  • Thank to Jean-Marie Coulot for his donation.
  • Thank to Jonathan Sato for his donation.
  • Thank to @LeeC22 for his donation.
  • Thank to @malvo26 for his donation.
  • Thank to Manish Pandey for his donation.
  • Thank to Mariusz Koniuszko for his donation.
  • Thank to Microsoft for having developed his software.
  • Thank to @pdaimatejam for having provided the required driver.
  • Thank to Richard Black for his donation.
  • Thank to Steven McConnachie for his donation.
  • Thank to tarzanxxl for his donatiOn.
  • Thank to Theodore Wong for his donation.
  • Thank to Thomas Sobey for his donation.
  • Thank to @Vuillard for his donation.
  • Thank to @willverduzco for his article of this thread.
  • Thank to @WPVision.de for his German translation of this tutorial.
Last edited by Khaagan; 28th July 2015 at 12:51 PM.
The Following 259 Users Say Thank You to Khaagan For This Useful Post: [ View ]
 
 
6th November 2013, 08:46 PM |#2  
Khaagan's Avatar
OP Recognized Contributor
Flag Abou Dabi & Duba´
Thanks Meter: 1,363
 
Donate to Me
More
Various preparations
Tutorial - Flash an Lumia device

Various preparations









Prerequisites

To accomplish this tutorial, you must get different prerequisites. Thus, all that will be required is mentioned below.
  • You must determine the product code that is appropriate to your Lumia device. To do this, it is imperative to refer at the Annex - Additional informations.
  • You must download the LumiaFlashTools.zip archive.
  • You must have an Lumia device incorporating Windows Phone 8 or later as operating system.
  • You must have an PC incorporating Windows 7 (x86 or x64) or later as operating system.
Decompression of the archive

You must decompress, with an software intended for this usage, the LumiaFlashTools.zip archive that you have previously downloaded. Once that this decompression is done, you will have access at the LumiaFlashTools folder containing:
  • the Driver subfolder;
  • the NaviFirm+ subfolder;
  • the WPID subfolder.
Installation of the required driver

For that your PC detects your Lumia device, it is necessary to install what is called a driver. This is indispensable for that your PC and your Lumia device can communicate and interact together (interoperability).
  1. The driver that we will install, required so that your PC detects your Lumia device, being non-digitally signed, you must performed an manipulation that aims to temporarily disable driver signature enforcement. To do so:

    • if your PC is equipped of Windows 7, follow this tutorial;
    • otherwise, if your PC is equipped of Windows 8 and higher, follow this tutorial.

  2. Once that the disable driver signature enforcement is performed, you must access to the ..\LumiaFlashTools\Driver directory and execute the Install.bat batch file (1).



  3. The Device Driver Installation Wizard window appears. Click on the Next button (2). The Installation of the driver begins. If the Windows Security window appears showing the Windows can't verify the publisher of this driver software message, click so on the Install this driver software anyway button (3).



  4. The installation of the driver ends. Thus, an message tells you that it is ready to use (4). Click then on the Finish button (5).



  5. This part of this tutorial being finished, you can henceforth follow the third part written below.
Last edited by Khaagan; 2nd August 2015 at 10:29 AM.
The Following 14 Users Say Thank You to Khaagan For This Useful Post: [ View ]
6th November 2013, 08:46 PM |#3  
Khaagan's Avatar
OP Recognized Contributor
Flag Abou Dabi & Duba´
Thanks Meter: 1,363
 
Donate to Me
More
ROM's download
Tutorial - Flash an Lumia device

ROM's download









Utilization of the NaviFirm+ software

The ROMs are available on the servers belonging at Microsoft, under form of FFU file, you can download them in different ways. The NaviFirm+ software is particularly used to access these servers. In its free version, this software allows download only the latest version of the ROM on servers, this in according to an input information called product code.
  1. Access to the ..\Lumia Flash_Tool\NaviFirm+ directory and execute the NaviFirmPlus.exe program (1).



  2. The NaviFirm Plus window appears and also an superimposed window Account Setup. As for this tutorial a free account is more than enough, simply click on the Cancel button if you don't have a paid account (2).



  3. Enter the product code that you have chose in the intended zone for this effect, then press the Enter key on your keyboard (3). Click on the Unmark All button (4), and select only the FFU file identifiable by his *.ffu extension (5).



  4. Click on the Download button (6).



  5. Thus, the FFU file that you have select is progressively downloaded.



  6. Wait the complete end of the download, thus the FFU file should be totally in green color. If it was not correctly downloaded, it will red color, then repeat the download.



  7. This part of this tutorial being finished, you can henceforth follow the fourth part written below.
Last edited by Khaagan; 28th July 2015 at 12:52 PM.
The Following 11 Users Say Thank You to Khaagan For This Useful Post: [ View ]
6th November 2013, 08:47 PM |#4  
Khaagan's Avatar
OP Recognized Contributor
Flag Abou Dabi & Duba´
Thanks Meter: 1,363
 
Donate to Me
More
ROM' installation
Tutorial - Flash an Lumia device

ROM's installation









Booting of your Lumia device

To continue this tutorial, it is necessary to boot your Lumia device in the Microsoft FFU Download Mode. To do so, follow the five steps mentioned below:
  1. Turn off your Lumia device.

  2. Press and hold the power button to start your Lumia device.

  3. When your Lumia device starts, it displays the Microsoft or Nokia logo. At this instant, release the power button, then press and hold the volume up button. This step should be done quickly.

  4. After a few seconds, an image composed of a white lightning and a white gear wheel appear on the screen of your Lumia device. At this instant, release the volume up button.

  5. Connect your Lumia device at your PC, this one should simply detect it.
Installation of the ROM

The most important part of this tutorial will begin, but it is also the most critical. You go use the Windows Phone Image Designer software for flash your Lumia device.
  1. Access to the ..\Lumia_Flash_Tools\WPID directory. Execute the Start.bat file.

  1. The Windows Phone Image Designer window appears and also two batch windows (don't close it, otherwise it will result in also close the software). Select the Flash a Windows Phone image onto your phone option (2), and click on the Next button (3).



  2. As you have connected your Lumia device in Microsoft FFU Download Mode at your PC, the software should detect it as x.MSMx.x.x.x where the differents x are variable in according on the connected Lumia device (4). If your Lumia device hasn't been automatically detected by the software, you can click on the refresh button (5). Then click on the Change button (6).



  3. The superimposed windows Open appears. Since this window, access to the ..\Lumia_Flash_Tools\NaviFirm+\Fw\059xxxx directory (where the different x are variable in according on the downloaded ROM). Select then the FFU file that you previously downloaded (7), and click on the Open button (8).



  4. Click on the Flash button (9). The software then proceeds at flash, in your Lumia device, of the ROM that you previously selected.



  5. A few minutes later, the installation process terminates. The software indicates then that the ROM you selected has been installed in your Lumia device.



  6. Your Lumia device should restart automatically, integrating then the ROM that you just flash him. You can then disconnect him from your PC.
Last edited by Khaagan; 2nd August 2015 at 10:30 AM.
The Following 64 Users Say Thank You to Khaagan For This Useful Post: [ View ]
8th November 2013, 02:40 PM |#5  
Khaagan's Avatar
OP Recognized Contributor
Flag Abou Dabi & Duba´
Thanks Meter: 1,363
 
Donate to Me
More
Explanations Lumia devices product type, product code, ROM, updates, etc
Tutorial - Flash an Lumia device

Annex - Additional informations









Introducing

The Product Type and Product Code are used to identify the origin of the Nokia devices ROM (in our case, the Nokia Lumia Windows Phone 8). They are also used for downloading the Nokia Lumia Windows Phone 8 ROM in using [Tutorial] Unbrand (flash) Lumia devices. At the end of this thread, you'll know why there is a differences between each ROM when deploying updates (OTA and FOTA) of Microsoft and of OEMs (manufacturers). Also, You'll know what is a Product Type and Product Code of Nokia, how to differentiate/recognize, what they are and how to flash. And a list of Product Type and Product Code is available a bit lower.


The product type

He composed, himself, under the form RM-xxx (where xxx is only three digits, eg RM-821 is one of the Product Type of the Nokia Lumia 920). Each Product Type corresponds to different physical features (hardware) such as networks frequency, which are different for different regions of the world (divided into several large parts). The Product Type can be "virtually" changed / flashed, but only in specific cases (same device, unlocked bootloader (maybe?), etc). This would imply, necessarily, of change/flash also Product Code because it is defined by the Product Type. However, this was not very useful because some capabilities are lost due to hardware and/or software. A list of Product Type and Product Code is available here a little further down.


The product code

He composed, himself, under the form 059xxxx (where xxxx is usually an alphanumeric combination, eg 059Q8C2 is a Product Code of Nokia Lumia 920 RM-821). Each Product Code indicates origin and corresponds to a particular and specific region of the world: a country, a mobile operator, etc. The Product Code can be "virtually" changed/flashed with far fewer restrictions than Product Type (see below).


The "description"

Undoubtedly the part of this thread, the most longest to explain. A "description" is increment at the Product Code and at the Product Type. This gives: Product Code + Product Type + Description. Note that there is not a "+" normally, it is just for example. It is the combination of these three products that shape completely and truly a Product Code. The description is very important because without, it we would not know corresponds what this such or such Product Code, which would be a pity, of course.

But, what this description is composed? Well, it is actually composed of some variable information (series of words, most of which are initials) we indicating the source of the ROM (because yes, at Nokia, Product Code = ROM). Some information is easy to guess/find, others a little less, it's like that (myself, I do not know them all).
  • Example of a Complete Product Code (059V276 RM-937 VAR EURO FR CV BLACK) under infographic form (click on the images to enlarge):

    So, we can see that this Product Code is principally a variant for the RM-937 (Nokia Lumia 1520) black color, unbranded/naked, located in Europe and specifically in France.
  • Another example of a complete Product Code (059S559 RM-915 VAR APAC AU TELSTRA SL) under infographic form (click on the images to enlarge):

    So, we can see that this Product Code is principally a variant for the RM-915 (Nokia Lumia 520), SIM Locked and branded on the Telstra mobile operator, located in Asia-Pacific and specifically in Australia.
List of Product Type corresponding to such or such Nokia Lumia:
If you want to know what is your Hardware Product Type, then it is usually inscribed physically or in/on the drawer of the SIM card or in/on one MicroSD card. You can also look at what it is on the Internet (you can look here just below).
List of region code in the world:
  • APAC = Asia-Pacific
  • EU / EURO / EURO1 / EURO2 = Europe
  • IMEA / MEA = Middle East and Africa
  • LATAM / LTA = Latin American
  • NAM = North American
  • Etc ...
List of country codes under ISO official form:
List of country codes available on the official website of the ISO standards.
List of mobile operators in the world:
List of mobile operator available on Wikipedia.
List of color codes:
  • BLACK
  • GREEN
  • GREY
  • RED
  • WHITE
  • YELLOW
  • Etc ...
List of other information that maybe mentioned:
  • 16GB, 32GB, 64GB, etc ... = A simple reference to determine the amount of memory available in the system (because there are variations of memory size, are generally operators variant).
  • GLOBAL = Product Code which incorporates most of the global information/settings (this is a Product Code which is almost never updated).
  • SL = SIM Locked
  • Etc ...

Branded, unbranded, you have said a difference?

And a big difference! Mobile operators love to create firmware to integrate in the ROM. Generally, they are useless and poorly built for at final weigh down the whole system, hoping that you will use their sometimes questionable application. Moreover, most users seek to remove this embarrassing firmware.

At best, under Windows Phone, they will make an accent color in more (typically the color of their logo) but they do not all do. In parallel, they incorporate a lot of little unnecessary parameters. No need to mention the fact that some mobile operators (I would not give names, but they are very recognizable) remove some features. Also, the updates are strictly deployed by the mobile operator itself: hence their deployment takes forever. Branded, is the term given to this very common practice for most mobile operators.

But good news: we can unbranded our terminals, that is to say, make the device "naked". It turns out that this term is the exact opposite branded practice. No firmware operator, in the case of Windows Phone, it is 100% clean of Microsoft and of OEM. Moreover, the VVM (Visual VoiceMail) are integrated if available for the country/operator. For updates, it is directly OEMs who give the green light to Microsoft. You'll probably including: totally prefer unbranded/naked Product Code!



Availability of FOTA/OTA updates

If you do not know, the availability of updates OTA (Over The Air) and FOTA (Firmware Over The Air) is directly influenced by the ROM integrated at your device Windows Phone 8. The cause? A registry key whose value differs from the ROM to another, depending on the country (unbranded/naked) and/or mobile operator (branded).

Indeed, if you are, for example for Nokia Lumia, in a Hong Kong Product Code while you wait for the deployment of updates to France, you may, I fear, long wait. Another example: if you are under a branded Product Code Orange France, deployment updates shalt be slower and you may, again, wait long, in conversely that if you were under the French unbranded/naked Product Code.

This is valid for all Windows Phone as well as WP7.x and WP8.x (that this whether HTC, Huawei, Nokia, Samsung, etc ...).



But then, what product code/ROM is better for me?

Good question. Well it depends on a couple of things... I urge you to flash a Product Code that corresponds above all to your device, your country and is unbranded/naked. Even if I repeat, never take a branded Product Code, it is a golden rule and everyone will tell you (if unbranded/naked is available for you)! Third thing that enters into account, although this is irrelevant if you are mistaken: the color of your Nokia Lumia Windows Phone 8.

To help choose the correct Product Code, I created a listing of most of the Product Code Nokia Lumia Windows Phone 8, available here a little further down.



The hardware product code

As you know, we can change/flasher of Product Code (to the extent possible and of the device type). However, this does not mean that the Hardware Product Code (Product Original Code, generally inscribed physically on/in the drawer of the SIM card or on/in one MicroSD card) will be changed. Clearly, the Hardware Product Code will not change, whatever you do! That said, it has no impact on the flashed Product Code: in fact, ​​in it is just there to remember "who he is, what is her name" and be able to easily re-flash if necessary. I would not speak of Hardware Product Type, but know that the principle remains the same.


What are ways to flash a product code/ROM?

There are a lot of ways, diverse and varied, to change/flash a Product Code, som less official than others. That is why I would treat two means provided by Nokia itself:
  • Nokia Care Suite, the with lots of features, can do a lot of manipulation. You can, download any Product Code (by entering the correct settings), read the IMEI, re-flash the Hardware Product Code, flashed (change/unbranded) any Product Code (to the extent possible and types), debriked/repaired, perform hardware tests, generate error reports, and much more.
  • Nokia Software Recovery Tool, allows download, flash and debricked/repaired the only Hardware Product Code. But, its UI (User Interface) is very simplistic.

List of Lumia devices product type and product code
Last edited by Khaagan; 28th July 2015 at 12:53 PM.
The Following 26 Users Say Thank You to Khaagan For This Useful Post: [ View ]
8th November 2013, 02:40 PM |#6  
Khaagan's Avatar
OP Recognized Contributor
Flag Abou Dabi & Duba´
Thanks Meter: 1,363
 
Donate to Me
More
Frequently asked questions (FAQ)
Tutorial - Flash an Lumia device

[This post will be updated soon]

Frequently asked questions (FAQ)









Can I simunlock my Lumia device with this tutorial?

No. This tutorial doesn't simunlock your Lumia device. Moreover, flash its Lumia device, howsoever the way, doesn't simunlock it. Also, if your Lumia device is already simunlocked, the accomplishing of this tutorial doesn't invalidate it.

What about the warranty if I proceed to the tutorial?


Blabla

What can I do with this tutorial?


Blabla

My Lumia device is detected by my PC as "QHSUSB_DLOAD"


If your Lumia device is bricked, and that your PC detects it as "QHSUSB_DLOAD", the Windows Phone Image Designer software can't it unbrick. Thus, several choices are available to you:
  • buy all the necessary hardware to exploit the Joint Test Action Group (JTAG) port of your Lumia device;
  • change by yourself the mainboard of your Lumia device;
  • do change the mainboard of your Lumia device by an certified/specialized service.

An error message is indicated by the software, what to do?


Blabla

My Lumia device is not detected by the software, how can I fix this?


Blabla

Can I downgrade with this tutorial?


Blabla

Can I unbrick my Lumia device with this tutorial?


Blabla
Last edited by Khaagan; 13th August 2015 at 01:19 PM.
The Following 5 Users Say Thank You to Khaagan For This Useful Post: [ View ]
8th November 2013, 03:51 PM |#7  
Senior Member
Thanks Meter: 262
 
More
@anaheiim have you tried this recently? I tried to grab some firmware for the Lumia 521 for TMO and it wouldn't let me download the firmware. It keeps saying "Access is denied. Verify credentials." when you click the download button.

Looking at the exchange through Fiddler, I got the direct link for the ffu and was able to download it no problem via my web browser. I am hoping this is just a temporary server issue, but anecdotal posts indicate it's been broken for at least a couple of weeks.
The Following 3 Users Say Thank You to compu829 For This Useful Post: [ View ]
8th November 2013, 05:47 PM |#8  
Senior Member
Flag PERPIGNAN
Thanks Meter: 134
 
More
You have installed "UserGroupsConfiguration"?
The Following User Says Thank You to titi66200 For This Useful Post: [ View ]
8th November 2013, 10:36 PM |#9  
Senior Member
Thanks Meter: 262
 
More
Quote:
Originally Posted by titi66200

You have installed "UserGroupsConfiguration"?

yes. I tried the one in in the OP as well as a few others. Everything works until you actually hit the download button. When you do, it says it was added to queue then pops up an "access is denied" error. (Then the program crashes due to poor error handling.) It looks like they deprecated the soap calls GetVariant3, GetVariant4, GetVariant, GetVariant5, and GetVariant2. Analyzing the actual packet it claims the server returned is a 500 - Internal Server error. The call at the beginning of the exchange for "GetVariantAll" works fine and returns all the URLs needed for download, so I am not sure why the additional calls are necessary.
The Following User Says Thank You to compu829 For This Useful Post: [ View ]
8th November 2013, 11:05 PM |#10  
Khaagan's Avatar
OP Recognized Contributor
Flag Abou Dabi & Duba´
Thanks Meter: 1,363
 
Donate to Me
More
Quote:
Originally Posted by compu829

yes. I tried the one in in the OP as well as a few others. Everything works until you actually hit the download button. When you do, it says it was added to queue then pops up an "access is denied" error. (Then the program crashes due to poor error handling.) It looks like they deprecated the soap calls GetVariant3, GetVariant4, GetVariant, GetVariant5, and GetVariant2. Analyzing the actual packet it claims the server returned is a 500 - Internal Server error. The call at the beginning of the exchange for "GetVariantAll" works fine and returns all the URLs needed for download, so I am not sure why the additional calls are necessary.

For me, it works.
Try with this UserGroupsConfiguration.
The Following 5 Users Say Thank You to Khaagan For This Useful Post: [ View ]
8th November 2013, 11:21 PM |#11  
Senior Member
Thanks Meter: 262
 
More
@anaheiim. Same problem with that file. "access is denied". Also, I tried the DataPackageManager application. That returns "error while retrieving a list of variant packages" whenever I click "search".
The Following User Says Thank You to compu829 For This Useful Post: [ View ]

Read More
Post Reply Subscribe to Thread

Tags
flash, how to, nokia lumia, rom, unbrand
Previous Thread Next Thread