HP BIOS/Firmware updating

bios
firmware
hp

#1

With a bit of work you can update the BIOS of your HP laptop when you only have Linux installed and you can’t run the Windows only BIOS updater.

WARNING! While putting this information together for my own use, I surmised from the different sources that this was a fairly universal procedure for updating the BIOS for all HP laptops. I may be wrong though and this may not work for you. The following is a known good procedure for my two HP Elitebook 8460p laptops.

You need to know the exact BIOS code for your laptop:

  • (re)boot your laptop
  • press ESC during BIOS phase to enter the HP Start Menu
  • press F2 for System Diagnostics
  • press F1 for System Information
  • look at the BIOS Revision field and make a note of the code that precedes the Ver. version number. This code wild typically be something like 68SCF or L73

Next, prepare the USB stick (almost any size USB will do):

  • format a USB stick with VFAT/FAT32
  • use a tool like gparted
  • or use the command line:
  • install dosfstools if it is not installed: pacman -S dosfstools
  • check which device is the USB stick with: lsblk
  • format the USB stick: mkdosfs -F 32 -I /dev/sdX. Replace X with the correct letter for the USB device on your laptop

Next you need to get the HP BIOS update file for your laptop:

  • go to the HP support website
  • type the model name of your laptop in the search bar
  • go to the Software, Drivers and Firmware tab
  • change your Selected operating system to the newest Windows version in the dropdown list
  • select the BIOS category and download the BIOS update file

Now you need to extract and prepare the files:

  • extract the SPXXXXXX.exe file you downloaded (it is an archive)
  • on the USB stick create the following folder (case-sensitive!): Hewlett-Packard/BIOSUpdate
  • copy the files from the same folder in the archive to the folder on your USB stick
  • next, extract the .CAB file with the same name as the code you looked up earlier (there may be more .CAB files in the archive)
  • from the extracted .CAB file, rename the .bin and .sig files to yourcode.bin and yourcode.sig, example: 68SCF.bin and 68SCF.sig (case-sensitive!)
  • on the USB stick create the following folder (case-sensitive!): Hewlett-Packard/BIOS/New
  • copy the renamed .bin and .sig files to this folder on your USB stick
  • unmount the USB stick

Folders on your USB stick should look like this example:
screenshot-2018-12-07-20-41-35

Now you need to update the BIOS:

  • reboot laptop
  • press ESC during BIOS phase to enter HP Start Menu
  • press F10 for BIOS Setup
  • from the BIOS Setup you can now use the Update System BIOS function with the USB stick that you have made
  • if you can not access the BIOS update function in the BIOS, you must set an administrator password and reboot laptop

Good luck!


Update BIOS HP Probook 430G1
#2

With this tutorial I attempted to update my bios as I believe my fan doesn’t work, which didn’t really go well. I want to point out a few things here that didn’t work out for me. My bios version is F.11

EDIT: I apologize for the whining :sweat_smile:

details...
  1. I can’t find the β€˜BIOS code’ of the laptop. There literally isn’t such a thing. I checked BIOS setup, system information and diagnostics, the inxi outputs, it’s not anywhere. Turns out, in some cases what you need is β€˜System Board ID’, found both in BIOS setup and System Information. With that, you gotta check this thread.

  2. In my case, there weren’t any .CAB files at all. Also, all the files in your picture I found in a folder called β€˜CrisisFolder’. The files you put in BIOS/New also weren’t exactly the same, in fact, there were 4 different .FD files that look similar enough to yours. I found seemingly the correct one using the link above.

  3. I couldn’t find the option to β€˜Update System BIOS’ anywhere. After researching I found the β€˜Recover BIOS’ function (holding Windows button and B + holding the power button for 2-3 seconds). After trying it out (with the usb plugged in of course), I didn’t get any screen, only flashing caps lock light and fan randomly spinning. I waited about 20 minutes to no avail and then forced shutdown. On power up I didn’t notice anything different really, but after starting Manjaro I found out that the F* keys lost their previous functionality. I can’t increase/decrease sound and screen brightness without using the panel applets. Firefox added some new functions to those keys, which is rather annoying.

I’m pretty sure I did everything correctly, according to your picture. Now I’ll go and try to find a Windows 10 computer to create a proper BIOS recovery usb :confused:

Here’s what a windows-made bios recovery usb to F.27 Rev.A for this machine looks like: (not quite the same as above)

Recovery usb
/run/media/demir/HP_TOOLS/
β”œβ”€β”€ Hewlett-Packard
β”‚   β”œβ”€β”€ BIOS
β”‚   β”‚   β”œβ”€β”€ Current
β”‚   β”‚   β”‚   β”œβ”€β”€ 080C1.bin
β”‚   β”‚   β”‚   β”œβ”€β”€ 080C1.s12
β”‚   β”‚   β”‚   β”œβ”€β”€ 080C6.bin
β”‚   β”‚   β”‚   β”œβ”€β”€ 080C6.s12
β”‚   β”‚   β”‚   β”œβ”€β”€ 080CD.bin
β”‚   β”‚   β”‚   β”œβ”€β”€ 080CD.s12
β”‚   β”‚   β”‚   β”œβ”€β”€ 08135.bin
β”‚   β”‚   β”‚   └── 08135.s12
β”‚   β”‚   β”œβ”€β”€ New
β”‚   β”‚   └── Previous
β”‚   └── BIOSUpdate
β”‚       β”œβ”€β”€ CryptRSA32.efi
β”‚       β”œβ”€β”€ CryptRSA.efi
β”‚       β”œβ”€β”€ HpBiosMgmt32.efi
β”‚       β”œβ”€β”€ HpBiosMgmt32.s09
β”‚       β”œβ”€β”€ HpBiosMgmt32.s12
β”‚       β”œβ”€β”€ HpBiosMgmt32.s14
β”‚       β”œβ”€β”€ HpBiosMgmt.efi
β”‚       β”œβ”€β”€ HpBiosMgmt.s09
β”‚       β”œβ”€β”€ HpBiosMgmt.s12
β”‚       β”œβ”€β”€ HpBiosMgmt.s14
β”‚       β”œβ”€β”€ HpBiosUpdate32.efi
β”‚       β”œβ”€β”€ HpBiosUpdate32.s09
β”‚       β”œβ”€β”€ HpBiosUpdate32.s12
β”‚       β”œβ”€β”€ HpBiosUpdate32.sig
β”‚       β”œβ”€β”€ HpBiosUpdate.efi
β”‚       β”œβ”€β”€ HpBiosUpdate.s09
β”‚       β”œβ”€β”€ HpBiosUpdate.s12
β”‚       └── HpBiosUpdate.sig
└── System Volume Information
    β”œβ”€β”€ IndexerVolumeGuid
    └── WPSettings.dat

And here’s what the windows executable looks like:

Executable
/home/demir/Downloads/bios/sp88923-exe/
└── Insydeflash-exe
    β”œβ”€β”€ 080C1.FD
    β”œβ”€β”€ 080C6.FD
    β”œβ”€β”€ 080CD.FD
    β”œβ”€β”€ 08135.FD
    β”œβ”€β”€ CaslApp.exe
    β”œβ”€β”€ CaslApp.exe.hpsign
    β”œβ”€β”€ CrisisFolder
    β”‚   β”œβ”€β”€ CryptRSA32.efi
    β”‚   β”œβ”€β”€ CryptRSA.efi
    β”‚   β”œβ”€β”€ HpBiosMgmt32.efi
    β”‚   β”œβ”€β”€ HpBiosMgmt32.s09
    β”‚   β”œβ”€β”€ HpBiosMgmt32.s12
    β”‚   β”œβ”€β”€ HpBiosMgmt32.s14
    β”‚   β”œβ”€β”€ HpBiosMgmt.efi
    β”‚   β”œβ”€β”€ HpBiosMgmt.s09
    β”‚   β”œβ”€β”€ HpBiosMgmt.s12
    β”‚   β”œβ”€β”€ HpBiosMgmt.s14
    β”‚   β”œβ”€β”€ HpBiosUpdate32.efi
    β”‚   β”œβ”€β”€ HpBiosUpdate32.s09
    β”‚   β”œβ”€β”€ HpBiosUpdate32.s12
    β”‚   β”œβ”€β”€ HpBiosUpdate32.sig
    β”‚   β”œβ”€β”€ HpBiosUpdate.efi
    β”‚   β”œβ”€β”€ HpBiosUpdate.s09
    β”‚   β”œβ”€β”€ HpBiosUpdate.s12
    β”‚   └── HpBiosUpdate.sig
    β”œβ”€β”€ CrisisKeyDLL.dll
    β”œβ”€β”€ FlsHookDll.dll
    β”œβ”€β”€ FlsHook.exe
    β”œβ”€β”€ FWUpdLcl.exe
    β”œβ”€β”€ InsydeFlash.exe
    β”œβ”€β”€ iscflash.dll
    β”œβ”€β”€ iscflash.sys
    β”œβ”€β”€ iscflashx64.sys
    β”œβ”€β”€ platform.ini
    └── xerces-c_2_7.dll

Good luck!


#3

Which model laptop are you trying to update?

Ah, I see you linked to your laptop’s download page. I downloaded the BIOS updater too and I can confirm the content is indeed different from the updaters I have used in the past.

So apparently newer (or non-Elitebook?) laptops need a differently structured USB stick to update the BIOS. Well, hopefully someone will figure out how to generate the needed files on the USB stick from the HP updater…

As far as I know, there is a different procedure for BIOS recovery and for BIOS update.

I added a warning to the instructions above for good measure.