Supermicro BIOS Update / Flash Procedure

Supermicro BIOS Update / Flash Procedure

Supermicro BIOS Update / Flash Procedure

Some call it flashing the BIOS (like me) and others call it updating the BIOS. Either way, the goal is to wipe the old BIOS firmware and load the latest and greatest. The method that I found to be easiest was to use Rufus to create a bootable USB stick, and then just add the Supermicro BIOS firmware onto the USB stick. Here are the three steps to follow:

Step 1 – Grab The Latest Supermicro Firmware

Fire up the Supermicro download page and put in your motherboard model. In my case, it’s the X9SCM.

bios-downloads

Click the BIOS Downloads or Get BIOS button. The latest firmware will be offered for download, with a giant warning telling you that upgrading firmware is risky business. I strongly recommend making sure that your server is plugged into a UPS before moving forward with the upgrade.

firmware-warning

Once you click on the link you’ll need to read and accept a EULA. Then you can download the zip file. Inside are a handful of files – the large file with a weird extension is the actual BIOS bin file.

bios-zip-contents

Note: There are also two batch files included – AMI_1.BAT is for BIOS 1.1a or lower, and AMI_2.BAT is for BIOS 2.00 or higher. In my case I am running 1.1a so I’ll need to use AMI_1.BAT in Step 3.

Extract the contents of the zip to a folder for later.

Step 2 – Bootable USB Stick With Rufus

If you’ve not used Rufus before, it’s just a simple little app that formats a USB stick so that it boots into DOS. I use it all the time for OS-less firmware upgrades on various servers and components. Download the app, pop in a USB stick (pretty much any size will do), and tell Rufus to make the USB stick bootable. I used the default configuration, but still took a screenshot below for you to refer to.

rufus-config

Once completed, copy over the extracted zip folder from Step 1 and put it in the root directory of the Rufus USB stick.

Step 3 – Flash The BIOS

The final step is to insert the Rufus USB stick (or mount it over IPMI) and fire up the server. To make sure that the server boots to the USB stick, enter the BIOS settings before the server boots into the hypervisor and do a manual boot override to the Rufus USB stick. Alternatively, I just end up removing the existing USB stick that holds vSphere ESXi on it because I have no other bootable media inserted – this gives the board no choice but to boot into the Rufus USB stick.

Once the Rufus USB stick has booted to DOS, do the following:

  1. cd <name of directory you copied over in Step 2 with BIOS>
  2. Run the update batch file
    • If your current BIOS is 1.1a or lower, run AMI_1.BAT <name of BIOS file>
    • If your current BIOS  is 2.00 or higher, run AMI_2.BAT <name of BIOS file>
  3. The AMI Firmware Update Utility will launch and erase the flash, then write the new BIOS file to the flash

The final screen looks something like this:

ami-bios-update-screen

That’s it. Easy!

If you used AMI_1.BAT I typically advise rebooting the server and then running Step 3 a second time with AMI_2.BAT instead. It should finish without any final warning messages.

You can remove the Rufus USB stick and reboot the system into your normal vSphere hypervisor environment.