Read the affiliate disclosure page to find out how can you help MSPoweruser effortlessly and without spending any money. Read more
Last month, Microsoft announced the new Surface Pro X device running full Windows 10. Instead of an Intel processor, Microsoft partnered with Qualcomm to create a custom SQ1 chipset to power this device. Despite being the thinnest Surface, the new Pro X offers decent performance and great visual experience through its edge-to-edge 13” touchscreen. One of the main limitations of Surface Pro X is its app support. Surface Pro X will not install 64-bit applications that have not been ported to ARM64. Microsoft has mentioned the below in the footnotes section of the Surface Pro X product listing page:
At this time, Surface Pro X will not install 64-bit applications that have not been ported to ARM64, some games and CAD software, and some third-party drivers or anti-virus software. New 64-bit apps are coming to ARM 64 all the time.
I don’t understand how an average consumer visiting a Microsoft Store will come to know about this huge limitation before buying the device. Even if someone wants to buy this device after knowing its limitations, there is no definite way to learn which apps will run and which apps won’t. For example, it was recently reported that Dropbox app won’t work on Surface Pro X. Cisco AnyConnect client which is critical for many enterprises users won’t work on Pro X. Windows Fax and Scan won’t work on Pro X. Such apps could be deal-breaker for many users. After some research, I found the below content from Microsoft regarding Surface Pro X app compatibility.
- Drivers for hardware, games and apps will only work if they’re designed for a Windows 10 ARM-based PC. For more info, check with the hardware manufacturer or the organization that developed the driver. Drivers are software programs that communicate with hardware devices—they’re commonly used for antivirus and antimalware software, printing or PDF software, assistive technologies, CD and DVD utilities, and virtualization software. If a driver doesn’t work, the app or hardware that relies on it won’t work either (at least not fully). Peripherals and devices only work if the drivers they depend on are built into Windows 10, or if the hardware developer has released ARM64 drivers for the device.
- 64-bit (x64) apps won’t work. You’ll need 64-bit (ARM64) apps, 32-bit (ARM32) apps, or 32-bit (x86) apps. You can usually find 32-bit (x86) versions of apps, but some app developers only offer 64-bit (x64) apps.
- Certain games won’t work. Games and apps won’t work if they use a version of OpenGL greater than 1.1, or if they rely on “anti-cheat” drivers that haven’t been made for Windows 10 ARM-based PCs. Check with your game publisher to see if a game will work.
- Apps that customize the Windows experience might have problems. This includes some input method editors (IMEs), assistive technologies, and cloud storage apps. The organization that develops the app determines whether their app will work on a Windows 10 ARM-based PC.
- Some third-party antivirus software can’t be installed. You won’t be able to install some third-party antivirus software on a Windows 10 ARM-based PC. However, Windows Security will help keep you safe for the supported lifetime of your Windows 10 device.
- Windows Fax and Scan isn’t available. This feature isn’t available on a Windows 10 ARM-based PC.
Today, I came across a new community initiative on Reddit that will list down the apps that are supported and not supported on Surface Pro X. You can check out the document here.
While Microsoft claims that developers have to just recompile their UWP and C++ Win32 apps to run natively on Windows 10 on ARM devices, developers are facing several issues during the process. In my opinion, Microsoft should start a new developer assistance program like how they used to have one during Windows Phone days to port Android and iOS apps. Also, Microsoft should work with top app developers and make their apps compatible with Surface Pro X. If you are a developer and you are interested in bringing your app to Windows on ARM, check out this documentation page.