Flashing FFU on Surface Duo 1
Edit This Page
Files/Tools Needed đ
- Windows UEFI: Surface.Duo.1st.Gen.UEFI.Fast.Boot.zip/uefi.img
- Platform Tools from Google (ADB and Fastboot)
- FFU Tools
- An FFU file for Surface Duo (1st Gen): FFU Release Channel
- A Windows PC to flash the device
PLEASE READ AND BE SURE TO UNDERSTAND THE ENTIRE GUIDE BEFORE STARTING
What you will get đ
You will end up with both Android⢠and Windows on your Surface Duo. Android⢠and Windows will both split the internal storage.
Android⢠will boot normally, and you will have to use a PC to boot Windows when needed, unless you create a dual boot image (explained later).
Steps đ ď¸
Unlocking the Bootloader
If not already done, please first proceed with the Unlocking the Bootloader guide for Surface Duo (1st Gen). Come back once youâre done. If you already followed this guide, please skip the unlocking section.
Getting to FFU Loader
- Reboot into the Bootloader mode by running this command while inside Androidâ˘:
adb reboot bootloader
Image of what you should see right now: Surface Duo in Bootloader mode
- Start by booting the UEFI:
fastboot boot uefi.img
- Press the Volume Down Key on the side of your device til you see something like shown below on screen:
Congratulations, youâre now in FFU Loader.
Flashing the Windows FFU Image
- Open a command prompt where you extracted the FFU-Loader-Tools archive, and run the following commands:
ImageUtility.exe FlashDevice -Path <Path to the FFU File you downloaded>
You should now see the device flashing on both your computer and on the device, wait til the process is complete. In case the PC complains the device was not found, try using an USB-2 port or cable that downgrades your connection to USB-2, there are known issues with the UEFI that prevent USB-3 from functioning properly at the moment, and will be addressed in a future update.
Once done you should be seeing the following screen:
- Now reboot the device, you should be back to the bootloader menu:
ImageUtility.exe RebootDevice
In case the bootloader menu does not automatically come up, press the volume down when running above command to be 100% sure you go into the bootloader menu.
Run the following two commands:
fastboot set_active other
fastboot set_active other
Reset Androidâ˘
If this is your first time flashing this FFU file, please also erase your Android⢠userdata partition (this is not required if you already flashed this FFU file, or, you previously installed windows manually using our guides on a 128gb device (256gb users need to follow these commands regardless)) (You will have to setup Android⢠again after) If you do not meet above condition, you can directly skip to the boot Windows Step.
- Letâs first erase the userdata partition and reboot back to Androidâ˘
fastboot reboot -w
- You should now be seeing the Android⢠Out of Box Experience (OOBE). Setup your phone to confirm it works correctly.
Assuming your Surface Duo is booted to Androidâ˘, plugged to your PC
Using the Microsoft Launcher, find the settings app
- Open the Android⢠Settings app
- Scroll down to the about section, and open it
- Scroll all the way down til you see the Build Number field
- Press the Build number field 7 times consecutively, you should first start to see a popup after 3 taps
- Once done tapping 7 times, you should be seeing this popup instead
- Now go to the System section, you should see a new Developer options section like shown below
- Go to the Developer options section
- Scroll all the way down til you see the âUSB debuggingâ option
- And turn on the âUSB debuggingâ option
- Reboot into the Bootloader mode by running this command while inside Androidâ˘:
adb reboot bootloader
Image of what you should see right now: Surface Duo in Bootloader mode
Boot Windows đ
We are ready to boot for the first time!
Letâs boot the UEFI, from a command prompt:
fastboot boot uefi.img
This step above will be needed every time you will want to boot Windows and needs to be done from the Bootloader mode.
If you did everything right, Windows will now boot! Enjoy!
Note: If the Touch keyboard wonât show up in OOBE, touch somewhere else (to let the text box loose focus) and then touch into the text box again. As an alternative, you can use the On-Screen Keyboard.
Let Windows set itself up, and come back once youâre on the Windows Desktop on your Surface Duo
Note 2: If you get a BSOD (bugcheck screen) during initial setup, you can try erasing both the esp and win partitions using âfastboot erase espâ and âfastboot erase winâ, and reflash the FFU file, then it should work. This issue will get fixed in later FFU revisions.
Boot Windows again after initial installation
Youâll have two methods of booting Windows.
Manual booting with a PC
- Pros: You can freely update Androidâ˘
- Cons: You will need a PC to boot to Windows
Enabling Dual Boot
- Pros: Youâll be able to boot Windows directly from the device
- Cons: Every time you update Androidâ˘, youâll have to follow this guide
In case you want the dual boot option, then follow this guide
Image of what you should see right now: Surface Duo in Bootloader mode
Letâs boot the UEFI, from a command prompt:
fastboot boot uefi.img
This step above will be needed every time you will want to boot Windows and needs to be done from the Bootloader mode.
If you did everything right, Windows will now boot! Enjoy!
Note: If the Touch keyboard wonât show up in OOBE, touch somewhere else (to let the text box loose focus) and then touch into the text box again. As an alternative, you can use the On-Screen Keyboard.
Š 2020-2024 The Duo WOA Authors
Snapdragon is a registered trademark of Qualcomm Incorporated. Microsoft, the Microsoft Corporate Logo, Windows, Surface, Surface Duo, Windows Hello, Continuum, Hyper-V, and DirectX are registered trademarks of Microsoft Corporation in the United States. Android is a registered trademark of Google LLC. Miracast is a registered trademark of the Wi-Fi Alliance. Other binaries may be copyright Qualcomm Incorporated and Microsoft Surface.
Limited emergency calling
Running Windows on your Surface Duo is not a replacement for a proper phone operating system and does not have emergency calling capabilities.
Hello from Seattle (US), France, Italy.