Updating Drivers and UEFI firmware

January 1, 2026 · View on GitHub

Table of Contents:

  1. Files/Tools needed
  2. Steps

Files/Tools needed

UEFI Image:

File NameTarget Device
Surface.Duo.1st.Gen.UEFI.Fast.Boot.zipSurface Duo (1st Gen)
Surface.Duo.2.UEFI.Fast.Boot.zipSurface Duo 2

Windows Drivers:

File NameTarget Device
SurfaceDuo-Drivers-v2XXX.XX-Desktop-Epsilon.zipSurface Duo (1st Gen)
SurfaceDuo-Drivers-vXXXX.XX-Desktop-Zeta.zipSurface Duo 2
File NameTarget Device
surfaceduo1-twrp.imgSurface Duo (1st Gen)
surfaceduo2-twrp.imgSurface Duo 2

Disclaimers

Warning

  • If you use a Dual Boot Image preflashed onto the device, you will also need to follow this guide again: Dual Boot
  • If you see a warning and/or error during the process, it is not normal. Contact us on telegram if you see anything odd, but do not continue or proceed on your own, you will break things further.
  • Do not run all commands at once.
  • When using TWRP, it is normal and expected for the phone to be detected as a Xiaomi phone or an Asus phone and for touch to not work.

Steps

Acquiring all files

Here's how to acquire the Android SDK Platform Tools: Click to expand

First, start by going to the Android Platform SDK download page on your computer.

SDK-1-Top

Once on the page, scroll a little bit down til you see the link to download the platform tools for Windows.

SDK-2-Mid

Click on it, an EULA will open like below:

SDK-3-EULA

Scroll all the way down (after reading it if that's your thing)

SDK-4-EULA-Bottom

Tick "I have read and agree to above terms conditions"

SDK-5-EULA-TICK (alt)

And click download

SDK-5-EULA-TICK

Save the file on your computer, and extract the zip file by opening it, and selecting extract all.

SDK-6-DL

Going to the Bootloader menu

  • Start by turning on your Surface Duo into Android™, and unlock it

  • Open a command prompt on your PC

image

  • Go to the folder where you extracted the Google Android™ Platform tools using the CD command and the path of the folder, like so:

image

  • Run the following command to ensure your phone is detected by your PC
adb devices

Tip

If you see no device listed, check for updates in Windows Update, you likely have a Driver Update pending so the phone is recognized, when you're good to go, you should see the following image below this notice. It is possible certain computers see no update offered (like Windows ARM64 Computers or other older machines with no functional Windows Update). If this is your case, we also provide Drivers for you to download at the following location, you will have to install them using Device Manager on your PC. Download USB Drivers

image

  • Run the following command now
adb reboot bootloader

You will be rebooted to Surface Duo's bootloader.

Surface Duo in Bootloader mode Image of what you should see right now: Surface Duo in Bootloader mode


Booting to TWRP

  • Start by booting TWRP:

For Surface Duo (1st Gen):

  • Plug your phone to your PC, open a command prompt and start by typing the following text, but do not press enter just yet
fastboot boot

image

  • Go find the surfaceduo1-twrp.img file you downloaded earlier, right click it, click "Copy as path"

image

  • Then go back to the Command Prompt window we started writing text in previously, and simply, right click on it with your mouse (or long press if you're on a touch device), you should now see this:

image

  • Now you can press enter

image

You will now boot to TWRP. Reminder that touch doesn't work on TWRP for now, so you'll have to work through your PC.

For Surface Duo 2:

  • Plug your phone to your PC, open a command prompt and start by typing the following text, but do not press enter just yet
fastboot boot

image

  • Go find the surfaceduo2-twrp.img file you downloaded earlier, right click it, click "Copy as path"

image

  • Then go back to the Command Prompt window we started writing text in previously, and simply, right click on it with your mouse (or long press if you're on a touch device), you should now see this:

image

  • Now you can press enter

image

You will now boot to TWRP. Reminder that touch doesn't work on TWRP for now, so you'll have to work through your PC.


Switching to Mass Storage Mode

  • Once inside TWRP, touch will not be working and the device will say it is locked. This is completely normal. Keep the phone plugged to your PC and do these commands ONE BY ONE WITH NO TYPO!:
adb shell "setenforce 0"
adb push <path to downloaded msc.tar> /sdcard/
adb shell "tar -xf /sdcard/msc.tar -C /sdcard --no-same-owner"
adb shell "sh /sdcard/msc.sh"

Updating Drivers

Warning

From now on we will assume X: is the Win partition for all commands. Replace them correctly with what you previously picked or you will lose data on your PC.

Note: Here's a table of what to download if you're a bit lost:

File NameTarget Device
SurfaceDuo-Drivers-XXXX.XX-Desktop-Epsilon.zipSurface Duo (1st Gen)
SurfaceDuo-Drivers-XXXX.XX-Desktop-Zeta.zipSurface Duo 2
  • Extract the driver package, and go to the folder where you extracted it.

  • Double click the OfflineUpdater.cmd file.

  • Accept the User Account Control warning when prompted

  • Enter the drive letter of the connected phone in mass storage, as we previously mentioned, for us it's currently X:, but it may very well be different for you. In our example, we enter X: and then press enter.

  • The process may take a while, once it is done, you will be prompted to press any key, press enter when that's the case.

Congratulations, you just updated your drivers!

  • You can now reboot your phone using:
adb reboot bootloader

You will be back into Surface Duo's bootloader.

Surface Duo in Bootloader mode Image of what you should see right now: Surface Duo in Bootloader mode

Updating UEFI

Simply use the latest UEFI image

  • Assuming you are in Surface Duo's bootloader, run the following command to boot into Windows:
fastboot boot uefi.img

Tip

You can setup dual boot again if you need it by using the latest UEFI files and following the dual boot guide again (in case of a manual file creation), or by flashing one of the prebuilt dual boot images (see UEFI release notes for more details on both).


© 2020-2026 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.