MultiSIM CSP

The table below shows the applicability of Windows:

Edition Windows 10 Windows 11
Home Yes Yes
Pro Yes Yes
Windows SE No Yes
Business Yes Yes
Enterprise Yes Yes
Education Yes Yes

The MultiSIM configuration service provider (CSP) is used by the enterprise to manage devices with dual SIM single active configuration. An enterprise can set policies on whether that user can switch between SIM slots, specify which slot is the default, and whether the slot is embedded. This CSP was added in Windows 10, version 1803.

The following shows the MultiSIM configuration service provider in tree format.

./Device/Vendor/MSFT
MultiSIM
----ModemID
--------Identifier
--------IsEmbedded
--------Slots
------------SlotID
----------------Identifier
----------------IsEmbedded
----------------IsSelected
----------------State
--------Policies
------------SlotSelectionEnabled

./Device/Vendor/MSFT/MultiSIM Root node.

ModemID Node representing a Mobile Broadband Modem. The node name is the modem ID. Modem ID is a GUID without curly braces, with exception of "Embedded" which represents the embedded modem.

ModemID/Identifier Modem ID.

Supported operation is Get. Value type is string.

ModemID/IsEmbedded Indicates whether this modem is embedded or external.

Supported operation is Get. Value type is bool.

ModemID/Slots Represents all SIM slots in the Modem.

ModemID/Slots/SlotID Node representing a SIM Slot. The node name is the Slot ID. SIM Slot ID format is "0", "1", etc., with exception of "Embedded" which represents the embedded Slot.

ModemID/Slots/SlotID/Identifier Slot ID.

Supported operation is Get. Value type is integer.

ModemID/Slots/SlotID/IsEmbedded Indicates whether this Slot is embedded or a physical SIM slot.

Supported operation is Get. Value type is bool.

ModemID/Slots/SlotID/IsSelected Indicates whether this Slot is selected or not.

Supported operation is Get and Replace. Value type is bool.

ModemID/Slots/SlotID/State Slot state (Unknown = 0, OffEmpty = 1, Off = 2, Empty = 3, NotReady = 4, Active = 5, Error = 6, ActiveEsim = 7, ActiveEsimNoProfile = 8)

Supported operation is Get. Value type is integer.

ModemID/Policies Policies associated with the Modem.

ModemID/Policies/SlotSelectionEnabled Determines whether the user is allowed to change slots in the Cellular settings UI. Default is true.

Supported operation is Get and Replace. Value type is bool.

Examples

Get modem

<SyncML xmlns="SYNCML:SYNCML1.2">
  <SyncBody>
    <Get>
      <CmdID>1</CmdID>
      <Item>
        <Target>
          <LocURI>
            ./Vendor/MSFT/MultiSIM
          </LocURI>
        </Target>
      </Item>
    </Get>
    <Final/>
  </SyncBody>
</SyncML>

Get slots

<SyncML xmlns="SYNCML:SYNCML1.2">
  <SyncBody>
    <Get>
      <CmdID>1</CmdID>
      <Item>
        <Target>
          <LocURI>
            ./Vendor/MSFT/MultiSIM/Embedded/Slots
          </LocURI>
        </Target>
      </Item>
    </Get>
    <Final/>
  </SyncBody>
</SyncML>

Get slot state

<SyncML xmlns="SYNCML:SYNCML1.2">
  <SyncBody>
    <Get>
      <CmdID>1</CmdID>
      <Item>
        <Target>
          <LocURI>
            ./Vendor/MSFT/MultiSIM/Embedded/Slots/Embedded/State
          </LocURI>
        </Target>
      </Item>
    </Get>
    <Final/>
  </SyncBody>
</SyncML>

Select slot

<SyncML xmlns="SYNCML:SYNCML1.2">
  <SyncBody>
    <Replace>
      <CmdID>1</CmdID>
      <Item>
        <Target>
          <LocURI>
            ./Vendor/MSFT/MultiSIM/Embedded/Slots/0/IsSelected
          </LocURI>
        </Target>
        <Meta>
          <Format xmlns="syncml:metinf">bool</Format>
          <Type>text/plain</Type>
        </Meta>
        <Data>true</Data>
      </Item>
    </Replace>
    <Final/>
  </SyncBody>
</SyncML>