Set the value of a BIOS setting


Set-HPBIOSSettingValue [[-Password] <String>] [-Name] <String> [-Value] <String> [[-SkipPrecheck]] [[-ComputerName] <Object>] [<CommonParameters>]

Set-HPBIOSSettingValue [[-Password] <String>] [-Name] <String> [-Value] <String> [[-SkipPrecheck]] [-CimSession] <CimSession> [<CommonParameters>]


This function sets the value of an HP BIOS setting. Note that the setting may have various constraints restricting the input that can be provided.


Name Argument Description
Password <String> The setup password, if a password is active
Name <String> The name of a setting. Note that the setting name is usually case sensitive.
Value <String> The new value of a setting
SkipPrecheck Skip reading the setting value from the BIOS, before applying it. This is useful as an optimization when the setting is guaranteed to exist on the system, or when preparing an HP Sure Admin platform for a remote platform which may contain settings not present on the local platform.
ComputerName <Object> Execute the command on specified target computer. If not specified, the command is executed on the local computer.
CimSession <CimSession> A pre-established CIM Session (as created by New-CIMSession cmdlet). Use this to pass a preconfigured session object to optimize remote connections or specify the connection protocol (Wsman or DCOM). If not specified, the function will create its own one-time use CIM Session object, and default to DCOM protocol.


  • Requires HP BIOS.
  • Use single quotes around the password to prevent PowerShell from interpreting special characters in the string.
  • By convention, when representing multiple values in an enumeration as a single string, the value with an asterisk in front is the currently active value. For example, given the string "One,*Two,Three" representing three possible enumeration choices, the current active value is "Two".


PS C:\> Set-HPBIOSSettingValue -Name "Asset Tracking Number" -Value "Hello World" -password 's3cr3t'