Following a week long community feedback session that was Microsoft Ignite, the Driver Automation Tool has been redesigned and additional features added as per requests received. So let’s go through the new layout and features introduced below.

Layout Update

The layout of the tool has been updated to allow for better visibility and flow of features. The initial tab provides you with access to select the core options for the deployment type, the model listings selection has been made much larger per your request. The addition of “ConfigMgr – Standard Pkg (Pilot)” in the deployment platform type assists in the ability to test newer builds of Driver/BIOS packages as part of your testing process. For those of you using our MDM solution, all you need to do is change the “Filter” option to either “Drivers Pilot” or “BIOS Update Pilot” to match based on “Pilot” packages.

The next two tabs in the tool deal with options for ConfigMgr downloads. The first of which is the ConfigMgr Settings tab, here you will find input for the ConfigMgr Site Server name, along with options for distribution and clean up. New in this version is the ability to select the distribution priority of the packages created, which is something quite a few of you had asked for.

ConfigMgr Package Management

The next tab is completely new to this version and allows you to manage your Driver and BIOS package deployment states within the tool. Piloting of Driver and BIOS update packages is obviously something you should undertake as part of testing new builds of both the OS and Driver/BIOS package. In order to make it easier to migrate packages between production, pilot and retire stages I have added this into the tool for you.

Simply select the package(s) you wish to move and then use the actions drop down to move the packages as required. The packages storage paths are maintained therefore you do not need to maintain multiple copies on your storage or redistribute your packages as only the package name is changed.

Package state change in action:

MDT Settings

 

The MDT settings tab is another new addition in this release. Here you now have the ability to specify alternative paths for your MDT PowerShell module as well as the ability to select multiple MDT deployment shares and driver folder structure. At present I have included two options here;

Option 1 – OperatingSystemDir\Make\Model\DriverRevision
Option 2 – Make\Model\OperatingSystemDir\DriverRevision

Below is an example of the structure created by both options when used for a HP EliteBook 1030 G1:

Common Settings

Settings common to all deployment scenarios are now included in the “Common Settings” tab

Event Log

The event log now runs in its own full tab when the tool is running. Additional logging is also included in the log file itself for troubleshooting.

 

Microsoft Technet Download

The script can be downloaded along with instructions from the Microsoft Technet Gallery – https://gallery.technet.microsoft.com/scriptcenter/Driver-Tool-Automate-9ddcc010

 

(3835)

Maurice Daly

Maurice has been working in the IT industry since 1999 and was awarded his first MVP Enterprise Mobility award in 2017. Technology focus includes Active Directory, Group Policy, Hyper-V, Windows Deployment (SCCM & MDT) and Office 365.

comments
  • John
    Posted at 14:16 October 10, 2017
    John
    Reply
    Author

    Thanks for another update for this fantastic tool! You guys are the best!

  • Thomas
    Posted at 14:43 October 10, 2017
    Thomas
    Reply
    Author

    New Model and this doesnt like my TS at all.

    Got a new XPS 15 9560 model, and the bios update script part kills my TS.

    There are no bios available, so the process completed with ecit code 1, which should be normal.

    but it fails with:Failed to run the action: Dynamic Bios Package Detection.
    Incorrect function. (Error: 00000001; Source: Windows) and ends the TS

    if i copy my TS and remove the 3 BIOS update lines, it goes on as normal, so something isnt correct here.

    • Maurice Daly
      Posted at 14:53 October 10, 2017
      Maurice Daly
      Reply
      Author

      Hi Thomas,

      What do the logs say on this?. Are you having issues with other models?.

      Maurice

      • Thomas
        Posted at 18:16 October 10, 2017
        Thomas
        Reply
        Author

        Just this new model, never had any XPS before. there is nothing more in the logs basically then what shows there..

        It downloads the powershell script, and ends with process completed with exit code 1.
        then i get on the line below:
        Failed to run the action: Dynamic Bios Package Detection.
        Incorrect function. (Error: 00000001; Source: Windows)
        Let the parent group (Bios Upgrades) decides whether to continue execution

        Let the parent group (Install) decide whether to continue execution
        Let the parent group (Execute Task Sequence) decide whether to continue execution
        The group (Execute Task Sequence) ignored action failure and continue execution on the next step following the group.
        Start executing an instruction. Instruction name: Gather Logs and StateStore on Failure. Instruction pointer: 118

        and the TS is finished as it just gather logs.

        But its also the first model that doesnt have any BIOS updates available. Im not sure if the Model info might be a contributor to the whole thing, as in The Automation Tool, the model is listed as “XPS Notebook 9560”, but the WMI specifies “XPS 15 9560”. But that shouldnt affect BIOS, as i have renamed the driver package to adjust for this, and it finishes the TS if i remove teh BIOS update part of the TS

        • Maurice Daly
          Posted at 22:07 October 10, 2017
          Maurice Daly
          Reply
          Author

          Hi Thomas,

          Exit code 1 indicates that the script is having issues connecting to the web service. I have sent you a separate email on this.

          Maurice

  • David
    Posted at 16:30 October 11, 2017
    David
    Reply
    Author

    Thanks for the update! Looks good! Question or rather issue, maybe not anything you can control. The SurfacePro driver fails to download for me. Other MS products works fine. Now is the SurfacePro listed the NEW SurfacePro or the original? I am assuming new? MS no longer offers a CAB or ZIP for the new SP, only an MSI so I don’t know if that is the issue.

    Again thanks, your tool is very helpful!

  • Mike
    Posted at 08:33 October 12, 2017
    Mike
    Reply
    Author

    Great tool . When I select Lenovo T440s BIOS it creates the folder but it is empty .

    • Maurice Daly
      Posted at 16:21 October 12, 2017
      Maurice Daly
      Reply
      Author

      Hi Mike,

      What did it say in the logs. I have just tried this for the T440s with no issues.

      Maurice

  • Dave
    Posted at 14:44 October 12, 2017
    Dave
    Reply
    Author

    I can’t find HP EliteBook 840 G1 and HP Elitebook 840 G2 in the model list for either Windows 10 1607 and 1703. Can you work with HP to get the list updated?

    Sorry I’m relatively new to this site, so if there is a more appropriate place for this type of request please let me know!

    • Maurice Daly
      Posted at 16:23 October 12, 2017
      Maurice Daly
      Reply
      Author

      Hi Dave,

      I can request it from HP, however it might not fit their OS supported model listings internally.

      Maurice

  • T
    Posted at 16:51 October 17, 2017
    T
    Reply
    Author

    awesome tool! does this tool include improvements to parallel processing? i.e. download package whilst creating another package on SCCM?

    • Maurice Daly
      Posted at 23:28 October 17, 2017
      Maurice Daly
      Reply
      Author

      Multi threading is currently not a future of the tool, however this might change with a move to a different programming language.

  • Brian
    Posted at 03:11 October 21, 2017
    Brian
    Reply
    Author

    We’re primarily a Lenovo shop and have noticed in this version that the BIOS packages are missing the release date which causes Invoke-CMDownloadBIOSPackage to fail when calling the Compare-BIOSVersion function with a null value. The problem appears due to the following: -AvailableBIOSReleaseDate $(($PackageList[0].PackageDescription).Split(“:”)[2].Trimend(“)”))

  • Anthony
    Posted at 17:42 October 26, 2017
    Anthony
    Reply
    Author

    Hiya,

    I’m trying to download a list of driver packages with import to Driver Pkg into our SCCM environment. As a test, I used a Dell Latitude E6400. It does download and extract the drivers to the repository path and it creates the driver package pointing towards the package path, but it does not copy the content from the repository path to the package path.

    The log also does not say anything. This is what is said about the logs. I hid the server and account name in this log part.

    • Maurice Daly
      Posted at 22:24 October 26, 2017
      Maurice Daly
      Reply
      Author

      Hi Anthony,

      I have tried to replicate your issue without success. Are you using UNC or local paths?. Please send over your log file for further troubleshooting.

      Maurice

  • Thomas
    Posted at 20:50 October 26, 2017
    Thomas
    Reply
    Author

    How would one go about if there are models missing in the DriverCab file of Dell?

    This is an 2 year old model Latitude 3440, but the tool is unable to download the cab file, most likely because info is missing in the xml file.

    i tried to download the CAB file manually, and put it in the source folder hoping it would take this file, unpack it and make a driver package, but since the file already exist, it wont continue..

    i would ask if one could check for the cab file and if package missing, but that would again probably regenerate old deleted packages aswell if one fail to remove the cab file before one begin.. as it would check all source folders.

    maybe a button for manual override as one usually would select on the specific model in the tool.. ?:), or at least some way of bypassing if/when Dell has small issues with the xml file..

    • Maurice Daly
      Posted at 23:25 October 26, 2017
      Maurice Daly
      Reply
      Author

      Hi Thomas,

      New in 5.0.1 is a feature that will allow you to perform such an action. If you download the cab from http://en.community.dell.com/techcenter/enterprise-client/w/wiki/11560.latitude-3440-windows-10-driver-pack (I would also advise you to raise this with Dell as to why that system is not included in the XML), then extract the cab to a directory. Then obtain the System SKU from PS on one of the 3440s by running (Get-CIMInstance -ClassName MS_SystemInformation -NameSpace root\WMI).BaseBoardProduct and enter the make, model, sku (as the baseboard) and set the source to the directory where the files were extracted. It will import the driver package with the same formatting for modern driver management.

      Maurice

      • Thomas
        Posted at 07:20 October 27, 2017
        Thomas
        Reply
        Author

        Hi Marice, where would i go to raise this with Dell, i fear my normal account manager might be at loss trying to fix this for me…

        • Maurice Daly
          Posted at 08:11 October 27, 2017
          Maurice Daly
          Reply
          Author

          Perhaps you could reach out to Warren Byle on Twitter. He is the product manager for the Dell Command Configure suite.

  • Evan
    Posted at 16:27 October 27, 2017
    Evan
    Reply
    Author

    Great tool, but I’m having issues with this version. When I start it up, I’m able to use it normally. But when it tries to down an HP cab, it freezes up and never continues. I’m not able to click on or do anything else at this point. If I use Task Manager to close it out, it does so. But when I start it up again it’ll immediately try to grab that cab again and freeze. I have to delete the settings to reset it but haven’t figured out a way to get it to work correctly at this point. Any thoughts?

    • Maurice Daly
      Posted at 18:41 October 27, 2017
      Maurice Daly
      Reply
      Author

      Hi Evan,

      If you select a manufacturer other than HP does it function?. Try clearing the contents of the temp folder created by the tool also.

      Maurice

  • Martin Skorvald
    Posted at 10:49 November 1, 2017
    Martin Skorvald
    Reply
    Author

    Hi M
    Thank you for this tool.

    If we will deploy 1709 on HP hardware and all models not exist there can we use 1703 for the missing models?

    Martin Skorvald

    • Maurice Daly
      Posted at 12:58 November 1, 2017
      Maurice Daly
      Reply
      Author

      Hi Martin,

      Technically the drivers should work where 1709 does not flag them as incompatible. Depending on the life cycle of the HP model and their support for 1709 on it, an alternative would be to create a custom driver package based on the latest drivers from the individual vendors.

      Maurice

  • Dennis Roteliuk
    Posted at 16:34 November 16, 2017
    Dennis Roteliuk
    Reply
    Author

    Hi. Great product! Thanks for all your hard work in putting this utility together. Once issue I’m having is with BIOS update downloads. When I try to use this tool for BIOS downloads I get an error “Unable to retrieve BIOS Download URL for Dell Client Model: Latitude 7280”. I’ve tried a few other Dell models and get the same error for BIOS. Drivers download and process with no issues. Thanks,

    • Maurice Daly
      Posted at 11:39 November 17, 2017
      Maurice Daly
      Reply
      Author

      Hi Dennis,

      I have just run through a test download and package of that BIOS with no issues. Clear out the contents of the temp folder created by the tool and ensure that exe files are not being blocked on your perimeter firewall.

      Maurice

  • Daniel
    Posted at 21:24 November 21, 2017
    Daniel
    Reply
    Author

    Thank you for such an amazon tool. I’m currently leveraging it to download and import over 40GB of hardware drivers into my lab ConfigMgr server but I have one question. I noticed that it takes upwards to a minute to import each driver INF into ConfigMgr. As such its going to take what I’m estimating will be 24+ hours to import all my hardware drivers. Is this to be expected?

    For reference, I’m running your tool on the actual site server with both the package and source shares on the same box so everything is local.

    Any feedback and/or guidance would be greatly appreciate and if the feedback is that “the import takes time” then I’m fine with that too as this tool is a life saver.

    • Maurice Daly
      Posted at 00:28 November 22, 2017
      Maurice Daly
      Reply
      Author

      Hi Daniel,

      Importing INF’s in the traditional driver package method can take significant time. If you try importing a single driver yourself you will see the time taken. This is why I recommend moving to drivers within standard packages, as the package creation speed is far quicker and it saves importing large volumes of driver information into the ConfigMgr DB.

      Maurice

      • Daniel
        Posted at 01:46 November 22, 2017
        Daniel
        Reply
        Author

        Greetings Maurice,

        Thank you for the feedback and recommendation. I will definitely consider the switch to standard packages when I implement this in my production server. Have a great evening and thanks again for all your efforts in putting such an amazing tool together.

  • Mike Block
    Posted at 20:34 November 27, 2017
    Mike Block
    Reply
    Author

    Hello Maurice,

    While configuring our SCCM Client Default Settings, I tried following the instructions for enabling BaseBoardProduct under MS_Systeminformation but my options look different.

    Not sure if it is the version of SCCM or Windows I am using but when I go to Add, connect to a machine via ROOT\WMI, and filter by MS_Systeminformation, my screen looks different and I can select the Unit of the Property information I want to see (MB/KB/GB/Decimal String/Seconds/Hex String/Date String) I’m assuming I need to select Hex String?

    Thanks,

    Mike

    • Maurice Daly
      Posted at 00:46 November 30, 2017
      Maurice Daly
      Reply
      Author

      Hi Mike,

      Perhaps you might take a few screenshots and mail them over to me. If you could include the version of SCCM you are using also.

      Maurice

  • Thomas
    Posted at 15:01 December 7, 2017
    Thomas
    Reply
    Author

    I get a problem with Optiplex 3050 series, as i have 2 models, a 3050 and 3050 AIO.

    it finds a match for both in driverpackagedownload.log file,

    Match found for computer model, manufacturer and operating system: Drivers – Dell Optiplex 3050 AIO – Windows 10 x64 (UMV0018C)
    Match found for computer model, manufacturer and operating system: Drivers – Dell Optiplex 3050 – Windows 10 x64 (UMV0024C)

    and i get this error.

    An error occured while setting OSDDownloadDownloadPackages variable. Error message: Cannot index into a null array.

    • Maurice Daly
      Posted at 22:01 December 10, 2017
      Maurice Daly
      Reply
      Author

      Hi Thomas,

      Can you send me the entire log so I can have a look at the full details.

      Maurice

  • Leave a Reply