Driver Automation Tool
Driver Download Automation Tool
Following on from the success of the Dell, HP and Lenovo Driver Download Tools I have posted over the past couple of months here is the new multi-vendor version.
The script generates a PowerShell GUI to automate the processes of downloading, extracting and importing driver packages for all three of the previous vendors and I hope to add more with time. The initial version is labelled v2.0 as many of the features that people requested as additional extras were built into the Dell version, so it made sense to build upon that release.
The tool automates the following processes;
- Queries XML content from Acer, Dell, Lenovo, HP and Microsoft
- Provides Driver Downloads for all three
- Provides BIOS downloads for Dell only (at present)
- Creates a PowerShell Script for the BIOS update
I have changed this slightly from the earlier Dell verison. I had requests to allow the BIOS package to retain version info, so SCCM admins could select which release to push out rather than using the latest version
- Create a BIOS Update Package
- Download Driver CAB for each model
- Extract the Driver CAB
- Import the drivers in the extracted CAB folder
- Create a Category based on the machine model
- Create a Driver Package based on the machine model and filename
- Imports the associated drivers into the newly created Driver Package
The script can be run against SCCM, MDT, both SCCM/MDT or as a standalone driver download utility (by popular request). I have also added notes on the individual tabs as previously people had tried specifying long UNC paths for the repositories and not the base share directory I had advised to use, causing issues with long UNC path names.
Model listings are obtained from XML feeds from the three vendors. I don’t have control over the models listed in them, however if there are models missing, let me know and I will feed it back into them for future updates.
There are a few new features in this version of the GUI script, these being;
- SCCM Driver Packages – Create standard or driver pacakges for your deployments
- Cleanup Unused Drivers – Removes drivers not associated with a driver package from your SCCM environment
- Remove Superseded Driver Packages – Removes driver packages which have been replaced by a more recent version
Note : Be careful when using the clean up options, as they will impact on your task sequences.
SCCM Driver Package Options
Driver Cleanup Screenshot
Superseded Driver Pack Cleanup
Example: Dell Latitude E5470 A05 and A06 listed
Post Driver Package Cleanup – A05 Removed, A06 is current
Microsoft TechNet Script Library Link – https://gallery.technet.microsoft.com/scriptcenter/Driver-Tool-Automate-9ddcc010
How To Run The Script
Launch the script from an administrative PowerShell window using an account with rights to your SCCM site server (if using the SCCM query option).
If you are using the tool for SCCM, the script will use the current machine name as the SCCM site server name, if this is run on a different machine delete this and type in your site server name. Please ensure that you have rights to the SCCM server and shares specified under the account you are using.
- Select the Deployment Platform (SCCM, MDT, Both, Download Only) and Download Type
- Select the Operating System and Architecture
- Click on the Manufacturer Selection tab
- Select the Makes you wish to use and click “Find Models”
- Select Models and click “Add To Import List”
- On the Import List, select the models you wish to download drivers for
- Click on the Driver Storage Selection tab
- Specify UNC paths to your Driver Repository share (used for downloads and extracts) and your Driver Package share (used for driver packages)
- Optionally chose one of the cleanup options in the SCCM Driver Cleanup Options tab
- Click on “Start Download and Import Process”
SCCM Driver Import
MDT Driver Import
Things To Note
- Downloads are transferred via Bits and require direct internet access or access via proxy. I have included a proxy authentication option for compatibility, however you will need to test this against your own environment and alter as required.
- Background jobs and multi threading are not yet in this release.
- Import driver jobs can take considerable time, this is the same for OEM tools but something to be aware of as the GUI remains static during this process at present. If you are downloading drivers for multiple models you might wish to run this overnight.
- Jobs for “Both” and “MDT” are restricted to “Drivers” only.
Driver Packages – Post Script Run
Driver Package Contents
MDT Drivers Post Script Run;
Driver Download Folders
BIOS Update & PowerShell Update Script
BIOS Folder & PowerShell Contents
BIOS Packages including version
Sub-Folders created for BIOS, Driver Cab and Extracted Drivers (Dell Revision Number)
Driver Cab Folder
Version 2.0 – Initial Public Release
Version 2.1 – Bug Fixes
Version 2.2 – Changed options for SCCM driver packages – Standard and Driver packages
Version 2.3 – Dell x86 Bug Fix, Added Output for Created Packages & Errors
Version 2.4 – HP Bug Fix for models with “/” included. Note that the Z440/Z640/Z840 has issues extracting. This has been raised with HP. Text box controls locked
Version 2.5 – Re-introduced the Dell WMI call for known models as requested
Version 2.6 – Minor UI changes and MDT variable bug fix when selecting download only. Import list models will now select all models unless individual models are selected when initiating the download process.
Version 2.7 – Changes to Dell model lookup. Standard Packages will now take the following format: Drivers – %Make% %Model% – %OS% %Architecture
Version 2.8 – Added Remove Item(s) button to remove one or more models from the Import list prior to running the tool. Fixed issue with progress bar not rendering correctly. Added condition for SiteCode when checking for Dell models in WMI. Added Time Stamps next to key sections of the script.
Version 2.9 – Changed HP Model lookup branch in the HP XML to cater for models sharing the same SoftPaq driver
Version 3.0 – Inf folder name bug. Added file filter for DriverInfFiles variable collection.
Version 3.1 – Added support for Acer and Microsoft models.
Packages can now be distributed to single/multiple distribution points or distribution point groups.
Temp location now set to SCConfigMgr_Temp folder within the running folder.
Dell Flash 64w WinPe support added. Modified BIOS upgrade script to cater for this.
EXE wrapper added.
- Special model Dell systems such as ATG, XG and so on have issues obtaining the link for their BIOS download. I am working on this at present.
This is a community tool and as such please by patient when sending over requests or tweets. I do try to accommodate where possible but remote support or troubleshooting sessions are not available hence the “No Support Provided” message.