Check and apply available BIOS updates (or downgrades)


Get-HPBIOSUpdates [[-Platform] <String>] [[-Format] <String>] [[-Latest]] [[-Target] <String>] [[-All]] [<CommonParameters>]

Get-HPBIOSUpdates [[-Platform] <String>] [[-Target] <String>] [-Download] [[-Version] <String>] [[-SaveAs] <String>] [[-Quiet]] [[-Overwrite]] [<CommonParameters>]

Get-HPBIOSUpdates [[-Platform] <String>] [[-Check]] [<CommonParameters>]

Get-HPBIOSUpdates [[-Platform] <String>] [[-Target] <String>] [-Flash] [[-Password] <String>] [[-Version] <String>] [[-SaveAs] <String>] [[-Quiet]] [[-Overwrite]] [[-Yes]] [[-Bitlocker] <String>] [[-Force]] [[-Url] <String>] [<CommonParameters>]


This function uses an internet service to retrieve the list of BIOS updates available for a platform, and optionally checks it against the current system.

The result is a series of records, with the following definition:

* Ver - the BIOS update version
* Date - the BIOS release date
* Bin - the BIOS update binary file


Name Argument Description
Platform <String> the Platform ID to check. If not specified, check the current platform. The platform id can be obtained via Get-HPDeviceProductID.
  The platform ID cannot be specified for a flash operation.
Format <String> The file format (xml, json, csv, list) to output. If not specified, a list of powershell objects is returned
Latest If specified, only return or download latest available BIOS version between remote and local
Check If specified, return true if the latest version corresponds to the installed version or installed version is higher, false otherwise. This check is only valid when comparing against current platform.
Target <String>
All Include all known BIOS update information. This may include additional data such as dependencies, rollback support, and criticality.
Download Download the BIOS file to the current directory or a path specified by saveAs.
Flash Apply the BIOS update to the current system.
Password <String> Specify the BIOS password, if a password is active. This switch is only used when -flash is specified. - Use single quotes around the password to prevent PowerShell
  from interpreting special characters in the string.
Version <String> The BIOS version to download. If not specified, the latest version available will be downloaded.
SaveAs <String> The filename for the downloaded BIOS file. If not specified, the remote file name will be used.
Quiet Do not display a progress bar during BIOS file download.
Overwrite Force overwriting any existing file with the same name during BIOS file download. This switch is only used when -download is specified.
Yes Answer 'yes' to the 'Are you sure you want to flash' prompt.
Bitlocker <String> Provide an answer to the Bitlocker check prompt (if any). The value may be one of:
   stop - stop if bitlocker is detected but not suspended, and prompt.
   stop is default when bitlocker switch is provided.
   ignore - skip the bitlocker check
   suspend - suspend bitlocker if active, and continue
Force Force the BIOS to update, even if the target BIOS is already installed.
Url <String>


  • Flash is only supported on Windows 10 1709 (Fall Creators Updated) and later.
  • UEFI boot mode is required for flashing, legacy mode is not supported.
  • The flash operation requires 64-bit PowerShell (not supported under 32-bit PowerShell)

WinPE notes

  • Use '-bitlocker ignore' when using this function in WinPE, as bitlocker checks are not applicable in Windows PE.
  • Requires that the WInPE image is built with the component.


PS C:\> Get-HPBIOSUpdates