As we know that Microsoft’s Windows 11 is releasing in October 2021. Windows 11 comes with a specific hardware requirement to be met for you to be eligible to upgrade the operating system. TPM 2.0 chipset (Trusted Platform Module) is one of the requirement. Hence, there are minimum system requirement to be met.

Hardware requirements

Following are the requirements for Windows 11 devices:

  • Compatible 64-bit processor, check the link to see the details
  • Minimum RAM 4 GB
  • Minimum Storage 64GB
  • Graphics card should be compatible with DirectX 12 or later.
  • UEFI Device with secure Boot
  • TPM version 2.0 (Trusted Platform Module)
  • Display: Resolution of 720, with minimum 9” monitor

There are Feature-specific requirements as well for Windows 11.


Check for compatibility using PC Health Check App

You can use PC Health Check App created by Microsoft to run locally, this will download  WindowsPCHealthCheckSetup.msi and can be installed locally to check and verify the Windows 11 compatibility.

Once you run the check, you will get one of the results:

  • This PC meets Windows 11 requirements
  • This PC doesn’t currently meet Windows 11 system requirements

Run Hardware Readiness Script

Microsoft has also provided a PowerShell Script which checks for the minimum requirement for Windows 11.  Once downloaded, you have to run the HardwareReadiness.ps1 from elevated PowerShell.

Open PowerShell and navigate to the folder where HardwareReadiness.ps1 exists.

Run the command:

Set-ExecutionPolicy -ExecutionPolicy Bypass -Force
Set-ExecutionPolicy -ExecutionPolicy Bypass -Force

Script is ready to run now. Execute the script now:

.\HardwareReadiness.ps1
HardwareREadiness.ps1

This will come up with the following result:

Here I can see the result is positive, ReturnCode is 0 and returnResult showing as Capable which means device is capable of running Windows 11.

Let’s breakdown the result:

"returnCode":0,
"returnReason":"",
"logging":"Storage: OSDiskSize=951GB. PASS;
Memory: System_Memory=64GB. PASS;
TPM: TPMVersion=2.0, 0, 1.38. PASS;
Processor: {AddressWidth=64; MaxClockSpeed=2808; NumberOfLogicalCores=12; Manufacturer=GenuineIntel;
Caption=Intel64 Family 6 Model 165 Stepping 2; }. PASS;
SecureBoot: Capable. PASS; ","returnResult":"CAPABLE"

The script has verified multiple hardware requirements starting with

  • Storage
  • Memory
  • TPM
  • Processor
  • SecureBoot

All test’s have been completed with status Pass / Capable.

Hardware Readiness can return following return code:

  • -2 : FAILED TO RUN
  • -1 : UNDETERMINED
  • 0 : CAPABLE
  • 1 : NOT CAPABLE

Deploying the script using Configuration Manager

We can automate the process of getting the hardware readiness by using Intune or Configuration Manager.

Once Logged into SCCM, we have option to run the PowerShell Scripts, navigate to Software Library > Overview > Scripts. For more details check Create and run PowerShell Scripts through SCCM