HP Driver Packs Download & CM Import via PowerShell

Update: a few small mods to the Script after a conversation with Nathan from HP.

This script will Allow you to Check and Update your HP Drive Packs that you have CM Legacy Packages For.  Email Notification When Complete, because you don’t want to sit around and wait for all this to happen.  Also, not all of the code in the script is used, This script is a basic template I use for Both Drivers & BIOS for both Dell & HP.  Feel free to clean it up.

In the script you Specify your Models, their Product ID, and the Package ID in CM


It then grabs the latest Driver Pack Info from HP, compares it to your Package and updates if needed.

Process: (For Each Model)

  • Get SoftPaq Info for Latest Driver pack
  • Get Package Versions
  • If SoftPaq Version newer than Package Version, Download
    • Downloads SoftPaq EXE to Archive Directory
    • Extract SoftPaq to Local Temp Location
    • Deletes Current Package Source
    • Copies Updated Package Source Files to Package Source
    • Creates XML file of Softpaq Info in Source Folder
    • Updates CM Package Info
    • Updates DPs

Directory Paths are all Variables, so change to fit your standards.

Archive Directory:


Package Source Directory:

In the Console:

Email Notification:






7 thoughts on “HP Driver Packs Download & CM Import via PowerShell”

  1. how do we know how to populate that table. Example - we have 640 G2 here. That isn't listed there.

    So I assume I make a shell package that is blank but has a directory source, and once I have that table properly populated I'd run it, and it would download and extract the drivers to that folder.

    @{ ProdCode = '8053'; Model = "ProDesk 600 G2"; PackageID = "PS2000AB" }
    @{ ProdCode = '829E'; Model = "ProDesk 600 G3"; PackageID = "PS2000AC" }

    I have no idea how to populate the ProdCode

    • I can't remember which CMSL this was added, but you can now do the following to get the baseboards.

      Get-HPDeviceDetails -match "640 G2"

      Result of above is:

      SystemID Name DriverPackSupport
      -------- ---- -----------------
      80FD HP ProBook 640 G2 Notebook PC True

      This match field can be set with whatever you like.

    • You have to run it on a machine that has the SCCM PowerSHell Module (One with the CM COnsole). Other than that, it has to run under an account that has rights in CM.


Leave a Comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.