Guide – Windows 10 ARM64 on Pi 4B

So you want to install Windows 10 on this ‘Berry. You better follow this guide closely.

All 5 usb ports work now. 1 type C and 4 type A however drivers for type c port requires 1GB RAM limitation. Type A ports require 3GB RAM limitation.

Hardware needed

  • A PC with recent Windows 10 build installed.
  • USB mouse and keyboard.
  • USB storage device.
  • Raspberry Pi 4B,
  • Micro HDMI cable.
  • Power supply (5V 3A+).

or if you still want to use sdcard for boot then you should also get

  • A fast micro SD card – 16GB or higher – Class A1 or A2
  • Micro SD card reader

Downloads

Download Windows 10 installation files for arm64 from https://uup.rg-adguard.net/.

  • Download ISO compiler in OneClick!
  • Run downloaded CMD-file (run creatingISO.cmd file).

Or, download via https://uupdump.ml/, using aria2 and convert, running aria2_download_windows.cmd after extracting it.

Either of those services will help you to generate a ISO file but we only need install.wim file from sources folder on the ISO. Any build that passes OOBE without issues will be fine.

WoR (windows on raspberry) -Download 2.0.0-alpha.3 from https://worproject.ml/downloads

Latest version of Winpatch to patch usbxhci.sys driver after instalation, https://github.com/pbatard/winpatch/releases

Guide

Once you download all of the things above you can proceed.

Open WoR. Select Disk from the list which will be your microsd card reader or usb storage device and select Raspberry pi 4 as a device that you will use. Then select build of windows WoR should use by pointing to a correct install.wim file. Use the latest drivers that WoR server provides. Select the latest UEFI for Raspberry pi 4 in WoR. Make sure MBR is selected as a partition scheme. Use WoR to limit memory to 1024MB USB type-c and if you don’t then you can limit it to 3072MB. You actually don’t have to as there is a limit set in UEFI. Do edit boot options in WoR if you need to(I always overclock as my Pi has a fan attached).

WoR will deploy windows to the selected micro sd card or usb storage device which will take from 10 minutes to 3 hours depending on speed of your micro SD card or usb storage device .

Fixing type A ports/ patching usbxhci.sys windows 10 drivers

extract winpatch.exe to any location you want as long as you remember it. Open cmd as administrator. then type

"C:\Users\Marcin\Downloads\winpatch.exe" F:\Windows\System32\drivers\USBXHCI.SYS EA000037E8630091 EA000036E8630091 0A010037E8430091 0A010036E8430091

In this example above I extracted winpatch to my downloads folder and F:/ is a letter of my windows10 arm64 instalation on sdcard or usb drive.

This command above works best on build 19041 or newer.

Safely remove micro SD card or usb storage device and move it into the Raspberry Pi.

Notes

This guide will be most likely updated if anything changes. First boot will take between 6 minutes to 2 hours depending on speed of your micro SD card or usb storage device . If there are issues during OOBE setup pressing shift + F10 then typing

%windir%\System32\Sysprep\sysprep.exe /oobe /reboot 

might help. If it doesn’t, you will need to test a different build of Windows 10 arm64.. Good luck!

Drivers

Currently a lot of drivers are missing and not a lot of development is happening. We are missing drivers for audio jack, ethernet, bluetoth ,wifi and gpu. Development of ethernet and audio jack drivers is most likely to happen soon.

Support

I freqently check comments under this post but for a bit faster response you can join Discord server and ask for help there. You might find there customised windows10 build (smaller and lighter) or even premade images to download.

7 thoughts on “Guide – Windows 10 ARM64 on Pi 4B

    1. hdmi_force_hotplug=1:0
      hdmi_cvt=1280 720 60 6:0
      hdmi_group=2:0
      hdmi_mode=87:0
      hdmi_drive=2:0
      framebuffer_width=1280
      framebuffer_height=720
      is what i use to run my pi 4 headless. i don’t have hdmi cable connected to it. here i set my resolution to 1280×720. i have done it in 2 places. idk if all of it is needed.

  1. Hi I have a problem, when I tried to fix the drivers i got this error ( VCRUNTIME140.DLL was not found),what to do

Leave a Reply

Your email address will not be published. Required fields are marked *