In this blog I will take you through the steps of importing driver packages correctly into SCCM. Importing drivers into SCCM is in general a pretty simple task but their are a few pitfalls you have to be aware of. When you first start importing drivers packages for just a few hardware models you will not have any difficulties. Overtime when you have to start importing new driver packages or multiple driver packages at once you can run into issues quickly.
You may think… So what is the problem with importing driver packages into SCCM..?
The problem is the behavior of SCCM itself. When you try to import a driver which can be part of a different driver package that already exists in SCCM it will just append whatever category you have defined to that existing driver. So by default you can’t import duplicate drivers. This means that you can’t create stand-alone driver packages and after a while drivers will be part of multiple categories.
If you don’t mind that drivers can be part of multiple driver categories or drivers for hardware model X are part of driver package for hardware model Y than that’s OK. You only have to make sure you will never delete any driver packages in the future otherwise you will definitely run into issues.
Personally I prefer to create stand-alone driver packages for each hardware model separately. In this way I it is easier to manage all drivers and driver packages.
Driver management goals:
- Create a stand-alone driver package per hardware model
- Keep driver management in SCCM easy
Follow the next steps to keep driver management in SCCM easy:
Step 1: Download driver packages
First we have to download and prepare a driver package before we can start importing it into SCCM. From the bigger hardware vendors like Dell, HP and Lenovo you can download complete driver packages.
Download the driver packs from here:
Dell : Dell Driver Packs
HP : HP Driver Packs
Lenovo: Lenovo Driver Packs
Extract the driver cabs and copy them to your SCCM driver source location.
In my case that will be \\<SCCM Source Share>\Drivers\Sources\<Hardware Vendor>\<Windows Version>\<Platform>\<Cab Version>
Step2: Import duplicate drivers
Prepare the driver package first by following the next steps before importing:
- Create a bat file inside the driver source root folder and copy the below script and add it into the batch file. Name it for example “Dell_Latitude_5580_Win10_x64_A05.cmd”
@ECHO OFF for /f "tokens=*" %%G IN ('dir /ad /b /s') DO ( echo. > "%%G\%~n0.txt" )
- Run the batch file and it will create a “Dell_Latitude_5580_Win10_x64_A05.txt” file inside each folder.
- Because each folder has an additional .txt file the file hash of each folder will be different and therefore SCCM thinks its a different driver. So now we can start importing the drivers. 🙂
Step 3: Import driver packages
In this example we will import the Windows 10 x64 driver package for a Dell Latitude 5580.
- Right click Drivers and select Import Drivers
- Locate the driver location
- Disable the “Hide the drivers that are not in a storage or network class (for boot images)”
- Assign a driver category
- Create a new driver package and define the new driver package source location.In my case that will be \\<SCCM Source Share>\Drivers\Packages\<Hardware Vendor>\<Windows Version>\<Platform>\<Cab Version>
- Do not add the drivers to the a boot image
- Deploy the Driver package to all required distribution pionts
- Repeat this step for all drivers packages
Now that we have added the driver package you can add the the driver package to the task sequence.
All done 🙂