Jump to content

Microsoft Surface Duo (microsoft-duo)

From postmarketOS Wiki
Warning WARNING: This device cannot run postmarketOS, as its architecture is unsupported.
Microsoft Surface Duo
Microsoft Surface Duo
Microsoft Surface Duo
Manufacturer Microsoft
Name Surface Duo
Codename epsilon
Released 2020
Hardware
Chipset Qualcomm Snapdragon 855 (SM8150)
CPU 4x 2.8 GHz Cortex-A76 / 4x 1.8 GHz Cortex-A55
GPU Adreno 640
Display 2 1350x1800 AMOLED
Storage 126/256 GB
Memory 6 GB
Software
Original software
The software and version the device was shipped with.
Android 10
Extended version
The most recent supported version from the manufacturer.
Android 12L
Mainline
Instead of a Linux kernel fork, it is possible to run (Close to) Mainline.
no

Build Steps

Use the Mainlining Guide if building postmarketOS for the duo.

Build Notes

  • ERROR: postmarketos-mkinitfs-1.5.1-r3.trigger: script exited with error 1 means the build failed to append the dtb.
    • Open deviceinfo in the device-microsoft-epsilon folder.
    • Verify the value in deviceinfo_dtb' has the value "qcom/sm8150-microsoft-surface-duo"

  • If the default location is changed in pmbootstrap init, there may be an issue with locating python package dependencies. Change back to the default location for building or use the edge version of postmarketOS when building.


Contributors

  • JengaMasterG

Users owning this device


How to enter flash mode

  1. Shut down the device.
  2. Hold the Vol Down button and plug the device into the computer.
  3. The device is booted into the bootloader.

Installation

  1. Select "Recovery" in the menu options by navigating with the Vol buttons and selecting with the Power button.
  2. Once in Recovery mode, select "Enter fastboot".
  3. On the computer, run "pmbootstrap flasher flash_rootfs"
  4. On the device, select "Reboot to bootloader"
  5. On the computer, run "pmbootstrap flasher boot"
  6. This will not replace the boot image currently on the device. Repeat "How to enter flash mode" and step 5 of "Installation" to boot into pmOS.

    See also