Update-HPFirmware



Summary

Updates the system firmware from a capsule or BIOS binary file

Syntax

Update-HPFirmware [[-Password] <String>] [-File] <FileInfo> [[-Quiet]] [[-BitLocker] <String>] [[-FilenameHint] <String>] [[-Force]] [[-Offline]] [[-NoWait]] [<CommonParameters>]

Update-HPFirmware [-PayloadFile] <FileInfo> [-File] <FileInfo> [[-Quiet]] [[-BitLocker] <String>] [[-FilenameHint] <String>] [[-Force]] [[-Offline]] [[-NoWait]] [<CommonParameters>]

Update-HPFirmware [-Payload] <String> [-File] <FileInfo> [[-Quiet]] [[-BitLocker] <String>] [[-FilenameHint] <String>] [[-Force]] [[-Offline]] [[-NoWait]] [<CommonParameters>]

Description

This command updates the system firmware on the current platform. The update must be provided as a BIN file and can be obtained via the Get-HPBIOSUpdates command. If HP Sure Admin is enabled, a payload file should be provided instead of a password.

Online Mode uses Seamless Firmware Update Service. Seamless Firmware Update Service updates 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 updates the BIOS on reboot and requires authentication (password or payload).

Parameters

Name Argument Description
Password <String> Specifies the BIOS setup password, if any. Use single quotes around the password to prevent PowerShell from interpreting special characters in the string.
PayloadFile <FileInfo> Specifies the payload file to authorize firmware update. Refer to the New-HPSureAdminFirmwareUpdatePayload command for information on how to generate the payload file.
Payload <String> Specifies the payload to authorize firmware update. Refer to the New-HPSureAdminFirmwareUpdatePayload command for information on how to generate the payload.
File <FileInfo> Specifies the firmware update binary (.BIN) file. If the filename does not follow the pattern 'U70_010101.bin', the -FilenameHint parameter should be specified.
Quiet If specified, this command will suppress non-essential messages during execution.
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: suspends BitLocker if active and continues with execution
FilenameHint <String> Specifies the original file name without the .bin extension if using a file name other than the original file name. Alias -filename_hint. Some older generations of platforms require that the filename of the BIOS update be in a specific format (e.g.: 'U70_010101').
If this parameter is not specified, this command will extract the file name from the -File parameter. However, if it does not match the required format on platforms that require a specific format, this command may fail.
If the system does not require a specific format (not required on most recent systems), this parameter might be ignored.
Force If specified, this command will force the BIOS update even if the target BIOS is already installed.
Offline If specified, this command selects the offline mode to flash the BIOS instead of the default online mode. If specified, the actual flash will only occur on reboot at pre-OS environment. Please note that offline mode is selected by default when downgrading the BIOS. Offline mode requires authentication, so either a Password or a PayloadFile should be specified.
NoWait If specified, the script will not wait for the online flash background task to finish. If the user reboots the PC during the online flash, the update will complete only after reboot.

Notes

  • Requires HP BIOS.
  • Requires 64-bit PowerShell (not supported under 32-bit PowerShell).
  • UEFI boot mode is required; legacy mode is not supported.
  • This command requires elevated privileges.

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:\> Update-HPFirmware -File bios.bin -Password 'mysecret' -FilenameHint 'U70_010101'

PS C:\> Update-HPFirmware -File U70_010101.bin -NoWait

PS C:\> Update-HPFirmware -File U70_010101.bin -Offline

PS C:\> Update-HPFirmware -File bios.bin -PayloadFile PayloadFile.dat -FilenameHint 'U70_010101'