Prompt for Keyboard-Layout during OOBE

In an international Environment, it can be a requirement that users can choose the Keyboard-Layout by themselves during OOBE, but there is no UI Option in the Autopilot Profile for this option...

Autopilot Profile

We want Users to select the "Language (Region)" by themselves, so we set the value to "User select"

The User will be prompted to choose the region...

... but the Keyboard-Layout does not change automatically, or it's not configured as you want (I do not want to have a French keyboard if I choose Switzerland, on a German OS).

When we get the Autopilot Profile by using the Graph API (outOfBoxExperienceSettings resource type - Microsoft Graph), we get the following value:

    "outOfBoxExperienceSettings": {
        "hidePrivacySettings": true,
        "hideEULA": true,
        "userType": "administrator",
        "deviceUsageType": "singleUser",
        "skipKeyboardSelectionPage": true,
        "hideEscapeLink": true
    }

The reason why we do net get a Keyboard-Layout prompt is because the Flag "skipKeyboardSelectionPage" is set to "true".

Set skipKeyboardSelectionPage

We can use Graph API to configure this value, but there is also an option over the UI...

  1. Edit the Autopilot Profile and set "Language (Region)" to "Operating system default"
  2. Set "Automatically configure keyboard" to "No"

3. Save the Profile...

4. Edit the Autopilot Profile again and set "Language (Region)" to "User select" and save the Profile again...

If you now get the OOBE Settings over Graph API

    "outOfBoxExperienceSettings": {
        "hidePrivacySettings": true,
        "hideEULA": true,
        "userType": "administrator",
        "deviceUsageType": "singleUser",
        "skipKeyboardSelectionPage": false,
        "hideEscapeLink": true
    }

"skipKeyboardSelectionPage" is set to "false" and you will get a Keyboard-Layout prompt during OOBE (after the Region prompt):

...and the User can choose the right Keyboard-Layout...