Let me start by clearly stating that I really like (most) of the changes the MDT development team did for Lite Touch driver handling in Update 1 of MDT 2008. But, do I think the default driver injection mechanism works for all scenarios?
Not Really… Luckily, Lite Touch offers several methods for dealing with drivers 🙂
Background – Lite Touch and Drivers
The default driver injection mechanism in Lite Touch works with pnpid detection. You simply import the drivers into the deployment workbench, during import the workbench parses all drivers and builds a list of all drivers and their pnpid’s (stored in drivers.xml).
When you deploy a machine,a component detects the pnpid of the hardware you actually are deploying to, and then matches those id’s against the repository on the server. Best matching driver wins and is downloaded to C:\Drivers (to be injected later on).
Pros with the default behaviour are
– Easy to import drivers
– Works with most hardware
Cons with the default behaviour are
– Works with most hardware still means failing on some (certain soundcards in particular)
– Hard to maintain (updating, and removing drivers)
– When dealing with multiple OS’s and Architectures it gets even worse
I prefer to use another method for driver injection
I build a separate folder structure and then configure my Task Sequence to use that one instead (using DriverPaths variables)
Pros with method are
– Always works, for all operating systems, architectures and hardwares
Cons with method are
– Consumes more disk space on the server
– Takes a few more minutes to setup
Step-by-Step Procedure
This sample assumes your deployment point is D:\Deploy, shared as Deploy$. In this example we add support for the HP Compaq 8510w model.
- Create the following directory structure
D:\Deploy\Drivers\SRV2003X86
D:\Deploy\Drivers\SRV2003X64
D:\Deploy\Drivers\SRV2008X86
D:\Deploy\Drivers\SRV2003X64
D:\Deploy\Drivers\VISTAX86
D:\Deploy\Drivers\VISTAX64
D:\Deploy\Drivers\XPX86
D:\Deploy\Drivers\XPX64Â
 - For each Task Sequence, add the DriverPaths1 variable. Below is a sample for the VISTA X64 Task Sequence:
Before the driver injection action, Add a Task Sequence Variable action with the following settings
DriverPaths1
%DEPLOYROOT%\Drivers\VISTAX64\%Model%
Â
Â
 - Find out the model name (WMIC CSPRODUCT GET NAME), and create the folder: D:\Deploy\Drivers\VISTAX64\HP Compaq 8510w
 - Copy the Vista x64 drivers for that model to the above folder (create subfolders like below, etc.)
D:\Deploy\Drivers\VISTAX64\HP Compaq 8510w\Nic
D:\Deploy\Drivers\VISTAX64\HP Compaq 8510w\Audio
D:\Deploy\Drivers\VISTAX64\HP Compaq 8510w\Video
Oh, You wan’t to know about the headline background? Well, I got that back (in writing) from a MDT Developer when presenting this solution…
 Who the devloper was? I would never reveal any names, but it begins with a M… 🙂