-
Notifications
You must be signed in to change notification settings - Fork 5
windows11_compatibility_checker.ps1
Evaluates system compatibility for Windows 11 upgrade requirements.
This comprehensive compatibility checker evaluates all hardware and firmware requirements for Windows 11 upgrades. It provides detailed reporting on TPM 2.0, Secure Boot, CPU compatibility, RAM, storage, and UEFI firmware status. Designed for RMM deployment to assess upgrade readiness across a fleet of devices.
Evaluates system compatibility for Windows 11 upgrade by checking hardware requirements including TPM 2.0, Secure Boot, CPU compatibility, RAM, storage, and UEFI firmware. Identifies blockers preventing upgrade and attempts to enable required features where possible. Designed for RMM deployment to assess upgrade readiness across fleet of devices.
- PowerShell 5.1 or later
- Administrator privileges required
- Windows 10 or Windows 11 operating system
- TPM and Secure Boot cmdlets available (built into Windows)
All inputs are hardcoded in the script body:
-
$MinimumRamGB: Minimum RAM required in GB for Windows 11 (default: 4) -
$MinimumStorageGB: Minimum storage space required in GB for Windows 11 (default: 64) -
$AttemptAutoFix: Whether to attempt automatic fixes like enabling TPM or Secure Boot (default:$false) -
$CheckOnly: If true, only report compatibility status without making changes (default:$true)
The script checks the following requirements:
- TPM: Verifies TPM 2.0 is present, enabled, and activated
- Secure Boot: Confirms Secure Boot capability and current state
- CPU: Validates CPU against known Windows 11 compatible processor patterns (Intel 8th gen+ or AMD Ryzen 2000+)
- RAM: Measures available RAM against minimum requirement (4GB)
- Storage: Checks available storage space on system drive (64GB)
- Firmware: Confirms UEFI firmware mode (not legacy BIOS)
The script performs comprehensive hardware compatibility assessment:
- Input Validation: Validates hardcoded input values
- TPM Check: Verifies TPM version, presence, enablement, and activation status
- Secure Boot Check: Confirms Secure Boot is enabled
- CPU Compatibility Check: Validates CPU model against Windows 11 requirements using pattern matching
- RAM Check: Measures total physical memory against minimum requirement
- Storage Check: Checks available free space on system drive
- Firmware Check: Verifies UEFI firmware mode via registry
- Compatibility Summary: Reports total checks, passed/failed counts, and overall status
- Blockers Report: Lists all specific blockers preventing Windows 11 upgrade
- Final Status: Provides upgrade readiness verdict and recommended actions
Each requirement is checked independently and results are tracked. If CheckOnly is false and AttemptAutoFix is true, the script attempts to enable TPM and Secure Boot if hardware supports it. Final report shows overall compatibility status and required actions. Exit code indicates if system is ready for Windows 11 upgrade.
- Hardcoded values (defined within the script body)
- System hardware checks (TPM, Secure Boot, CPU, RAM, storage)
- Windows Registry (CPU compatibility list, firmware type)
- Error
- No secrets are printed to the console
- Changing BIOS settings (TPM, Secure Boot) requires system reboot
- Auto-fix operations are potentially disruptive to system
- Requires elevated permissions for system queries
N/A (local system checks only)
- 0 = System is Windows 11 compatible
- 1 = System has blockers preventing Windows 11 upgrade
- 2 = Script execution error
[ INPUT VALIDATION ]
--------------------------------------------------------------
MinimumRamGB : 4
MinimumStorageGB : 64
AttemptAutoFix : False
CheckOnly : True
[ TPM CHECK ]
--------------------------------------------------------------
TPM Version : 2.0
TPM Present : True
TPM Enabled : True
TPM Activated : True
Result : Pass
[ SECURE BOOT CHECK ]
--------------------------------------------------------------
Secure Boot Enabled : True
Result : Pass
[ CPU COMPATIBILITY CHECK ]
--------------------------------------------------------------
CPU Name : Intel Core i7-10700
CPU Family : Compatible
Result : Pass
[ RAM CHECK ]
--------------------------------------------------------------
Total RAM : 16.00 GB
Required RAM : 4 GB
Result : Pass
[ STORAGE CHECK ]
--------------------------------------------------------------
System Drive : C:
Available Space : 250.00 GB
Required Space : 64 GB
Result : Pass
[ FIRMWARE CHECK ]
--------------------------------------------------------------
Firmware Type : UEFI
Result : Pass
[ COMPATIBILITY SUMMARY ]
--------------------------------------------------------------
Total Checks : 6
Checks Passed : 6
Checks Failed : 0
Overall Status : Compatible
[ FINAL STATUS ]
--------------------------------------------------------------
This system is ready for Windows 11 upgrade.
[ SCRIPT COMPLETED ]
--------------------------------------------------------------
[ COMPATIBILITY SUMMARY ]
--------------------------------------------------------------
Total Checks : 6
Checks Passed : 3
Checks Failed : 3
Overall Status : Not Compatible
[ COMPATIBILITY BLOCKERS ]
--------------------------------------------------------------
- TPM 2.0 required (found: 1.2)
- Secure Boot is not enabled
- UEFI firmware required (found: Legacy BIOS)
[ FINAL STATUS ]
--------------------------------------------------------------
This system has 3 blocker(s) preventing Windows 11 upgrade.
Recommended Actions:
- Review blockers listed above
- Enable TPM 2.0 in BIOS/UEFI if available
- Enable Secure Boot in BIOS/UEFI if available
- Upgrade hardware if CPU, RAM, or storage insufficient
[ SCRIPT COMPLETED ]
--------------------------------------------------------------
- v1.0.0 (2025-11-02) - Initial Style A compliant release with Windows 11 compatibility checking and optional auto-fix capability
- View Script Source
- Scripts - Back to script index