See our updated post if you are installing Windows ADK 1809 or later

With each major release of Windows 10, comes a new release fo the Windows Assessment and Deployment Kit. This means yet another product to keep up-to-date in your environment. In this post, we will cover how to update an existing installation of a Windows ADK on an SCCM server. If you are looking for a history of Windows ADK versions, see our post here.

The following steps can be applied no matter what version of the ADK is already installed or will be installed.

Why the Windows ADK must be updated?

  • Stay supported for SCCM and Windows 10 OS deployment
  • Microsoft recommend matching the Windows 10 version deployed
  • New setting in WinPE or in the Unattend.xml for the latest Windows 10 build
Note

  • Windows ADK has not a history of bug-free releases. You should hold on the update for a couple days/weeks to see bug reports
  • It’s not mandatory to update the Windows ADK in order to deploy the latest Windows 10 build. An earlier version of the Windows ADK should work just fine, even if unsupported when a new Windows 10 release comes out.

Windows ADK Compatibility Chart

Here’s the table for Windows ADK compatibility with SCCM Current Branch, as the time of posting.

Warning

With the release of Windows 10 1803, Microsoft changed to game a bit regarding the supported version of SCCM. Only SCCM Current Branch 1802 support Windows 10 1803. See our blog to upgrade SCCM to 1802

For the latest compatibility chart, check this Technet documentation.

Consideration before updating Windows ADK

  • If you modified the default USMT configuration XML, they should be backed up before starting the update of Windows ADK
  • Boot images will require more or less work, depending on your setup.

How to update Windows ADK

The process of updating the Windows ADK is pretty straight forward:

  • Download the latest version of the Windows ADK
  • Execute ADKSetup.exe

SCCM Update Windows ADK

  • Select Download and provide a path. This will allow to pre-download Windows ADK content prior to the installation

SCCM Update Windows ADK

  • Select Privacy level for the download

SCCM Update Windows ADK

  • Accept the License Agreement

SCCM Update Windows ADK

  • Download will take some time as the Windows ADK is about 4.4GB

SCCM Update Windows ADK

  • Download completed

SCCM Update Windows ADK

  • Once ready for the update, the old version of the Windows ADK must be uninstalled
  • Open Program and Features, select Windows Assessment and Deployment Kit – Windows 10 and click on Uninstall

SCCM Update Windows ADK

  • Once the previous Windows ADK is uninstalled, reboot the server
  • Once rebooted, run ADKsetup.exe in the download folder you specified in the previous step

SCCM Update Windows ADK

  • Select the installation path, click Next

SCCM Update Windows ADK

  • Select Privacy level wanted. Click Next

SCCM Update Windows ADK

  • Accept license agreement

SCCM Update Windows ADK

  • Select the following mandatory features. You can select more if you need others. Click Install
    • Deployment Tools
    • Windows Preinstallation Environment (Windows PE)
    • User State Migration Tool (USMT)

SCCM Update Windows ADK

  • Once completed, verify in the Program and Feature that Windows ADK has been updated to the latest version

SCCM Update Windows ADK

  • Reboot the server once again

Updating Boot images

After the Windows ADK update is completed,  boot images must be updated in order to use the latest bits for Windows PE.

There are 2 scenarios for you boot images:

Default boot image and updated ADK prior of an SCCM upgrade

If you updated the ADK prior to an in-place upgrade of SCCM to a latest Current branch release, the upgrade of SCCM will automatically regenerate the default boot images as part of the upgrade.

This is not clearly stated as part of an SCCM upgrade. After an upgrade, look at the OS version of the default Boot images, if it is matching your installed version of the Windows ADK, you are good!

SCCM Update Windows ADK

Some times, the automatic update of the default boot images doesn’t work. This is often caused by old driver that are added to boot images.

This will be possible to catch by having a previous version on the boot images

Custom boot image or updated Windows ADK after an SCCM Upgrade

If you are in one of those situation, boot images must be taken care of in a more manual fashion.

  • If you use custom boot images
  • If you already did the SCCM upgrade prior to the Windows ADK update

Wilhelm Kocher and Herbert Fuchs, from Microsoft Premier, created a powershell script to help with this matter

  • Download the powershell script here
  • Execute a Powershell command as administrator
  • Run the script

SCCM Update Windows ADK

  • Provide Boot Image name. This is the WIM file name

SCCM Update Windows ADK

  • Provide Boot Image Console name. This is the Name field used for the boot image in the SCCM console

SCCM Update Windows ADK

  • Provide BootImageConsoleDescription. This is the comment. Can be blank.

SCCM Update Windows ADK

  • Provide the BootImageConsoleVersion. This is the Version field for the boot image in the SCCM console

SCCM Update Windows ADK

  • Provide the OSArchitecture. Possible value X86 or AMD64

SCCM Update Windows ADK

  • Choose to EnableDebugShell. Possible value True or False

SCCM Update Windows ADK

  • Select if PXEEnabled. Possible value True or False

SCCM Update Windows ADK

  • Select OverwriteExistingImage. Possible value True or False

SCCM Update Windows ADK

  • Select UpdateDistributionPoints. Possible value True or False

SCCM Update Windows ADK

  • The script will now update the boot image with the latest source, while adding all your customization selected from SCCM.

 SCCM Update Windows ADK

Using this script will inject the latest WinPE and also update distribution point when done

Note

A new feature is available in the Technical Preview 1704 of SCCM.

When we hit Update Distribution Point on a boot image (custom or default), it will be possible to Reload this boot image with the current Windows PE version from the Windows ADK

This will actually do the exact same thing as the script used!

SCCM Update Windows ADK

Unattend.xml consideration

Unattend.xml files are used to pass configuration to Windows while the installation is going on. With a new release of Windows 10, new settings could become available at the installation time.  XML files are configured using Windows System Image Manager (Windows SIM). Windows SIM is part of the ADK.

That said, new or modified unattend.xml files could be needed along with new Windows 10 releases. They should be modified or created with Windows SIM, after the Windows ADK as been updated.

Comments (43)

Stephane Faubert

10.04.2017 AT 07:12 PM
Oublie ça... Je sais pas lire! lol...

john

08.23.2017 AT 03:34 AM
Thanks for the post followed it to the letter to upgrade my ADK and Boot.wim though After booting it crashes and forces a restart. Do you have any idea where to start with fixing this?

Jon

10.24.2017 AT 01:17 PM
We're having the same problem as John (and seeing several other oddities). We used the built-in feature to update using the version from the ADK. It said the current version was 15063.0 but after running it the boot image does actually reflect 16299.15. However, if we run the wizard again, it still shows the old number as the "current" version. Now WinPE won't load on any of our devices. Starts to load and then TSBootShell just seems to die. If we get a command prompt open in time it prevents the reboot, but all activity has ceased.

Michael

10.27.2017 AT 10:07 AM
Same thing here. I'm on SCCM 1610, MDT 2013 Update 2, and was on ADK 1607. I decided to do the updates one a time (ADK -> MDT -> SCCM) to reduce variables since we historically have bad experiences with SCCM-related updates. I updated from ADK 1607 to 1709, and now we can't deploy bare metal b/c WinPE restarts after "preparing network connections." If I F8 and open a cmd window, it prevents the restart. So far, ipconfig shows a good IP, it can see the local hdd, and there's only one log file - smsts.log. The only error in there is PxeGetPxeData Failed with 0x80070005.

Michael

10.30.2017 AT 03:11 PM
Got it solved. We updated from SCCM 1606 to 1706 and the problem went away. Boots into WinPE fine now.

Kannan

08.08.2017 AT 03:09 PM
hi Jonathan, In the Script has an option "PXEEnabled", I our environment we are using PXE boot options, do I need to select TRUE ? Can you elaborate this options please.

Nishant

07.10.2017 AT 05:59 AM
Hi, We need to upgrade ADK 1511 to 1607. Will custom boot images with ADK 1511 will continue to work during imaging after ADK upgrade or we need create new custom boot image with ADK 1607 for imaging to work in our environment ?

Jonathan Lefebvre

07.10.2017 AT 08:47 AM
Hi Nishant, If need to upgrade ADK to 1607, you should update boot images also. But yes, you 1511 boot images will still work after the upgrade of ADK. Jonathan

Pär

06.02.2017 AT 04:34 AM
Hm. I tried updating the exisiting boot images by running Update Distribution Points, but the version did not change...

Jonathan Lefebvre

06.08.2017 AT 11:59 AM
Hi Par, I've reviewed the post. Take a look at the Boot image section for updated instruction. sorry about that Jonathan

Anthony

06.02.2017 AT 08:28 AM
Par, last time I did this I had to use the script listed here. I believe there is a blog article from MS about using this script until they get something working in SCCM that automates this. https://gallery.technet.microsoft.com/RegenerateBootImageWinPE10-f508f1e4/view/Discussions

Anthony

06.01.2017 AT 09:14 PM
Thanks for this post. If updating the boot images are so easy then why does scripts like this exist? Was this a new feature of 1702? https://gallery.technet.microsoft.com/RegenerateBootImageWinPE10-f508f1e4/view/Discussions

Jonathan Lefebvre

06.08.2017 AT 11:58 AM
Thank you for your comment Anthony! I've adjusted the post with your comment! We can't be right 100% of the time 😉 Look at the last note about a new feature in TP1704... I think the script will be done when this goes to production builds 🙂 Jonathan