SCCM 2012 Drivers


Identify drivers that match Hardware IDs
Installing, and capturing drivers
Importing drivers, categorising, and creating a driver package
Updating Task Sequences
Identifying missing drivers if necessary.

The first step in identifying drivers can be timely depending on the hardware vendor.  Vendors provide self-service support pages; it is possible to find the model and specific supported drivers.
With the example of Dell computers; it is possible to download all the drivers for a particular model via driver CABs from the community pages.  This does allow you to proceed quickly but the CAB will typically contains extra drivers to cater to all variances of the model. NOTE: do not import the whole CAB into SCCM.  The install and capture procedure will ensure the driver package is a small as possible. 
Extract the CAB using 7-Zip/WinZip.  This will produce several subfolders including an x64 and x86 architecture.  Copy the appropriate folder to a USB key for the next stage.

This section will describe how to capture a Dell Latitude E7440 laptop.
It is important to start with a freshly built computer; built using an ISO image without any drivers or applications installed. It is not necessary to set a specific hostname or password as this system will not be joined to the domain; it should reimaged upon completion to fully test driver package.
Once the system is installed open the ‘Device Manager’ devmgmt.msc and you will see a lot of missing driver, unidentified devices.
Using the Dell driver cab previously extracted, right click each device to update/install a driver. Specify a specific install location by ‘Browsing your computer to the USB stick and then let Windows search the folder and subfolders for a matching driver. Some devices are identified and installed with Generic drivers; ensure they are also updated i.e. RAID controllers, Audio, graphics.  It is recommended that all devices are reviewed before proceeding to next step, this will ensure the lastest drivers are in use on all devices.
Once all the device drivers have been installed or updated we are in a position to capture these drivers for SCCM.
Navigate to: C:\Windows\System32\DriverStore\FileRepository 
Sort this directory by Date modifed. Assuming the day is 29/06/2015 select all folders with this modified date and copy to a subfolder on your USB stick with a suitable name i.e. Dell_E7440_Drivers_Captured_A01

The drivers identified and copyied into folder Dell_E7440_Drivers_Captured_A01 should now be copied to the SCCM server ready to be imported.
1. Import the drivers capture above into SCCM with a unique category 
2. Specifying location \\PriSCCM01\SOURCES$\OSD\DriverPackage\Dell_E7440_Driver_Package_A01 
3. Create a package and leave update distribution point selected. DO NOT select or update boot images
4. Select all drivers with category and move to subfolder i.e. Drivers\Dell\E7440
5. Create a similar folder structure within Driver Packages clearly identify drivers packages and models. Move the new driver package from the root locations.
6. If you review the Driver \\PriSCCM01\SOURCES$\OSD\DriverPackage\Dell_E7440_Driver_Package_A01 this folder has been populated with UUID stype folders and these should not be modified (they are managed by SCCM).
1. To avoid complications during testing copy your live task sequence then modify the ‘Apply Device Drivers’ step.
2. Click ‘Add’ > Apply Driver Package.  Modify the Name to reflect model, version etc
3. Browse and select the new driver package
4. Select Options tab
5. Add a condition. WMI Query will only apply this step if the condition is evaluated to be true. 
SELECT * FROM Win32_ComputerSystem WHERE Model LIKE '%Latitude E7440%'


Deploy the new task sequence and build the E7440 previously used to capture drivers. After the build is complete review the device manager for any missing drivers.  In most cases if if step 1.3 was thourough this will be complete; if drivers are missing install and capture the missing drivers as outlined in step 1.4 and import into SCCM and assign to the Driver package. Ensure the new Driver Package is distributed to all in scope DPs before runnign the Task Sequence again.