Apply Firmware and Driver Updates Using HP System Software Manager

I have utilized HP System Software Manager for several years. Early on, I started with only bios update softpaqs. I used a single repository for all models, which was ran as a startup script from a network share. I later added additional softpaqs for other system firmware and updated drivers. I later started to use the SSM repositories within an OSD/IPU task sequence. This greatly simplified driver and firmware management for our ConfigMgr environment. The following blog post will detail how to set up both standalone usage in a single repository, and individual model repositories for use within a task sequence.

SSM Overview: The SSM solution utilizes HP softpaq executable files. Each exe has a corresponding CVA file that includes information about the softpaq. SSM uses these files to create a database of information about all the softpaqs in the repository. SSM uses that database to determine which softpaqs are applicable to which model. The idea here is to download needed softpaqs and CVA files into a directory, update the database, and then run the SSM utility on a model to apply the updates. If you need to replace an outdated softpaq, simply replace with a newer version and update the database again. Once you get the structure in place, it is very straightforward.

Standalone Setup:
1. Download the latest SSM version, and install the product using setup defaults. This will result in ssm.exe and ssm.cab in the c:\program files (x86)\HP\System Software Manager folder, as well as a couple documentation shortcuts.

2. The exe and cab files are what you really need here. Copy them to a dedicated shared folder, and grant read access to your client computers.

3. Run ssm.exe as admin from the shared folder, accept the license agreement, and click next on the welcome screen. If you don’t run from the shared folder, the file store path will not reflect the server share on the next screen.

4. Confirm the file store and share name are correct for your environment, click next.


5. Choose options for the repository. Since this is a standalone repository, I have selected to reboot the client upon completion of updates. I also chose to show the user a status bar, and to have centralized logfile share.

6. If you use a bios password (which you should, IMHO), click the launch button on the next screen to create an encrypted password file, then browse to that file, then click next.

7. Confirm your choices on the summary screen, then click next.

8. On the next screen, select the option to ‘Check ftp.hp.com for CVA file updates’ and then click ‘Build Database’. This should not take long as you currently have an empty repository. Once complete, click ‘Finish’.

9. At this point, you should now have a shared directory with several SSM files. You now need to add softpaq files to the directory. The file and folder structure doesn’t really matter here, but you can simplify things by model and softpaq driver type (bios, video, audio, etc) to keep it looking clean. Another option is to look at my Automating HP SoftPaq Repository Updates Using PowerShell blog post if you would like to automate this process.

10. Once you add your softpaqs, the last step is to update the database. This will need to be done any time the softpaq content changes. This can be done by running ‘ssm.exe /am_bld_db from that directory. I typically create a shortcut to do this, which allows you to right click and ‘run as admin’ to do the update.

11. You are now set to run a batch file with the following as a startup script from your share, or anytime on demand.

\\servername\ssmv3.2.13.1\ssm.exe \\servername\ssmv3.2.13.1 /accept

Task Sequence Setup:
In order to use SSM within a task sequence, a package needs to be created and distributed. You could use the same approach and have one large repository for all models, but that would result in every model downloading the entire repository to the local cache. That would get out of hand quickly should you have a lot of models. In this situation, I create a separate SSM repository for each model and assign the package to the proper model using a WMI query. Below is the steps to create an individual model repository.

1. Download the latest SSM version, and install the product using setup defaults. This will result in ssm.exe and ssm.cab in the c:\program files (x86)\HP\System Software Manager folder, as well as a couple documentation shortcuts.

2. Run ssm.exe as admin from the c:\program files (x86)\HP\System Software Manager folder, accept the license agreement, and click next on the welcome screen. Keep the default values for the file store and share name path here as they are not really relevant. The end result will be running a local copy of ssm.exe from the package cached to the client. Click Next.

3. Choose options for the repository. Since this will be run with an OSD/IPU task sequence, you will not choose to reboot the client. The task sequence should handle the reboot step so it can continue with the sequence following the reboot. I also choose to not log on this screen as the log location is specified in the command in the task sequence.

4. If you use a bios password (which you should, IMHO), click the launch button on the next screen to create an encrypted password file, then browse to that file, then click next.

5. Confirm your choices on the summary screen, then click next.

6. On the next screen, select the option to ‘Check ftp.hp.com for CVA file updates’ and then click ‘Build Database’. This should not take long as you currently have an empty repository. Once complete, click ‘Finish’.

7. At this point, you should now have a local directory with several SSM files. You now need to create a folder for each of your individual models in your CM sources share, and add the appropriate softpaq files to the directory. The file and folder structure doesn’t really matter here, but you can simplify things by model and softpaq driver type (bios, video, audio, etc) to keep it looking clean. Another option is to look at my Automating HP SoftPaq Repository Updates Using PowerShell blog post if you would like to automate this process.

8. Once you add your softpaqs for the individual model for this repository, the last step is to update the database. This will need to be done any time the softpaq content changes. This can be done by running ‘ssm.exe /am_bld_db from that directory. I typically create a shortcut to do this, which allows you to right click and ‘run as admin’ to do the update.

9. Next, create a package without a program within ConfigMgr.

10. With a task sequence, add a ‘Run Command Line’ after the first reboot into the Full OS. Use the package you created for the specific model, and run the following command line.

11. On the ‘Run Command Line’ step above, also set the WMI query on the options tab to only apply to the model intended.

2 thoughts on “Apply Firmware and Driver Updates Using HP System Software Manager

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 )

Google photo

You are commenting using your Google 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