SCCM Dynamic Driver management using Onevinn SCCM Extensions

My co-worker Johan Schrewelius has written a cool extension to Configuration Manager that adds some great features. In this post I will cover how it can dynamically manage drivers and driver software as we often must install that as well to get everything working. The end goal is to be able to add hardware models to our environment without having to modify our Task Sequence. Onevinn SCCM Extension can be downloaded here: and contains a pretty good documentation that will get you started. I will only cover the functionality in this article.

The parts of the Onevinn SCCM Extensions that are used to achieve this is:

Onevinn WebService, which is used to query the SCCM server for driverpackage/package to be used and software/applications related to a Hardware model.

SCCM Extension, which adds a new node on the Operating Systems pane in admin console and saves the HW model, drivers, Operating System, Software installations in WMI on the Site Server.

Using this addon we can configure a specific Hardware model which operating system used, and for that Operating System, select Driverpackage or a Package which many of us use today instead of a driver package(it will list all Package which starts with “DRV-“ in the name as Driver Packages).
if the hardware model has been inventoried in SCCM so it exists in the Database already it will be listed in the drop-down menu, if not in the DB already it can be added using the “New” button.

We can also select which applications and/or packages that should be installed in the Task Sequence during OS deployment.

In the Task Sequence we need to add three steps, that is all it takes.

Install Driver package(It requires that a package have been created with the .exe file and a configuration file, it is all covered in the documentation that is included in the download on Technet gallery), must be added after “Apply Operating System Image” and before the “Setup Windows and Configuration Manager” step, exactly where we run the Apply Driver Package step today.

That step will query the webservice for which driver package to use and then download it and apply it for the specific model and Operating System Image being used. It will look like this on the client during OS deployment where the drivers are downloaded and installed Dynamically

Install Software Dynamically

The DriverInstallerClient.exe also sets a variable for all Dynamic Software that needs to be installed so we only need to add the below step for the software to be installed dynamically during OS deployment.

Install Applications Dynamically

The DriverInstallerClient also sets a variable for all Dynamic Applications that needs to be installed so we only need to add the below step for the applications to be installed dynamically during OS deployment

The result is a much shorter Task Sequence than we have had before and it is dynamic, we can add a hardware model without editing the Task Sequence! 😀

I hope you find it useful as well, test it out, provide any feedback you have then we can make it even better in the future!!


Add a Comment

Your email address will not be published. Required fields are marked *

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