Include Lenovo BIOS update in a task sequence

We are deploying Windows 10 Creators Upgrade package to our 1400 Windows 1511 laptops, but we noticed a bug related to usb functionality that a BIOS update resolves.  Having never included a BIOS update in a task sequence before, I started the challenge and spent literally days getting it to work.  Now I have the process working I thought I would share to save someone else some long days.

 

  1. I first downloaded the bios update from the Lenovo site and then extracted it locally onto my machine.

 

  1. Then I created a new package in SCCM containing those files, and chose not to create a new program when asked in the wizard; we’ll run everything from command line.

 

  1. I created a new step in the task sequence to create a directory on the laptop running the task sequence. My logic was that I can copy the bios files there from the temporary package content, and run the bios upgrade from the permanent files rather than risking SCCM removing the content before the laptop has applied the update.  This seemed to add some stability to the bios installation process, so I’d recommend you do the same.

Add a Run Command Line step called Make Bios Directory and use the command

cmd.exe /c md c:\bios

(choose another directory if you wish)

1

 

4.   The next step is a Group with a wmi filter specified. This determines what model of laptop can run which bios upgrade, in the case of our Yoga 260s the wmi filter is

SELECT * FROM Win32_ComputerSystem WHERE MODEL LIKE ‘%20FEA00FUK%’

2

 

5.   The next step is where the bios files are copied from the package cache to c:\bios. Ensure you select the package that the bios files are located in

This is completed using the Run Command Line, and the command used is

xcopy.exe “.\*.*” “C:\bios” /D /E /C /I /Q /H /R /Y /S

3

 

6.  The final step is to apply the bios upgrade, again I use another Run Command Line action. It’s very important to populate the Start in: field with the directory the bios files are located in.  This caused me hours and hours of frustration as none of the previous guides showed this as being necessary, but in my case it certainly was needed. The command needed is

C:\bios\WINUPTP.exe -s

and the Start In field is

C:\bios

4

Make sure your laptop has AC Power or else the bios upgrade won’t occur! (Another gotcha I came across.)

Ensure the Continue on error tickbox is ticked on this step as it usually returns an error even though its successful.  (Another gotcha I came across.)

Now test the task sequence and ensure it works.

 

Within the logs in sccm it shows this Upgrading Bios step as failed as it returns an error code of 1 instead of 0.  Once I was happy that it was working reliably on multiple machines I altered the Success codes to include a code of 1.  Nice white logs rather than red and orange!

5

I squeezed in a little bit of time at the end because Lenovo give an option to edit the logo on the bios screen.  I went ahead and added the version number so I can easily tell which machines have the correct bios.  The file needs to be created in the root of the extracted bios files named logo.bmp, it has to be a certain size etc but just read the documentation for details.

Hope this saves someone some time.

6

 

 

 

 

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s