MSEndpointMgr

ConfigMgr OSD FrontEnd – Version 1.1.2 released

We’re proud to announce the release of ConfigMgr OSD FrontEnd version 1.1.2. This version may come up short in terms of new functionality, however for those running a Configuration Manager hierarchy with a Central Administration Site, this update is for you.

Download

ConfigMgr OSD FrontEnd can be downloaded from the TechNet Gallery using the following link:

https://gallery.technet.microsoft.com/ConfigMgr-OSD-FrontEnd-100-55209031

What’s new

ConfigMgr OSD FrontEnd version 1.1.2 includes mostly bug fixes but also a few minor enhancements:

  • When using the frontend in a Configuration Manager hierarchy that contains a Central Administration Site with multiple Primary Sites, the hardcoded resource ids for Unknown Computer x64/x86 records caused the software to crash. This has been fixed in this version by querying the TSEnvironment for _SMSTSUnknownComputer[x64/x86]Guid variables to get the proper values.
  • 2 new application configuration settings, DebugUnknownComputerX64ResourceID and DebugUnknownComputerX86ResourceID have been added to support the debug operational mode to list task sequence deployments for unknown computers.
  • Required version of ConfigMgr WebService is now at least 1.3.0 or higher, for the frontend to fully function.

If you have an idea that you think would be suitable for this application, please contact me on twitter or via email to further discuss how we can make that happen.

Dependencies

ConfigMgr OSD FrontEnd 1.1.2 requires ConfigMgr WebService 1.3.0. Earlier versions of the web service will not working properly together with this version of the frontend. You can download ConfigMgr WebService from below:

ConfigMgr WebService 1.3.0

Documentation and usage

Embedded in the download package for ConfigMgr OSD FrontEnd is a PDF file called ConfigMgr OSD FrontEnd 1.1.2 – Documentation. This file contains all the information regarding how to get started, detailed explanation of how to use the frontend and some tips and tricks.

(7664)

Nickolaj Andersen

Chief Technical Architect and Enterprise Mobility MVP since 2016. Nickolaj has been in the IT industry for the past 10 years specializing in Enterprise Mobility and Security, Windows devices and deployments including automation. Awarded as PowerShell Hero in 2015 by the community for his script and tools contributions. Creator of ConfigMgr Prerequisites Tool, ConfigMgr OSD FrontEnd, ConfigMgr WebService to name a few. Frequent speaker at conferences such as Microsoft Ignite, NIC Conference and IT/Dev Connections including nordic user groups.

55 comments

  • I have the same problem as described by others regarding unable to detect task sequence deployed to unknown collections.
    Task sequence is deployed correctly.
    Tested webservice with powershell, OK.
    Deleted all unknown computers.

    I also checked that i´m not affected by the bug in the reddit post.
    Tested with version 1703 and 1710, no joy.

    Any tips on how to debug this?

  • Hey Nickolaj

    Is it possible to run a Replace Sequence with ConfigMgr Frontend? I would like to run the replace sequence to backup user data to State Migration Point and then PXE the machine back to OSD Frontend and do a new install, doing a restore from the State Migration Point. Because computer object is still in SCCM DB I’ve deployed to a new Collection and set to ConfigMgr, Media and PXE, but when booting I get to section where Sequence is not showing, but I cannot delete an unknown computer object as there is not one for the particular machine I’m replacing with Win7 to Win10.

    Any ideas if this is possible with OSD FrontEnd?

    • Hi Gareth,

      Did you delpoy the task sequence as hidden? It’s supported to deploy a task sequence to a collection of known objects, I’ve got it up and running in my lab environment for instance, and a couple of my customers are doing it this way. In the upcoming version of the frontend, I’ll rebuild some of the code to support enable / disable of the Computer and Deploy sections.

      Regards,
      Nickolaj

  • How can I debug any communication issues?
    I have a remote office where the UI doesn’t pick up the task sequences, but it worked just fine here.
    I say “worked” because I updated the webservice to 1.4.0 this morning and now the UI isn’t working for me either.
    Running the sample powershell commands when booted to PXE is kicking back the list of task sequences, so the webservice is working, and there’s a clear path of communication between the computer and the webservice, but the UI is failing somewhere.
    I don’t see it in the documentation, so may I request a “Debuglogging” enabled/disabled config option for the next version?
    Thank you for any help.

    • Addendum: A previously working system is still working. I’m finding the computer I’m having issues with was in SCCM, I deleted the entry as the computer hadn’t been connected in over 3 months and wasn’t picking up the advertisement, then re-imported it.

    • Hi Joe,

      I’ll add a request for more debug logging for version 1.3.0. Assuming that it’s working now? If not, I’d recommend using ConfigMgr WebService version 1.3.0 with frontend 1.1.2. Version 1.2.0 of the frontend will soon be released supporting web service 1.4.0.

      Regards,
      Nickolaj

  • I am lost on the application section. If my “AppsTaskSequenceVaraibleName” value is “ConfigMgrApplications” then how do I plug this into the task sequence? I’d assume “ConfigMgrApplications” is the task sequence variable, but how exactly does that need to be added on the “Install Applications” step?

    • Hi Jordan,

      I’d suggest that you stick with the defaults, easier that way. Set the AppsTaskSequenceVariableName property in OSDFrontEnd.exe.config to “APPLICATION” and then in the “Install Applications” task sequence step, select “Install applications according to dynamic variable list”. Make sure the “Base variable name” is set to the same in the OSDFrontEnd.exe.config file, like “APPLICATION”.

      Regards,
      Nickolaj

      • I tried doing that and it is still skipped over in the task sequence. I do have mandatory applications that are selected and available applications selected that are deployed as required to a specified collection ID.

  • We are receiving a similar issue to Mark above, with this error:
    ERROR: Unable to detect any task sequences
    showing up on Unknown machines. Known machines properly display task sequences, and have been verified to accept and image properly using OSD Frontend. This may be due to needing to regenerate our Unknown machines, due to this bug:
    https://www.reddit.com/r/SCCM/comments/6cur7l/psa_there_is_an_issue_with_configmgr_v1702_when/
    While unknown machines are running properly when not using the OSD FE, and their new Resource IDs (2046820355 and 2046820354) are properly noted in the OSDFrontEnd.exe.config, this shift makes we wonder if it might be the cause of our issues.
    Also as both Mark and Daniel noted, no log files appear to be written, whether to the SMS folder on my boot media or the X:\Windows\Temp folder. I did get a log file when my known machine successfully imaged, but nothing when I actually need it to troubleshoot failures.

  • Hey Nickolaj. I always get a connectivity error the first PXE boot or first ISO boot saying “Configured web service endpoint client is not accessible”. It always happens during first boot. If I reboot machine and OSD reloads it always connects. Do you perhaps know if there is a timeout or something that can be set to avoid this?

      • Cheers Nikolaj.

        I had two other questions.

        1. I find that when Frontend is loaded when you manually select the “clear an unknown computer account” tab the Frontend reboots the computer and does not actually remove the unknown computer object from the SCCM database. I would love to automate this so our desk side team imaging machines don’t have to head to the console to remove the unknown computer object. Is there specific permission that needs to be given for the Webservice service account to perform this action?

        2. We have globally distributed offices all using the same boot image. Is there a way to have the web.config file point to a webservice in local region rather than contacting one via a global wan?

        Lastly I really love this Frontend, it’s really well designed and does a great job.

      • Hi Gareth,

        There’s no code in the frontend that will ever restart the computer, so I’m unsure how that’s happening. This was introduced for scenarios when the installation broke somehow and you would be able to restart the deployment even though there’s already an entry in ConfigMgr for the unknown computer object. The code that detects the task sequence deployments can be improved, and to be honest the clear button was simply a work around to fix the issue that occurred in these scenarios.

        You could install several instances of the ConfigMgr WebService located more local to your remote offices, however there’s no support for contacting different instances of these in ConfigMgr OSD FrontEnd. However, this would not really improve the latency of the web method calls, since the data would have to retrieved centrally from the SMS Provider anyway.

        Regards,
        Nickolaj

  • Hi Just wondering if there was a solution to Drew Yeskatalas issues as I think I am having a very similar issue. I have FrontEnd 1.1.2 and Webservices 1.30. I suspect my issue is related to communications between OSD Frontend and with my SCCM environment. I suspect this because it seems to crash out on any option that requires information from SCCM. We are not using MDT so all options around MDT are set to False

    Launching into Debug Mode
    If i set the option ComputerNameFromCM to true in the config file and launch in debug mode it will crashout before it shows the welcome splashscreen. If I Set all ComputerNameBy/From options to False except for ByScript, I can launch into debug mode and see the correct splash screen and tabs.

    When it launches correctly into debug mode I can see the following things that seem to be working fine.
    Deploy TAB
    – Computername automatically populates with custom device name based on powershell script that sets up ###-Serialnumber. This is working fine as I have tested it on a few machines
    – Detail drop down is completely populated with correct details i.e mac address / ethernet etc

    Location TAB
    – Can click on this and see the selection for all my sites based on the config.xml. I can also see the correct information in the Detailed Settings dropdown
    User Tab
    – Correct view with specify a user option. Havent tested apply yet

    The problem is if I enable and click on either of the Deploy or App tabs it crashes right out like it does if I enable NamebyCM. Also on the 3 machines I tested with it never seems to write a log file to C:\windows\temp as it states in the doco so I am pretty stuck. Any advise or assistance would be greatly appreciated.

    • Just to add to my last post, i believe my Webservices are working right as when i test i get the following in internet explorer directly it get the following

      GetCMApplicationDeploymentsByCollectionID


      Office365 Base Installation
      Office365 Project Installation

      GetCMHiddenTaskSequenceDeployments


      TEST – DEBUG Win10 O365 uVNC – DO NOT USE
      IC22000A
      814612480


      Test1 – All
      IC22000B
      814612480


      Test2 – x86
      IC22000C
      814612480


      Test3 – x64
      IC22000D
      814612480

      I can also confirm the weburl and the secret key in the osd.config file is the same url and secret key that i tested from the browser directly.

      Im kinda stuck 🙁

  • In the environment I’m working in, the FrontEnd fails to load with the “Web Service was unavailable message.” However, if I pause for a few minutes, then manually run it, it will launch. Perhaps a ‘retry’ button on that error would resolve this issue.

  • Just curious, is there a video that may help show how this gets implemented? I know reading the PDF should be simple enough, but visuals help a great deal.

  • Hello,
    I am also running into the issue where it is unable to detect any task sequences. All other components work in the Frontend. The TS Deployments are set to hidden, ensured that i removed the Unknown object that was in All Systems. I then created a new record for the system , added it to a collection and deployed the hidden task sequence. Still no Task Sequences detected. I’m using the new ConfigMgr Web Server 13.0 and verified that it is configured properly. The resource IDs for the Unknown objects match what is in the OSDFrontend.exe.config. What else can i check?

    Thanks

    • Hi Maro,
      Have you tired to call the WebService using PowerShell to see if that works to view the task sequences. In the WebService documentation it mentions how you go about using PowerShell for this.

      Thanks
      Mark

      • Hi Mark,
        I just tried running a few of the methods using the sample PS script and i get different responses.

        For example, If i call the GetDeployedApplicationsByUser i get the error
        “Method invocation failed because [Microsoft.PowerShell.Commands.NewWebserviceProxy.AutogeneratedTypes.WebServiceProxy1i
        gMgrWebService_ConfigMgr_asmx.ConfigMgrWebService] does not contain a method named ‘GetDeployedApplicationsByUser’.
        At D:\scripts\ConfigMgrWebService_Sampe.ps1:7 char:1
        + $Web.GetDeployedApplicationsByUser(“MYUSER”,”MYGUID …
        + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        + CategoryInfo : InvalidOperation: (:) [], RuntimeException
        + FullyQualifiedErrorId : MethodNotFound

        If i try calling the GetCMDeviceResourceIDByMACAddress i get a blank line but with no error.

  • Hey Nickolaj, turns out the only variable being ignored (and not updated) in the unattend.xml was the %OSDUILanguage%. Other locales were set according to the config.xml file. After digging a little but I found a post from Nial about offline servicing the LP and the fix was to modify (or debug I you like) the unattend.xml file generated by SIM.

    I’m not at the office right now to test it but I will update as soon as I can verify,

    Thank you !

  • Been strugling today to make it work, main issue is that i’m setting variables for my deployment via the config.xml file but it is completely ignored during deployment. I’m using the MDT intégration, what am i missing ?

    • Hi Mathieu,

      What do you mean that it’s completely ignored? I normally just use the ConfigMgr native TS variable names for locale configuration and then reference those variables in my unattend.xml.

      Regards,
      Nickolaj

      • Hi Nickolaj,

        For example i’ve setup the config.xml with multiple locales, have selected one on the frontend but TS just simply ignore the updated variable and it keep deploying the base language wich is en-us instead of setting ui to french for example.

  • All sections of the OSD frontend appear to be working apart from the Deploy section. I’m getting “ERROR: Unable to detect any task sequences”. I have deployed task sequences as available to ‘All Unknown Computers” as well as to a collection with my device in it. I have also made it available to ‘Only media and PXE (hidden)’. When I query the web service with PowerShell for ‘GetCMHiddenTaskSequenceDeployments’ I can see my task sequences.
    No log file is getting created in %SystemRoot%\Temp with this version where It has created one in this location for an older version when running in debug mode. in Any ideas?

    • Mark, I had this same issue. I found that my deployment was not set to “hidden” for Only Media or PXE.

      Once I did this it was able to be found in the FrontEnd. Also to note once you get into the FrontEnd, you can make these changes and go back and forth using the previous and next buttons without starting over the PXE.

      Hope this helps.

      • Thanks for the suggestion Scott but the task sequence is definitely deployed as “Only media and PXE (hidden)”
        I’ll have anther try on another test environment when I get the time.
        I’m trying this on SCCM 1610 and ADK 1607 by the way.

      • Thanks Nickolaj, I had forgotten to upgrade the ConfigMgr WebService to 1.3.0.
        But now I’m getting another issue after I’ve removed version 1.2.0 manually and run the 1.30 .exe. When I run OSDFrontEnd.exe in debug mode it crashes. Using PowerShell to call the WebService I get the below error.
        Exception calling “GetCMHiddenTaskSequenceDeployments” with “1” argument(s): “Server was unable to process request. —> The source was not found, but some or all event logs could not be searched. Inaccessible logs:
        Security.”

      • Allowing my service account to modify HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Eventlog fixed the errors.
        But now I’m back to where I started, I can call the WebService with PowerShell but when running the OSDFrontEnd.exe I’m getting
        ERROR: Unable to detect any task sequences

      • Hi Mark,

        Could you verify for me that the following two TS variables have values:

        _SMSTSx64UnknownMachineGUID
        _SMSTSx86UnknownMachineGUID

        They will get populated if the DP is enabled for PXE with Unknown Computer support.

        Regards,
        Nickolaj

      • Tried it this morning and it’s working fine on physical PC’s during PXE and the OSDFrontEnd can find the hidden task sequences. It still can’t find any task sequences when running in a Hyper-V VM or in debug mode on my PC. Those TS variables do have values in as well on my VM.

      • That’s a scenario I’ve not seen/heard until now. Have you verified that the resource IDs specified in the OSDFrontEnd.exe.config are actually the ones for the Unknown Computer computer entries?

        Regards,
        Nickolaj

      • Yes, I’ve confirmed that those settings in the OSDFrontEnd.exe.config are exactly the same as the resource id’s in my SCCM environment. I’ll set-up a lab and see if I have the same issue or not.

      • I’ve setup another lab which was running ConfigMgr 1702 and I had this working fine. I’ve tried to setup the WebService and OSD FrontEnd on another server in my 1610 environment but with the same issues that no task sequences would be displayed. Has anyone confirms if this works on 1610 ?
        Also I would like to suggest two features to do with the application section. I would like to configure mandatory applications based on if the hardware is a laptop. Also if we could make available applications selected by default but where they can be unselected if not needed.

  • I am getting an error: “Unable to load configuration file for regional settings.” after the frontend loads. It seems to be pulling my computer name from CfgMgr, but I have no buttons or tabs available. I can find the config.xml file in the x:\sms\pkg\SMS10000 directory. Any thoughts?

    Thank you

    • It looks like I modified the config file to point to the web service without realizing it. I put the config.xml file in the Application directory and all seems well.

  • Great tool! Does the install Apps sequence get skipped if a single app fails, ignoring the checkbox in the task sequence step telling it to continue installing other apps? I was trying to include .net and framework as mandatory applications, but no apps would install when I did so. So I moved them to available with the rest removing all mandatory apps and still no apps would install. If I deselected these, I can get other apps to install. Maybe I have something wrong with one of those two applications, but if that is the case it prevented all other apps from installing. Just wanted to know if I’m crazy.

    • Ignore my comment. One of the applications I was trying to set was not set to allow the application to be installed from the Install Application task sequence action without being deployed. That did however cause it to just skip all of the applications. No big deal if you have things set right to begin with. 🙂

  • love the front end, we are using it successfully. Would it be possible to add the assigned Resource ID for the device in the information area?

  • Nickolaj,

    Good day. I too have experienced the 0xe4XXXXXX and 0x000XXXXXX error codes when clicking on the Deploy tab. I am running ConfigMgr Webservice 1.3.0. I have the config file setup and customized for our environment, and all things pointing to where I believe it needs be. What could potentially be the issue(s)?

    • Hi Drew, have you used the installer for the web service? I fixed a bug a couple of days ago where the secret key shown in the wizard was not the one actually set in the application settings on the Virtual Application.

      Regards,
      Nickolaj

      • Yessir, I did use the installer. How would I go about validating and ultimately correct the issue?

      • Compare the one you’ve configured in OSDFrontEnd.exe.config and what’s defined under SecretKey in the Application Settings of the ConfigMgrWebService virtual application in IIS.

        Regards,
        Nickolaj

      • Fantastic I will do this tonight. However, should they appear different should I use one versus another, or generate a new key for both?

      • You can enter any type of string you want, but what’s specified in OSDFrontEnd.exe.config must match what’s specified in IIS.

        Regards,
        Nickolaj

      • Thank you very much. I’ll post my results tomorrow.

      • Oh blast it all to hell… I came in this morning, and made an attempt to start testing, but the OSDFrontend.exe keeps crashing every time I open it in debug mode. I have NO idea what is happening… I made the change that you suggested in both the config file as well as within IIS, as well as verifiying the my Service Account has read-only analyst permissions within SCCM, and its just failing… I am attaching my config settings below:

        e8b24b84-9951-43f9-b192-6379b8136478

        Clark Hill OSD

        Regional

        True

        True

        False

        False

        True

        True

        True

        False

        False

        False

        True

        New Surface Pro 8.1 OSD – All Offices-CH100266

        https://MPSERVER.FQDN.NAME/ConfigMgrWebService/config.xml

        APPLICATION

        P0100001

        True

        True

        True

        True

        https://MPSERVER.FQDN.NAME/ConfigMgrWebService/HWModels.txt

        admin

        Crimson

        BaseLight

        Welcome

        Welcome to the Clark Hill OSD Frontend

        2046820353

        2046820352

  • Hi Nickolaj,

    We have setup the Frontend and we have received the The exception unknown software (error code 0xe4XXXXXX) occurred in the application at location 0x000XXXXXX, But we are unsure of where we are going wrong. Here is the OSDFrontEnd.exe.config file. Perhaps you can see something we are not.

    Thank you,

    Doug Bookey

Sponsors