When I read that people were getting full Windows 10 running on a Lumia 950XL I thought it was time to dust off my old phone and give it a try. This is the full version of Windows 10 running on the Lumia 950, not the Windows 10 Mobile version so you get full Microsoft Edge, command prompt, devices manager, the whole works. Before you ask why would you want to run a desktop OS on a phone, I would say why not!

It comes down to unlocking the phone, creating an ARM based installation of Windows 10 and then installing the OS. I found it a bit trial and error but by the end of it, I had the OS running and using Dual Boot with Windows 10 Mobile still an option.

All the documentation and tools I used are from the Windows on ARM project page on github.

UPDATE: The project has moved to a new location: https://github.com/WOA-Project/WOA-Deployer-Lumia

Unlock the phone


The first thing I did was unlock the phone’s bootloader so you can enter Mass Storage Mode. This mode makes the phone work as a USB drive so the tools can copy over the Windows image files. As per the guide, I used WPInternals.

With the tool I unlocked the bootloader and put it into Mass Storage Mode. You have to hold down the power button on the phone for 10 seconds and then the tool can put it into storage mode.

Getting the Windows 10 image

You need an ARM version of Windows 10 to apply to the phone, and this GitHub page helps you get the image. From the site I selected the Windows version, language and download types from the dropdowns. It then gave me a batch file which will create the Window image. So I copied it to my machine and kicked off the batch file. Make sure you at least 7GB free on your PC.  This step took about an hour as it created a WIM (Windows Image file) ready for installation.

WOA Installer for Lumia

Again following the guide on the GitHub page I downloaded and installed the WOA Installer for Lumia tool (available here). I need some core files also available here. After installing the tool you go to the Advanced section and click on Import Core Package and bring in the zip file you have downloaded.

Once you have the WIM file built and the phone in Mass Storage mode you can go to the Windows Deployment tab, selection the image, select your phone and then click on Full Deployment. I found this took over an hour.

Booting up

When I started it up for the first time it went through the start up motions and then promptly crashed

I do not know how I fixed it but I rebooted a few times, plugged in the USB a couple of times and then it started up and went through the standard Windows 10 setup including Cortana, Windows account and WiFi.

Windows 10 was then up and running. I could get into all the apps, command prompt, explorer etc.


Dual Boot and GPU drivers

One of the problems I have found with Windows 10 on the Lumia is that the phone will not charge, not via a PC or mains charger. It will charge in Flash mode but the best option is to enable Dual Boot. This means on startup you can pick between Windows 10 or Windows 10 Mobile. In Windows 10 Mobile mode the phone charges ok.

To enable dual boot go back to the installer tool, go the dual boot tab and enable dual boot. You need to be in Mass Storage mode to enable it. From this mode you can also install the GPU drivers if you have a Lumia 950 XL. Once the drivers are copied over from the tool you go back into Windows 10 on the phone and via Device Manager install the graphics driver. This makes the phone seem faster and it runs cooler. The step by step driver instruction are included in the WOA tool.

What works and what doesn’t?

So far, I have found nothing connected to the USB port works. No charging, keyboards or Mice. To charge the phone I boot it back into Windows 10 Mobile.

What does work is Bluetooth. I connected a Bluetooth keyboard without any problems. WiFi also works without any issues.

Sound works but the volume control does not seem to do anything.

The screen looks great, it runs at 1440 x 2560 and you can manually rotate the display but there is no automatic rotation.

In Device Manager there are a lot of missing drivers, but I haven’t found a way to setup the mobile data driver or any of the sensors.

All the inbox apps seem to work ok. Windows Explorer, command prompt, Microsoft Edge, Mail and other apps all worked just as they would on a PC.



Once I installed the GPU driver the performance is actually pretty good. It is a little slow opening apps, but no slower than my Yogabook and even with a few apps open it did not slow down. Open a lot of apps and it does start to struggle and get very sluggish.

After I first got it up and running, I found the phone was running very warm but after installed the GPU driver it ran a lot cooler. It does seem to eat through the battery as well, maybe about 4 hours from a full charge.

Windows on the Lumia works best in tablet mode but some things in Windows are a bit small on the 6 inch screen. I am going to try changing the display scaling to see if that helps.

Obviously, there isn’t really a practical reason to run full version of Windows 10 on a Lumia 950 XL but it’s an interesting challenge and fascinating to see Windows 10 on ARM. Having the dual boot option means you can switch between Windows 10 and Windows 10 Mobile.

Full credit to José Manuel Nieto for creating the tools to get this working and for Ian Walker for inspiring me to give it a go!
Here is the phone in action:

5 thoughts on “Getting Windows 10 on ARM up and running on a Lumia 950XL”

Leave a Reply