Get-HPBIOSUpdates



Summary

Retrieves available BIOS updates (or downgrades)

Syntax

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>] [[-Offline]] [[-NoWait]] [<CommonParameters>]

Description

This command 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

Online Mode uses Seamless Firmware Update Service that can update the BIOS in the background while the operating system is running (no authentication needed). 2022 and newer HP computers with Intel processors support Seamless Firmware Update Service. Offline Mode then finishes updating the BIOS after reboot and requires authentication (password or payload).

Parameters

Name Argument Description
Platform <String> Specifies the Platform ID to check. This parameter can be obtained via the Get-HPDeviceProductID command. The Platform ID cannot be specified for a flash operation. If not specified, the current Platform ID is used.
Format <String> Specifies the format of the result. The value must be one of the following values:

- list: format as a list
- CSV: format as a comma-separated values list
- XML: format as XML
- JSON: format as JSON

If not specified, the default PowerShell formatting is used.
Latest If specified, this command returns or downloads the latest available BIOS version between remote and local. If the -Platform parameter is specified, the BIOS on the current device will not be read and the latest BIOS version available remotely will be returned.
Check If specified, this command returns true if the latest version corresponds to the installed version or installed version is higher and returns false otherwise. Please note that this parameter is only valid for use when comparing against current platform.
Target <String> Specifies the target computer to execute this command. If not specified, the command is executed on the local computer.
All If specified, this command includes all known BIOS update information. This may include additional data such as dependencies, rollback support, and criticality.
Download If specified, this command will download the BIOS file to the current directory or a path specified by the -SaveAs parameter.
Flash If specified, the BIOS update will be flashed onto the current system.
Password <String> Specifies the BIOS password, if any. This parameter is only necessary when the -Flash parameter is specified. Use single quotes around the password to prevent PowerShell from interpreting special characters in the string.
Version <String> Specifies the BIOS version to download and/or flash. If not specified, the latest version will be used. This parameter must be specified with the -Download parameter and/or -Flash parameter.
SaveAs <String> Specifies the file name for the downloaded BIOS file. If not specified, the remote file name will be used.
Quiet If specified, this command will not display a progress bar during the BIOS file download.
Overwrite If specified, this command will force overwrite any existing file with the same name during BIOS file download. This command is only necessary when the -Download parameter is used.
Yes If specified, this command will show an 'Are you sure you want to flash' prompt. This parameter prevents users from accidentally flashing the BIOS.
BitLocker <String> Specifies the behavior to the BitLocker check prompt (if any). The value must be one of the following values:
- stop: (default option) stops execution if BitLocker is detected but not suspended, and prompts
- ignore: skips the BitLocker check
- suspend: suspend sBitLocker if active and continues with execution
Force If specified, this command forces the BIOS update even if the target BIOS is already installed.
Url <String> Specifies an alternate Url source for the platform's BIOS update catalog (xml). This URL must be HTTPS.
Offline If specified, this command uses the offline mode to flash the BIOS instead of the default online mode. In offline mode, the actual flash will occur after reboot at pre-OS environment. Please note that offline mode is selected by default when downgrading the BIOS version and requires authentication so either a Password or a PayloadFile should be specified.
NoWait If specified, the script does not wait for the online flash background task to finish. If the user reboots the PC during the online flash, the BIOS update will complete only after reboot.

Notes

  • 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 command in WinPE because BitLocker checks are not applicable in Windows PE.
  • Requires that the WinPE image is built with the WinPE-SecureBootCmdlets.cab component.

Examples


PS C:\> Get-HPBIOSUpdates

PS C:\> Get-HPBIOSUpdates -Platform "87ED"

PS C:\> Get-HPBIOSUpdates -Download -Version "01.26.00"

PS C:\> Get-HPBIOSUpdates -Flash -Version "01.26.00"