In this second post on how to deal with the scenario of converting from BIOS to UEFI, we’ve come to Dell. This series of post consists of the following:

I recommend that you read the introduction for this series before you continue, since it describes the new capabilities of ConfigMgr Current Branch regarding the native support for BIOS to UEFI conversion. In this post, I’ve also included how to activate and enable the TPM chip for Dell systems due to the fact it requires a special order of steps to be taken for it to function properly when combined with the BIOS to UEFI conversion.

Prepare required packages

We need to create a package for Dell Command Configure (formerly known as CCTK). In Dell Command Configure, you can still leverage the cctk.exe file to configure individual settings in addition to apply a complete ini file with your configuration. The process of creating a Dell Command Configure package in ConfigMgr has already been very well described by Mike Terrill, so I’ll not copy his excellent work. Instead, follow Mike’s instructions from the following blog post:

How to create a Dell Command-Configure Package in ConfigMgr

In my environment, I’ve named my Dell Configure Command package as ‘Dell Command Configure 3.1.0.250’. I suggest that you do the same when following along in this post. As a friendly reminder, distribute the package to your Distribution Points.

This package will be used to configure the settings on the Dell systems so that we can make the actual configuration switch from BIOS to UEFI.

Task Sequence configuration

As for the task sequence configuration, the steps below are part of a native ConfigMgr task sequence. MDT integration is not described in this post, but I’d assume that with the layout of steps below you’ll be able to figure out how to incorporate the same configuration into a MDT integrated task sequence, if that’s what you’re using.

Below are the individual steps for a successful BIOS to UEFI conversion including enabling and activating TPM for Dell systems.

NOTE! Since WordPress converts a double dash (- -, had to add a space character here) into a single dash, all steps below that reference the cctk.cmd file in the Command line should contain a double dash for each parameter passed along.

Format and Partition Disk (Empty Disk)
Type Format and Partition Disk
Disk selection Disk number: 0
Disk type: MBR
Volume Partition type: Primary
Size: 100%
File system: NTFS
Quick format: Yes
Dell Configuration
Type Group  
Condition

 

 

WMI Query:
Namespace: root\cimv2
Query: SELECT * FROM Win32_ComputerSystem WHERE Manufacturer like ‘%DELL%’
Install Dell HAPI Drivers
Type Run Command Line  
Command line InstallHAPI.cmd
Package Dell Command Configure 3.1.0.250
Condition None
Set Admin Password
Type Run Command Line  
Command line cctk.cmd –setuppwd=PASSWORD
Package Dell Command Configure 3.1.0.250
Condition None
Disable UEFI Network Stack
Type Run Command Line  
Command line cctk.cmd –uefinwstack=disable –valsetuppwd=PASSWORD
Package Dell Command Configure 3.1.0.250
Condition None
Enable UEFI and SecureBoot
Type Group
Condition

 

 

WMI Query:
Variable: _SMSTSBootUEFI
Condition: EQUALS
Value: FALSE
Enable UEFI
Type Run Command Line  
Command line cctk.cmd bootorder –activebootlist=uefi –valsetuppwd=PASSWORD
Package Dell Command Configure 3.1.0.250
Condition None
Disable Legacy ROMs
Type Run Command Line  
Command line cctk.cmd –legacyorom=disable –valsetuppwd=PASSWORD
Package Dell Command Configure 3.1.0.250
Condition None
Enable Secure Boot
Type Run Command Line  
Command line cctk.cmd –secureboot=enable –valsetuppwd=PASSWORD
Package Dell Command Configure 3.1.0.250
Condition None
Format and Partition Disk
Type Format and Partition Disk
221_6
221_8
Disk selection Disk number: 0
Disk type: GPT
Volume Volume 1:
Partition type: Primary
Size: 500 MB
File system: FAT32
Quick format: Yes
Variable: TSUEFIDriveVolume 2:
Partition type: Primary
Size: Use percentage of remaining free space (100%)
File system: NTFS
Quick format: Yes
Restart Computer
Type Restart Computer
Selection The boot image assigned to this task sequence
Prepare for BitLocker
Type Group  
Condition None
Enable TPM
Type Run Command Line  
Command line cctk.cmd –tpm=on –valsetuppwd=PASSWORD
Package Dell Command Configure 3.1.0.250
Condition None
Activate TPM
Type Run Command Line  
Command line cctk.cmd –tpmactivation=activate –valsetuppwd=PASSWORD
Package Dell Command Configure 3.1.0.250
Condition None
Format and Partition Disk
Type Format and Partition Disk
221_6
221_8
Disk selection Disk number: 0
Disk type: GPT
Volume Volume 1:
Partition type: Primary
Size: 500 MB
File system: FAT32
Quick format: Yes
Variable: TSUEFIDriveVolume 2:
Partition type: Primary
Size: Use percentage of remaining free space (100%)
File system: NTFS
Quick format: Yes
Restart Computer
Type Restart Computer
Selection The boot image assigned to this task sequence
Dell Configuration
Type Group  
Condition WMI Query:
Namespace: root\cimv2
Query: SELECT * FROM Win32_ComputerSystem WHERE Manufacturer like ‘%DELL%’
Install Dell HAPI Drivers
Type Run Command Line  
Command line InstallHAPI.cmd
Package Dell Command Configure 3.1.0.250
Condition None
Enable UEFI Network Stack
Type Run Command Line
Command line cctk.cmd –uefinwstack=enable –valsetuppwd=PASSWORD
Package Dell Command Configure 3.1.0.250
Condition None

 

Nickolaj Andersen
Principal Consultant and Enterprise Mobility MVP. Nickolaj has been in the IT industry for the past 10 years specializing in Enterprise Mobility and Security, Windows deployments and Automation. In 2015 Nickolaj was awarded as PowerShell Hero by the community for his script and tools contributions. Author of ConfigMgr Prerequisites Tool, ConfigMgr OSD FrontEnd, ConfigMgr WebService and a frequent speaker at user groups.

(2702)

comments
  • Meni
    Posted at 15:25 February 19, 2017
    Meni
    Reply
    Author

    Page not found for “introduction ” link

    • Nickolaj
      Posted at 11:33 February 20, 2017
      Nickolaj
      Reply
      Author

      Thanks, it has been fixed now.

      Regards,
      Nickolaj

  • Marc Graham
    Posted at 20:41 February 19, 2017
    Marc Graham
    Reply
    Author

    Hey There Nickolaj… I know you haven’t gotten to the Lenovo portion of your series but I recently worked with a client who had Lenovo T460’s that required the UEFI conversion. I looked at the “HTA Solution” Lenovo offered but in the end, I opted for manipulating the WMI manually via PowerShell. Much quicker and efficient from my perspective (not to mentioin the HTA can cause angry AV software without exclusions!

    Have you had a chance to look at tjsis and if so, what are your thoughts?

    ~m

  • Roy
    Posted at 13:19 February 20, 2017
    Roy
    Reply
    Author

    Hi, looking foreword for part2 and 3. 1 question though; is there a specific reason you enable uefi network stack after OS deployment?

  • Brachus
    Posted at 17:13 February 20, 2017
    Brachus
    Reply
    Author

    Does this TS assume the use of PXE boot and not USB boot media?
    We’re deploying across different subnets and are limited to using USB media. However, after the successful creation of the TSUEFIDrive, some of our systems are rebooting back to the USB media instead of that new drive.
    Do you have a way to reorder the UEFI devices?

  • Steve
    Posted at 19:16 February 20, 2017
    Steve
    Reply
    Author
  • ReneF
    Posted at 09:43 February 28, 2017
    ReneF
    Reply
    Author

    Great Docu, but it doesnt work for me. Every time i run this, at the end of all steps there is the UEFI screen:
    “No bootable device found”
    “Hit F1 key to retry boot”
    “Hit F2 key for setup utility”
    and so on..

    Whats my mistake?

    • Henrik
      Posted at 11:57 March 2, 2017
      Henrik
      Reply
      Author

      Dont work for me either, same problem as ReneF have, Dell system iam trying on, Optiplex 9020 and 9030.

    • Nickolaj
      Posted at 13:05 March 2, 2017
      Nickolaj
      Reply
      Author

      Hi ReneF,

      Not sure what could be wrong for you in this particular example. I’d like to highlight though that this is an example of how it could be accomplished. It’s not a one-solution fits all. What models are you working with? Running ConfigMgr 1610?

      Regards,
      Nickolaj

      • Henrik
        Posted at 14:18 March 2, 2017
        Henrik
        Reply
        Author

        Yes Configmgr 1610 and Dell Optiplex.
        Got it fixed, created a new TS and setit up from the beginning, maybe a typo or somethings i did wrong in first TS.
        Thanks for a great blog ! 🙂

        • Nickolaj
          Posted at 18:35 March 4, 2017
          Nickolaj
          Reply
          Author

          Great to hear that it got fixed!

          Regards,
          Nickolaj

          • ReneF
            Posted at 18:09 March 8, 2017
            ReneF
            Author

            In my case, i have to update the boot image, and every thing was fine… 😉

  • Brachus
    Posted at 19:14 March 1, 2017
    Brachus
    Reply
    Author

    Activate TPM step will sometimes fail.
    Some of the 7480 laptops we received apparently activate the TPM when the prior CCTK step turns TPM on. So then the actual Activate TPM step will fail.

    • Nickolaj
      Posted at 13:03 March 2, 2017
      Nickolaj
      Reply
      Author

      Hi Brachus,

      Thanks for the input. It’s not good how inconsistent Dell sometimes can be with their models.

      Regards,
      Nickolaj

  • CK
    Posted at 21:27 March 9, 2017
    CK
    Reply
    Author

    Hey There, went through all the steps but when I get to the Command line cctk.cmd bootorder –activebootlist=uefi –valsetuppwd=XXXXXXXX in the TS I keep getting an error. Yet it runs fine from Admin command prompt on the system. the error code I get is an 0x00000005? Any one see this before? Ideas?

  • Jason
    Posted at 20:24 March 14, 2017
    Jason
    Reply
    Author

    I am on ConfigMgr 1610 with MDT. I have followed the same. I have followed the same steps and tried placing them in two different parts of the Task Sequence. I tried after the “Partition if necessary”, right before “Set variable for Format and Partition Disk (unused)” and right after “Validate” step in the Preinstall > New Computer Only section. It appears to make the BIOS modifications (Enable UEFI, Disable Legacy ROM, Enable Secure Boot, etc.) however the Restart Computer (step configured to “The boot image assigned to this task sequence”) does not appear to run until later. It will Apply the Operating System, Drivers, etc. Eventually it seem to go back to the step to restart the computer into WinPE and the Task Sequence selection screen will come up again.

    Any ideas?

    • Steve
      Posted at 14:15 March 15, 2017
      Steve
      Reply
      Author

      We have the same issue. We are using a WinPE USB stick to start the TS. We have to remove the USB stick after the TS policy is downloaded or a reboot in WinPE will start the TS all over again starting with the prompt to select the advertised TS.

  • Sam Nguyen-Kwok
    Posted at 22:57 March 14, 2017
    Sam Nguyen-Kwok
    Reply
    Author

    I think this is going to be a stupid question, to which I already know the answer… but does the reference image need to have been built on UEFI, not BIOS? I’ve run through your steps (thank you, it’s been so helpful!). The BIOS-to-UEFI conversion goes flawlessly, it reboots in WinPE in UEFI, but then it fails to install the OS because “system partition not set” and “unable to find the partition that contains the OS boot loaders”. I’ve been pulling out my hair to try to figure it out, as the steps you’ve shown are actually pretty simple, and I’ve checked my process time and time again. Hopefully it’s just an issue with the reference image, which I could fix by building it with EFI, not BIOS.

  • Justin
    Posted at 19:28 March 15, 2017
    Justin
    Reply
    Author

    Hmmmm so i got all these steps in place and when it does the partition step and reboot to bootimage under the Enable UEFI and secure boot section it fails.

    Volume D: is on gpt disk, but the system is MBR
    Unable to find a partition on the system disk that can be set as active.

    Verfied that UEFI is on and Legacy is disabled. Any ideas? SCCM version is 1610 as well.

  • Mathieu LEROY
    Posted at 16:28 March 16, 2017
    Mathieu LEROY
    Reply
    Author

    Some thoughts and comments after experimentations based on your work (thanks for your great work, again)

    If using usb stick, be sure to add a “Restard in Windows PE” on top of your TS, then add a TS Variable _SMSTSLaunchMode equals “UFD+FORMAT”

    -Be sure to update to latest BIOS version, some CCTK commands won’t work without.
    -Be sure to use latest verison of CCTK (3.2 at this time)

    Had to add a step (with continue on error) before setting BIOS Admin password, because my customer had a previous password set and sometimes not (sigh)

    For TPM Enable/Activate I had to put a Restart Computer between them (E553x non vpro series), but did not have to that for newer 557x series

    Lookink forward for part 2 and 3 🙂

  • Steve
    Posted at 13:26 March 17, 2017
    Steve
    Reply
    Author

    How exactly do you do this step? “If using usb stick, be sure to add a “Restard in Windows PE” on top of your TS, then add a TS Variable _SMSTSLaunchMode equals “UFD+FORMAT” I thought _SMSTSLaunchMode is read-only.

  • Greg
    Posted at 17:12 March 19, 2017
    Greg
    Reply
    Author

    I have a few older models of Dells that I still support that don’t support Secure Boot. Is there some logic that needs to be added to not run the CCTK cmd for enabling it or does a simple Continue on Error work?

    • Robert
      Posted at 20:37 April 12, 2017
      Robert
      Reply
      Author

      I would try updating the BIOS for those models. The updated BIOS’s may support the feature.

  • Brian
    Posted at 18:02 April 24, 2017
    Brian
    Reply
    Author

    Why is it that you’re disabling the UEFI network stack? Don’t you need that to boot to PXE once you enable UEFI?

    • Joe
      Posted at 15:11 June 22, 2017
      Joe
      Reply
      Author

      yes please tell us why u are disabling UEFI stack. My task sequence fails at Restart Computer.

  • Leave a Reply