On-device shared deploying SIM / eSIM controller for wireless devices

By sharing and deploying the SIM/eSIM controller on the device and dynamically configuring the IMSI value based on multiple selection criteria, the network conflict problem caused by the unique SIM/eSIM is solved, and flexible connection and basic services of wireless devices between different cellular networks are realized.

CN120642366APending Publication Date: 2025-09-12APPLE INC
View PDF 0 Cites 1 Cited by

Patent Information

Application Number
CN202380093452.6
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2023-02-09
Filing Date
2023-12-19
Publication Date
2025-09-12

AI Technical Summary

Technical Problem

In the prior art, uniquely assigned provisioning SIMs/eSIMs in wireless devices result in multiple devices attempting to use the same SIM/eSIM for network connection, interfering with cellular wireless network access and lacking effective management and configuration mechanisms.

Method used

The shared provisioning SIM/eSIM controller on the device is used to randomly select the initial IMSI value based on multiple selection criteria, and the shared provisioning SIM/eSIM is dynamically configured to allow the wireless device to connect to different cellular wireless networks, including factors such as geographic location, user preferences and OEM/MNO agreements, and monitor and switch IMSI values ​​to resolve conflicts.

Benefits of technology

It enables flexible connection of wireless devices between different cellular networks, avoids IMSI conflicts, ensures successful registration, and provides basic services such as device activation and user eSIM provisioning.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120642366A_ABST
    Figure CN120642366A_ABST
Patent Text Reader

Abstract

Techniques are described for dynamically managing a shared deployed electronic subscriber identity module (eSIM) for a wireless device. A shared (non-unique) provisioning eSIM is installed in the wireless device to provide limited function connections to services, such as for device activation and user eSIM provisioning. The shared provisioning eSIM includes a record of IMSI values organized into a plurality of sets of IMSI pools and a priority for selecting IMSI values for configuring the shared provisioning eSIM. A shared provisioning SIM / eSIM controller on a device residing on a cellular baseband processor of the wireless device selects an IMSI value based on the priority and based on a result of scanning for an available public land mobile network (PLMN) and configures the shared provisioning eSIM with the IMSI value. The shared provisioning eSIM may be reconfigured with different IMSI values selected from different IMSI pools until a successful registration with the configured provisioning eSIM occurs or a maximum number of retries occurs.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The described embodiments describe techniques for dynamically managing a provisioning SIM or provisioning eSIM using an on-device shared provisioning Subscriber Identity Module (SIM) / electronic SIM (eSIM) controller in a wireless device. A shared (non-unique) provisioning SIM / eSIM is installed in a wireless device to provide limited functionality connectivity options for basic services such as device activation and user eSIM provisioning. An on-device shared provisioning SIM / eSIM controller on the wireless device manages the configuration of the shared provisioning SIM / eSIM. Background Art

[0002] Many mobile wireless devices are configured to use a removable Universal Integrated Circuit Card (UICC), which enables the mobile wireless device to access services provided by a mobile network operator (MNO), also known as a carrier. Specifically, each UICC includes at least a microprocessor and read-only memory (ROM), where the ROM is configured to store an MNO profile that the wireless device can use to register with and interact with the MNO to obtain wireless service via a cellular wireless network. The profile is also referred to as a Subscriber Identity Module (SIM). Typically, a UICC takes the form of a small, removable card (often referred to as a SIM card) that is inserted into a UICC receiving area of ​​the mobile wireless device. In recent implementations, the UICC is embedded directly into the system board of the wireless device as an embedded UICC (eUICC), which can offer advantages over traditional removable UICCs. The eUICC may include rewritable memory that facilitates the installation, modification, and / or deletion of one or more electronic SIMs (eSIMs) on the eUICC, where the eSIMs can provide access to new and / or different services and / or updates for extended features offered by the MNO. An eUICC can store several MNO profiles (also referred to herein as eSIMs) and can eliminate the need to include a UICC receiving area in a wireless device.

[0003] A wireless device may include a provisioning SIM / eSIM (also known as a bootstrap SIM / eSIM) installed into the wireless device at the time of manufacture or dynamically installed into the wireless device after manufacture. The provisioning SIM / eSIM provides limited-function connectivity options to allow the wireless device to connect to a cellular wireless network for basic services, such as for device activation, user eSIM installation, and the like. Currently, a provisioning eSIM can be uniquely generated and individually assigned to a wireless device; however, because alternative non-cellular wireless connections are often available, the uniquely assigned provisioning eSIM included in many wireless devices is often unused. Dynamically assigning a provisioning eSIM to a wireless device by reusing identity values ​​in the provisioning eSIM may result in multiple wireless devices attempting to connect to a network using the same provisioning eSIM, which may be unacceptable and interfere with the wireless device's ability to access the cellular wireless network. A need exists for a mechanism to manage and dynamically configure shared (non-unique) provisioning SIMs / eSIMs and to detect and resolve attendant issues. Summary of the Invention

[0004] This application describes techniques for dynamically managing a provisioning SIM or provisioning eSIM using an on-device shared provisioning Subscriber Identity Module (SIM) / electronic SIM (eSIM) controller in a wireless device. A shared (non-unique) provisioning SIM / eSIM is installed in a wireless device to provide limited functionality connectivity options for basic services such as device activation and user eSIM provisioning. An on-device shared provisioning SIM / eSIM controller on the wireless device manages the configuration of the shared provisioning SIM / eSIM. The provisioning SIM / eSIM is not unique to the wireless device, and identical provisioning SIMs / eSIMs can be installed in different wireless devices. Each provisioning SIM / eSIM is configurable after installation in the wireless device and can be adapted to work with various local cellular wireless networks managed by different mobile network operators (MNOs) (also referred to herein as operators).

[0005] A wireless device includes a shared provisioning SIM / eSIM (also known as a shared bootstrap SIM / eSIM) that is installed into the wireless device at the time of manufacture or dynamically provisioned to the wireless device after manufacture. The shared provisioning SIM / eSIM is not uniquely assigned to the wireless device as in previous implementations and can be configured to provide limited-function connectivity options to allow the wireless device to connect to a cellular wireless network for basic services, such as connecting to an original equipment manufacturer (OEM) server for device activation, connecting to a mobile network operator (MNO) server to provision, download, and install a full-function user eSIM, and so on. Instead of storing a set of statically assigned unique provisioning SIM / eSIM profiles, the wireless device is provisioned with a shared (non-unique) provisioning SIM / eSIM that can be reconfigured one or more times to allow connectivity with different cellular wireless networks. The shared provisioning SIM / eSIM is initially configured with a null identifier, such as a specific International Mobile Subscriber Identifier (IMSI) value that cannot be used for cellular network access. An on-device shared provisioning SIM / eSIM controller included in a cellular baseband processor of a wireless device randomly selects an initial (non-null) IMSI value for a shared provisioning SIM / eSIM based on one or more selection criteria. Example selection criteria include: a geographic location in which the wireless device is operating; an MNO selection or preference indication from a user of the wireless device; a contractual service agreement between the OEM and one or more MNOs for limited-function cellular wireless network access for device configuration and / or eSIM provisioning; and / or information specific to the wireless device (e.g., hardware / software / firmware characteristics). The initial IMSI value is selected by the on-device shared provisioning SIM / eSIM controller from a set of one or more IMSI pools included in a shared provisioning SIM / eSIM profile, where the initial IMSI selection is prioritized based on the one or more selection criteria. Each IMSI pool includes a range of IMSI values ​​between a starting value and an ending value covered by the particular IMSI pool. The on-device shared provisioning SIM / eSIM controller selects an IMSI pool based on the selection criteria and then randomly selects an IMSI value from the selected IMSI pool. The shared provisioning SIM / eSIM controller on the device transmits an application protocol data unit (APDU) command, such as a "set IMSI" command, to a universal integrated circuit card (UICC) or embedded UICC (eUICC) on which the shared provisioning SIM / eSIM profile is stored, to configure the shared provisioning SIM / eSIM with the selected initial IMSI value. The initial IMSI value includes a mobile country code (MCC) value, a mobile network code (MNC) value, and a mobile subscription identification number (MSIN) value. Configuring the shared provisioning SIM / eSIM with the initial IMSI value also includes selecting profile parameters for the shared provisioning SIM / eSIM based on the selected initial IMSI value.The shared SIM / eSIM provisioning profile on the eUICC may be configured with additional parameters after the shared provisioning SIM / eSIM profile is configured with the initial IMSI value by the shared provisioning SIM / eSIM controller on the device, based on the selected initial IMSI value. Alternatively, in some cases, one or more shared provisioning SIM / eSIM profile parameters may also be configured by the shared provisioning SIM / eSIM controller on the device. The cellular baseband processor then performs a network search and attempts to locate and register with a public land mobile network (PLMN) suitable for the configured shared provisioning SIM / eSIM. The cellular baseband processor may prioritize connecting to a home PLMN (HPLMN) or equivalent HPLMN (EHPLMN) and / or to an operator-preferred PLMN (OPLMN). The shared provisioning SIM / eSIM controller on the device monitors registration attempts to the PLMN and determines whether one or more error conditions have occurred, such as an indication of an IMSI conflict between an IMSI value used by the wireless device and another wireless device, or an indication of an invalid or expired cellular subscription. In response to one or more network attachment failures, the on-device shared provisioning SIM / eSIM controller switches to using a different IMSI value, which may be selected from an IMSI pool within the currently used IMSI pool group or from an IMSI pool within a different IMSI pool group. When selecting a new IMSI value, a new IMSI pool, and / or a new IMSI pool group, the on-device shared provisioning SIM / eSIM controller may consider the priority of the IMSI pool and other characteristics of the IMSI pool group, as well as the PLMNs detected by the wireless device's cellular baseband processor during a network scan process. The on-device shared provisioning SIM / eSIM controller reconfigures the shared provisioning SIM / eSIM with the newly selected IMSI value, which may also result in reconfiguring additional profile parameters of the shared provisioning SIM / eSIM based on the newly selected IMSI value. The cellular baseband processor continues searching for PLMNs and attempting to register on applicable PLMNs based on the reconfigured profile parameters of the shared provisioning SIM / eSIM until a successful attachment occurs or a maximum number of retries has been attempted. The cellular baseband processor may retry attaching to one or more PLMNs after waiting a configurable (fixed or variable) backoff delay period.

[0006] Other aspects and advantages of the present invention will become apparent from the following detailed description taken in conjunction with the accompanying drawings, which illustrate by way of example the principles of the described embodiments.

[0007] This summary is provided for the purpose of summarizing some example embodiments only, in order to provide a basic understanding of some aspects of the subject matter described herein. Therefore, it should be understood that the above-mentioned features are merely examples and should not be construed as narrowing the scope or essence of the subject matter described herein in any way. Other features, aspects, and advantages of the subject matter described herein will become apparent from the following detailed description, drawings, and claims. BRIEF DESCRIPTION OF THE DRAWINGS

[0008] The present disclosure will be more readily understood through the following detailed description taken in conjunction with the accompanying drawings, in which like reference numerals designate like structural elements.

[0009] Figure 1 Illustrated is a block diagram of different components of an example system configured to implement the various techniques described herein, according to some embodiments.

[0010] Figure 2 Illustrated according to some embodiments Figure 1 A block diagram of a more detailed view of exemplary components of a system.

[0011] Figure 3 An exemplary device activation and provisioning network for mobile wireless devices according to some embodiments is illustrated.

[0012] Figure 4 Illustrated is a block diagram of an exemplary shared provisioning SIM / eSIM IMSI selection system in accordance with some embodiments.

[0013] Figure 5 Illustrated is a table of an exemplary Elementary File (EF) for storing IMSI values ​​according to some embodiments.

[0014] Figure 6A and Figure 6B Illustrated is a table of exemplary EFs for storing IMSI pool values ​​according to some embodiments.

[0015] Figure 7A and Figure 7B Illustrated is a table of exemplary EFs storing Equivalent Home PLMN (EHPLMN) values ​​for an IMSI pool group according to some embodiments.

[0016] Figure 8A and Figure 8B Illustrated is a table of exemplary EFs for storing Operator Preferred PLMN (OPLMN) values ​​and Access Technology (ACT) identifier values ​​for an IMSI pool group according to some embodiments.

[0017] Figure 9A table illustrating example application protocol data unit (APDU) commands for setting the IMSI value of a shared provisioning SIM / eSIM according to some embodiments.

[0018] Figure 10 A diagram illustrating an example of an association between a mobile network operator (MNO), an IMSI pool group, an EHPLMN list, and an OPLMN list according to some embodiments.

[0019] Figure 11A A diagram illustrating an example of automatic selection of an IMSI value for a shared provisioning SIM / eSIM according to some embodiments.

[0020] Figure 11B A diagram illustrating an example of initial IMSI selection for a shared provisioning SIM / eSIM according to some embodiments.

[0021] Figure 11C A diagram illustrating an example of IMSI evaluation and switching for a shared provisioning SIM / eSIM according to some embodiments.

[0022] Figure 12A A flow chart illustrating an example method of selecting an IMSI value for a shared provisioning eSIM to connect to a PLMN, according to some embodiments.

[0023] Figure 12B A flow chart illustrating an example method of reconfiguring a shared provisioning eSIM to connect to a different PLMN in accordance with some embodiments.

[0024] Figure 13 A block diagram illustrating exemplary elements of a wireless device according to some embodiments is illustrated. DETAILED DESCRIPTION

[0025] This section describes representative applications of the methods and apparatus according to the present application. These examples are provided solely to add context and aid in understanding the described embodiments. Therefore, it will be apparent to one skilled in the art that the described embodiments may be practiced without some or all of these specific details. In other cases, well-known processing steps have not been described in detail to avoid unnecessarily obscuring the described embodiments. Other applications are possible, such that the following examples should not be considered limiting.

[0026] In the following detailed description, reference is made to the accompanying drawings which form a part of the specification and in which are shown by way of illustration specific embodiments in accordance with the described embodiments. Although these embodiments are described in sufficient detail to enable those skilled in the art to practice the described embodiments, it is to be understood that these examples are not limiting; other embodiments may be used and modifications may be made without departing from the spirit and scope of the described embodiments.

[0027] This application describes techniques for dynamically managing a provisioning SIM or provisioning eSIM using an on-device shared provisioning Subscriber Identity Module (SIM) / electronic SIM (eSIM) controller in a wireless device. A shared (non-unique) provisioning SIM / eSIM is installed in a wireless device to provide limited functionality connectivity options for basic services such as device activation and user eSIM provisioning. An on-device shared provisioning SIM / eSIM controller on the wireless device manages the dynamic configuration of the shared provisioning SIM / eSIM, rather than using a static provisioning SIM / eSIM that is uniquely assigned to the wireless device. The provisioning SIM / eSIM is not unique to the wireless device, and identical provisioning SIMs / eSIMs can be installed in different wireless devices. Each provisioning SIM / eSIM is configurable after installation in the wireless device and can be adapted to work with various local cellular wireless networks managed by different mobile network operators (MNOs) (also referred to herein as operators).

[0028] A wireless device includes a shared provisioning SIM / eSIM (also known as a shared bootstrap SIM / eSIM) that is installed into the wireless device at the time of manufacture or dynamically provisioned to the wireless device after manufacture. The shared provisioning SIM / eSIM is not uniquely assigned to the wireless device as in previous implementations and can be configured to provide limited-function connectivity options to allow the wireless device to connect to a cellular wireless network for basic services, such as connecting to an original equipment manufacturer (OEM) server for device activation, connecting to a mobile network operator (MNO) server to provision, download, and install a full-function user eSIM, and so on. Instead of storing a set of statically assigned unique provisioning SIM / eSIM profiles, the wireless device is provisioned with a shared (non-unique) provisioning SIM / eSIM that can be reconfigured one or more times to allow connectivity with different cellular wireless networks. The shared provisioning SIM / eSIM is initially configured with a null-value identifier, such as a specific International Mobile Subscriber Identifier (IMSI) value that cannot be used for cellular network access. An on-device shared provisioning SIM / eSIM controller included in a cellular baseband processor of the wireless device randomly selects an initial (non-null) IMSI value for the shared provisioning SIM / eSIM from an IMSI pool of IMSI values, where the IMSI pool is chosen by the on-device shared provisioning SIM / eSIM controller based on one or more selection criteria. Exemplary selection criteria for selecting the initial IMSI pool from which the IMSI value is selected include: a geographic location of the wireless device in which the wireless device is operating, which may be based on scanning of cellular wireless network broadcast signals from which geographic location information can be determined; an indication of a user of the wireless device's selection or preference of a mobile network operator (MNO); a contractual service agreement between the OEM and one or more MNOs for limited-function cellular wireless network access; and / or wireless device-specific information (e.g., hardware / software / firmware characteristics). Exemplary characteristics of the wireless device that may be used for the initial IMSI selection may include a hardware identifier of the wireless device, such as a model number, a product stock keeping unit (SKU) value, or a geographic region code assigned to the wireless device. The initial IMSI value is selected from a set of one or more IMSI pools included in the shared provisioning SIM / eSIM, where the selection is prioritized based on the one or more selection criteria. Each IMSI pool comprises a range of IMSI values ​​between a start value and an end value covered by the particular IMSI pool.

[0029] The shared provisioning SIM / eSIM controller on the device transmits an application protocol data unit (APDU) command, such as a "Set IMSI" command, to a universal integrated circuit card (UICC) or embedded UICC (eUICC) on which the shared provisioning SIM / eSIM is stored, to configure the shared provisioning SIM / eSIM with a selected initial IMSI value. The initial IMSI value includes a mobile country code (MCC) value, a mobile network code (MNC) value, and a mobile subscription identification number (MSIN) value. Configuring the shared provisioning SIM / eSIM with the initial IMSI value also includes selecting profile parameters for the shared provisioning SIM / eSIM based on the selected initial IMSI value. The shared SIM / eSIM provisioning profile on the eUICC may be automatically configured with additional profile parameters after the shared provisioning SIM / eSIM profile is configured with the initial IMSI value by the shared provisioning SIM / eSIM controller on the device based on the selected initial IMSI value. Alternatively, in some cases, one or more shared provisioning SIM / eSIM profile parameters may also be configured by the shared provisioning SIM / eSIM controller on the device. The cellular baseband processor then performs a search for the cellular wireless network and attempts to locate and register with a public land mobile network (PLMN) suitable for the configured shared provisioning SIM / eSIM. The shared provisioning SIM / eSIM controller of the cellular baseband processor may prioritize connection to a home PLMN (HPLMN), an equivalent HPLMN (EHPLMN), and / or an operator preferred PLMN (OPLMN) over other PLMNs. Each selectable IMSI value may be included in an IMSI pool of IMSI values, where the IMSI pool is associated with an IMSI pool group identifier (ID) value. Multiple IMSI pools may share the same IMSI pool group ID and form an IMSI pool group. Each IMSI pool group may be associated with a prioritized list of EHPLMNs and a prioritized list of OPLMNs (which may also include associated radio access technologies (RATs) used by the OPLMNs). Selection of an IMSI value in the IMSI pool group may determine an associated list of EHPLMNs and OPLMNs, with connection to either the EHPLMN or the OPLMN being preferred. The selection of an IMSI pool set and / or IMSI value may also depend on a cellular wireless network previously located based on a network scan performed by a cellular baseband processor of the wireless device.

[0030] The on-device shared provisioning SIM / eSIM controller monitors registration attempts to the PLMN and determines whether one or more error conditions have occurred, such as an IMSI conflict indicating that the IMSI value used to configure the shared provisioning SIM / eSIM may be in use by another wireless device, or an indication of an invalid or expired cellular subscription. In response to one or more network attachment failures, the on-device shared provisioning SIM / eSIM controller switches to another IMSI value. The new IMSI value may be selected from an IMSI pool group from which the currently used IMSI value was previously selected, or from a different IMSI pool group. When selecting a new IMSI value from the current IMSI pool group, or when switching IMSI pool groups before selecting a new IMSI value, the on-device shared provisioning SIM / eSIM controller considers the priority and other characteristics of the IMSI pool group, as well as the PLMN detected by the wireless device's cellular baseband processor. The on-device shared provisioning SIM / eSIM controller reconfigures the shared provisioning SIM / eSIM with the newly selected IMSI value, which may result in reconfiguring the profile parameters of the shared provisioning SIM / eSIM according to the new IMSI value, and the cellular baseband processor continues searching for PLMNs and attempting to register on the applicable PLMN based on the reconfigured profile parameters of the shared provisioning SIM / eSIM until a successful attach occurs or a maximum number of retries has been attempted. The cellular baseband processor may retry attaching to one or more PLMNs after waiting for a configurable (fixed or variable) backoff delay period.

[0031] The shared provisioning SIM / eSIM includes records of IMSI pool groups associated with the same or different MNOs, where each IMSI pool group is assigned a priority level and an IMSI pool group identifier (ID) value and includes one or more IMSI pools of IMSI values. Each IMSI pool group ID value corresponds to a prioritized list of EHPLMNs and a prioritized list of OPLMNs with an associated radio access technology (RAT) (also referred to herein as access technology (ACT)). Each list of EHPLMNs or OPLMNs with an ACT is arranged in a prioritized order (e.g., from highest priority to lowest priority). The shared provisioning SIM / eSIM controller on the device can use the priority levels of the PLMNs and the priority levels of the IMSI pools to determine the IMSI pool group from which IMSI values ​​will be selected and the manner in which IMSI values ​​will be selected from the IMSI pool group. An MNO may be associated with multiple IMSI pools belonging to the same IMSI pool group (i.e., having the same IMSI pool group ID value). Thus, each IMSI pool in the same IMSI pool group is associated with a common prioritized list of the EHPLMN and a common prioritized list of a separate OPLMN. The MNO may also be associated with IMSI pools belonging to different IMSI pool groups, wherein each IMSI pool group is associated with a distinct EHPLMN's prioritized list and a separate OPLMN's prioritized list.

[0032] These and other embodiments are referenced below. Figures 1 to 13 however, those skilled in the art will readily appreciate that the detailed description given herein with respect to these figures is for illustrative purposes only and should not be construed as limiting.

[0033] Figure 1 1 illustrates a block diagram of various components of a system 100 configured to implement the various techniques described herein, according to some embodiments. More specifically, Figure 1 A high-level overview of a system 100 is illustrated, which includes a wireless device 102 (which may also be referred to as a mobile device, cellular device, user equipment (UE), etc.), a set of base stations 112-1 through 112-N managed by different mobile network operators (MNOs) 114, and a set of deployment servers 116 in communication with the MNOs 114. Additional MNO infrastructure servers, such as those used for account management and billing, are not shown. The wireless device 102 may represent a mobile computing device (e.g., of or ), base stations 112-1 to 112-n may represent cellular wireless network entities, including evolved NodeBs (eNodeBs or eNBs) for fourth generation (4G) long term evolution (LTE) cellular wireless networks and / or next generation NodeBs (gNodeBs or gNBs) for fifth generation (5G) new radio (NR) cellular wireless networks, wherein cellular wireless base stations 112-1 to 112-n are configured to communicate with wireless device 102, and MNO 114 may represent different wireless service providers that provide specific cellular wireless services (e.g., voice and data) to which wireless device 102 may subscribe, such as via a subscription account of a user of wireless device 102.

[0034] like Figure 1 As shown, wireless device 102 may include processing circuitry (which may include one or more processors 104 and memory 106), an embedded universal integrated circuit card (eUICC) 108, and wireless circuitry 110 for transmitting and receiving cellular radio frequency signals. Wireless circuitry 110 may include analog hardware components, such as antennas and amplifiers, as well as digital processing components, such as signal processors (and / or general / limited-purpose processors) and associated memory. In some embodiments, in addition to or in lieu of eUICC 108, wireless device 102 includes one or more physical UICCs 118 (also known as Subscriber Identity Module (SIM) cards). The components of wireless device 102 work together to enable wireless device 102 to provide useful features to users of wireless device 102, such as cellular wireless network access, non-cellular wireless network access, localized computing, location-based services, and internet connectivity. eUICC 108 may be configured to store multiple electronic SIMs (eSIMs) for accessing cellular wireless services provided by different MNOs 114 via connections to their respective cellular wireless networks via base stations 112-1 through 112-N. For example, the eUICC 108 may be configured to store and manage one or more eSIMs of one or more MNOs 114 for different subscriptions associated with the wireless device 102. To enable access to services provided by the MNO, the eSIMs may be reserved for download and installation into the eUICC 108. In some embodiments, the eUICC 108 obtains the one or more eSIMs from one or more associated provisioning servers 116 as part of device initialization of the wireless device 102 (such as when a new wireless device 102 is purchased). The provisioning servers 116 may be maintained by the manufacturer of the wireless device 102, the MNO 114, a third-party entity, or the like. eSIM data communications between the MNO provisioning server 116 and the eUICC 108 (or between the MNO provisioning server 116 and processing circuitry (e.g., processor 104) of the wireless device 102 external to the eUICC 108) may use a secure communication channel.

[0035] When initially acquired by a user, the wireless device 102 may lack an activated, full-function cellular wireless eSIM on the eUICC 108, and in some cases, the wireless device may also not include a UICC 118 with an activated physical SIM (pSIM) installed in the wireless device 102. The user of the wireless device 102 may need to download a full-function eSIM from the MNO provisioning server 116 to access the cellular wireless services of the particular MNO with which the user has established a cellular wireless subscription. After a power-up process, the wireless device 102 may enable a limited-function shared provisioning SIM (on the UICC 118) or a shared provisioning eSIM (on the eUICC 108) and configure the shared provisioning SIM / eSIM to allow the wireless device 102 to connect to a cellular wireless network to perform a limited set of functions, e.g., initialize and configure the wireless device 102 for the user using original equipment manufacturer (OEM) procedures, and / or communicate with one or more MNO provisioning servers 116 to obtain a full-function eSIM through which to access cellular wireless services provided by the associated MNO 114.

[0036] Figure 2 Illustrated according to some embodiments Figure 1 A block diagram of a more detailed view 200 of certain components of the wireless device 102 is provided. Figure 2 As shown, the processor 104 in conjunction with the memory 106 may implement a host operating system (OS) 202 configured to execute applications 204 (eg, native OS applications and user applications). Figure 2 As shown, the eUICC 108 may be configured to implement an eUICC OS 206 that is configured to manage the hardware resources of the eUICC 108 (e.g., a processor and memory embedded in the eUICC 108). The eUICC OS 206 may also be configured to manage the eSIM 208 stored by the eUICC 108 by, for example, downloading, installing, deleting, enabling, disabling, modifying, or otherwise managing the eSIM 208 within the eUICC 108, and providing access to the eSIM 208 to the baseband radio circuitry 110 to provide access to wireless services to the wireless device 102. The eUICC 108 OS may include an eSIM manager 210 that may perform management functions for the various eSIMs 208. Figure 2In the illustrated example, each eSIM 208 may include several applets 212 that define the operation of the eSIM 208. For example, one or more of the applets 212, when implemented in conjunction with the wireless circuitry 110 and the eUICC 108, may be configured to enable the wireless device 102 to communicate with the MNO 114 and provide useful features (e.g., phone calls and internet access) to the user of the wireless device 102.

[0037] Likewise Figure 2 As shown, the wireless circuitry 110 of the wireless device 102 may include a baseband OS 214 configured to manage the hardware resources (e.g., processor, memory, various radio components, etc.) of the baseband radio circuitry 110. According to some embodiments, the baseband radio circuitry 110 may implement a baseband manager 216 configured to interface with the eUICC 108 to establish a secure channel with the MNO provisioning server 116 and obtain information (such as eSIM data) from the MNO provisioning server 116 for managing the eSIMs 208. The baseband manager 216 may be configured to implement services 218, which represent a collection of software modules that are instantiated by various applets 212 of the enabled eSIMs 208 included in the eUICC 108. For example, the services 218 may be configured to manage different connections between the wireless device 102 and the MNO 114 depending on the different eSIMs 208 enabled within the eUICC 108. For providing a limited functionality shared provisioning eSIM 208 that is constrained to certain data connections, when a cellular wireless connection or a non-cellular wireless connection via the full functionality user eSIM 208 is unavailable, the wireless device 102 may configure the shared provisioning eSIM 208, attempt to connect to a cellular wireless network using profile parameters of the shared provisioning eSIM 208, and reconfigure the shared provisioning eSIM 208 one or more times if reattempting to connect to one or more cellular wireless networks is necessary.

[0038] Figure 3A diagram 300 illustrates elements of a communication network involved in device activation and SIM provisioning, installation, and activation of a wireless device 102. Device activation and SIM provisioning may require a data connection for the wireless device 102. In some scenarios, a non-cellular access network 304 may be used for the wireless device 102 to connect to various device manufacturer-managed servers and / or servers managed by the MNO 114 via an intermediate communication network 306. In some scenarios, the non-cellular access network 304 may not be available, and the wireless device 102 may rely on access to the cellular access network 302 to activate the wireless device 102 and perform SIM provisioning, e.g., downloading and installing a fully functional user eSIM 208 to the wireless device 102. In some embodiments, the wireless device 102 includes a limited functionality shared (configurable) provisioning SIM / eSIM profile that can be used to obtain limited access to a cellular access network 302 for provisioning a full-function user eSIM 208, for example, when access to a non-cellular access network 304 that can interconnect to a required server is not available. The original equipment manufacturer (OEM) of the wireless device 102 can maintain multiple network-based servers to assist in the management of the wireless device 102, for example, a device manufacturer-managed device services server 308 that can provide management of device manufacturer-provisioned services to the wireless device 102, and a device manufacturer-managed MNO services server 310 that can provide a device manufacturer anchor for managing MNO-provisioned services to the wireless device 102. The MNO 114 may also provide their own set of servers, including various MNO infrastructure servers 312 for managing cellular access, authentication, authorization, subscription, billing, and other associated management functions for cellular wireless services for the wireless device 102, as well as MNO provisioning servers 116 from which the wireless device 102 can access SIM firmware (e.g., eSIM 208, OTA updates of eSIM 208, etc.) with proper authentication.

[0039] Figure 4A diagram 400 illustrates an exemplary system for selecting an International Mobile Subscriber Identity (IMSI) value for a shared provisioning SIM / eSIM 402. The shared provisioning SIM / eSIM 402, previously installed in the UICC 118 (for a SIM) or previously installed on the eUICC 108 (for an eSIM 208), includes a record of IMSI values ​​organized into an IMSI pool and aggregated into an IMSI pool group from which an on-device shared provisioning SIM / eSIM controller 404 of the wireless circuitry 110 of the wireless device 102 can select an IMSI value for configuring the shared provisioning SIM / eSIM 402. The selected IMSI value can be associated with a profile parameter set with which the shared provisioning SIM / eSIM is also configured when the shared provisioning SIM / eSIM is configured with the selected IMSI value. If necessary, the shared provisioning SIM / eSIM 402 may be advantageously reconfigured multiple times with different IMSI values ​​in order to locate and connect to a cellular wireless network to obtain limited access for use by the wireless device 102, e.g., to communicate with an OEM provisioning server and / or download and install a fully functional user eSIM 208 from an MNO provisioning server 116. The IMSI value used to configure the shared provisioning SIM / eSIM may not be unique to the wireless device 102, and thus an IMSI conflict may occur between two different wireless devices 102 using the same IMSI value. The wireless device 102 may detect an indication of such an IMSI conflict and select a different IMSI value with which to reconfigure the shared provisioning SIM / eSIM 402 in order to continue the initialization, configuration, or provisioning process of the wireless device 102.

[0040] After the power-up process, the shared provisioning SIM / eSIM 402 can be configured to use a null IMSI value, e.g., a specific designated IMSI value that cannot be used to access a cellular wireless network. An on-device shared provisioning SIM / eSIM controller 404, which can reside on a cellular baseband processor of the wireless circuitry 110 of the wireless device 102, can obtain an indication from the eUICC / UICC 108 / 118 that the shared provisioning SIM / eSIM 402 is configured with a null IMSI value and can prevent the cellular baseband processor's cellular software stack 406 from attempting to register with the cellular wireless network using the null IMSI value. The baseband processor's cellular software stack 406 can scan for cellular network signals to determine available PLMNs in the vicinity of the wireless device 102. The on-device shared provisioning SIM / eSIM controller 404 obtains information from the shared provisioning SIM / eSIM 402 regarding a configured IMSI pool / pool group that can be used to configure the shared provisioning SIM / eSIM 402. The on-device shared provisioning SIM / eSIM controller 404 may select an initial IMSI value based on the IMSI pool / pool group information. In some embodiments, the on-device shared provisioning SIM / eSIM controller 404 may also select the initial IMSI value based on additional information not directly available to the shared provisioning SIM / eSIM 402 or the eUICC / UICC 108 / 118. Exemplary additional information may include the geographic location (e.g., country or region) in which the wireless device 102 is operating, which may be determined by the on-device shared provisioning SIM / eSIM controller 404 based on information provided by the cellular software stack 406 through scanning for cellular wireless network broadcast signals. The on-device shared provisioning SIM / eSIM controller 404 may prioritize the selection of an IMSI value from the IMSI pool / pool group based on the determined location of the wireless device 102. Exemplary additional information may also include device-specific information such as the hardware model of the wireless device 102, the stock keeping unit (SKU) value of the wireless device 102, or the region code assigned to the wireless device 102. The device-specific information may be obtained from an OEM device data repository 408 stored locally in the wireless device 102. In some cases, the wireless device 102 obtains an indication of a user selection or preference for an MNO 114 through which the wireless device 102 will subscribe to cellular wireless services, and the on-device shared provisioning SIM / eSIM controller 404 considers the user-selected (or preferred) MNO 114 when determining an IMSI pool / pool group from which to select an initial IMSI value for configuring the shared provisioning SIM / eSIM 402. For example, certain IMSI pools / pool groups may be associated with certain MNOs 114.The on-device shared provisioning SIM / eSIM controller 404 may also determine an IMSI pool / pool group to be used to select an initial IMSI value based on a partnership agreement between the OEM of the wireless device 102 and one or more MNOs 114 that may be preferred for obtaining cellular wireless network access for provisioning the wireless device 102. In some cases, the OEM of the wireless device 102 may have agreements with multiple MNOs 114 and may seek to distribute the selection of an IMSI value for the shared provisioning SIM / eSIM 402 among multiple IMSI pools / pool groups associated with different MNOs 114. When determining an initial IMSI value for configuring the shared provisioning SIM / eSIM 402, and also when selecting subsequent IMSI values ​​for reconfiguring the shared provisioning SIM / eSIM 402, the on-device shared provisioning SIM / eSIM controller 404 may prioritize certain IMSI pools / pool groups (e.g., those associated with the first set of one or more MNOs 114) over other IMSI pools / pool groups (e.g., those associated with the second set of one or more MNOs 114) based on various selection criteria. Each IMSI value includes a Mobile Country Code (MCC) value, a Mobile Network Code (MNC) value, and a Mobile Subscription Identification Number (MSIN) value.

[0041] The on-device shared provisioning SIM / eSIM controller 404 may select an appropriate IMSI value for the shared provisioning SIM / eSIM 402 and transmit an Application Protocol Data Unit (APDU) command to the eUICC / UICC 108 / 118 to configure the shared provisioning SIM / eSIM 402 to use the selected IMSI value. Configuring the shared provisioning SIM / eSIM with the selected IMSI value also includes selecting profile parameters for the shared provisioning SIM / eSIM based on the selected initial IMSI value. Configuration with additional profile parameters may be performed automatically by the shared SIM / eSIM provisioning profile on the eUICC based on the selected initial IMSI value after the shared provisioning SIM / eSIM profile is configured with the initial IMSI value by the on-device shared provisioning SIM / eSIM controller. Alternatively, in some cases, one or more shared provisioning SIM / eSIM profile parameters may be configured by the on-device shared provisioning SIM / eSIM controller. The cellular software stack 406 of the wireless circuitry 110 may attempt to connect to the cellular wireless network using the profile parameters of the shared provisioning SIM / eSIM 402 configured with the selected IMSI value. The on-device shared provisioning SIM / eSIM controller 404 may monitor information from the cellular software stack 406, such as network signaling messages, to determine whether an IMSI conflict has occurred, e.g., where two different wireless devices 102 attempt to establish or maintain a connection using the exact same IMSI value, which may not be permitted by the cellular wireless network. Different cellular wireless networks may react differently to IMSI conflicts, and not all network signaling message information may be available to the shared provisioning SIM / eSIM 402 or eUICC / UICC 108 / 118. Therefore, detection and resolution of IMSI conflicts are advantageously performed by the on-device shared provisioning SIM / eSIM controller 404 of the wireless device 102, located external to the eUICC / UICC 108 / 118, on the wireless circuitry 110. The on-device shared provisioning SIM / eSIM controller 404 may select another IMSI value from the set of IMSI pools / pool groups, transmit another APDU command to the eUICC / UICC 108 / 118 to reconfigure the shared provisioning SIM / eSIM 402 with the newly selected IMSI value, and retry connecting to the cellular wireless network using the profile parameters of the reconfigured shared provisioning SIM / eSIM 402. As further discussed herein, the on-device shared provisioning SIM / eSIM controller 404 may prioritize the selection of IMSI values ​​from different IMSI pools and different IMSI pool groups based on various criteria. The IMSI values ​​stored in the shared provisioning SIM / eSIM 402 may be organized into IMSI pools of multiple IMSI values ​​and aggregated into IMSI pool groups associated with a group identifier (ID) value.The IMSI pool group may also be associated with a prioritized list of Equivalent Home PLMNs (EHPLMNs) and a prioritized list of Operator Preferred PLMNs (OPLMNs), and the on-device shared provisioning SIM / eSIM controller 404 may use information about the PLMNs detected by the cellular software stack 406 during the network scanning process to inform a decision about which IMSI pool / pool group to use to select the IMSI value for configuring the shared provisioning SIM / eSIM 402.

[0042] Figure 5 Table 500 illustrates a standardized structure of an elementary file (EF) for storing IMSI values ​​in a SIM / eSIM. The IMSI EF contains the IMSI value along with an indication of the length of the IMSI value, as the number of bytes of the IMSI value may vary based on different geographic regions and / or MNOs 114. The IMSI EF is stored in the SIM / eSIM at the Universal SIM (USIM) Application Data File (ADF) level.

[0043] Figure 6A Table 600 illustrates an exemplary structure of an EF for storing one or more IMSI pools of IMSI values. Each IMSI pool is associated with a group identifier (ID) value, a priority level, an IMSI length and a Mobile Network Code (MNC) length indicator value, an initial (starting) IMSI value, a final (ending) IMSI value, and a bit mask indicating the number of IMSI digits that increment between the initial (starting) and final (ending) IMSI values. The IMSI Pool EF defines a set of prioritized IMSI pools from which the on-device shared provisioning SIM / eSIM controller 404 can select an IMSI value and use it to configure the shared provisioning SIM / eSIM 402 for access to the cellular wireless network. The IMSI values ​​in each IMSI pool are mutually disjoint, i.e., there is no overlap in IMSI values ​​between different IMSI pools.

[0044] Figure 6B Illustrated provides information about Figure 6ATable 650 of additional information for various fields of an IMSI Pool Elementary File (EF) is provided. Each IMSI pool may be assigned a group ID value indicating the IMSI pool group (i.e., a set of IMSI pools) to which the IMSI pool belongs, wherein all IMSI pools in the IMSI pool group share the exact same group ID value and also have the exact same MNO content for additional elementary files, such as the elementary file for the EHPLMN associated with the IMSI pool group (and therefore the IMSI pools in the IMSI pool group) and the elementary file for the OPLMN associated with the IMSI pool group (and therefore the IMSI pools in the IMSI pool group). Each IMSI pool is also assigned a priority level relative to other IMSI pools, e.g., where lower values ​​are associated with higher priority levels and higher values ​​are associated with lower priority levels. In some embodiments, priority values ​​range from 0 (highest priority) to 254 (lowest priority), where a priority value of 255 may be used to indicate an IMSI pool that is no longer in use (e.g., deactivated). The length of the IMSI value indicates the number of bytes of the IMSI value in the IMSI pool, and the MNC length indicator value indicates whether the MNC portion of the IMSI value uses two or three digits (this can be region-dependent). The starting and ending IMSI values ​​in the IMSI pool can be configured according to 3GPP standards (e.g., according to Technical Specification (TS) 131.102). The bit mask indicates the consecutive IMSI digits that will be incremented to generate valid IMSI values ​​within the range of IMSI values ​​from the starting IMSI value to the ending IMSI value in the IMSI pool.

[0045] Figure 7A Table 700 illustrates an exemplary structure of an Equivalent Home PLMN (EHPLMN) EF for storing IMSI pools organized into IMSI pool groups as specified in an IMSI Pool EF. Each IMSI pool group with associated EHPLMNs is assigned an IMSI Pool Group ID value and an indication of the number (count) of EHPLMNs associated with that IMSI pool group. For each IMSI pool group, the EHPLMNs are listed in order of preference. IMSI pool groups without any associated EHPLMNs may not be referenced in an IMSI Pool EHPLMN EF.

[0046] Figure 7B Illustrated provides information about Figure 7ATable 750 shows additional information about the various fields of the IMSI Pool EHPLMN EF. An IMSI pool group is assigned an IMSI Pool Group ID value, and all IMSI pools in a particular IMSI pool group share the same Group ID value and also share exactly the same set of EHPLMNs (so the list of prioritized EHPLMNs for each IMSI pool in the IMSI pool group is the same). The total number of EHPLMNs configured for an IMSI pool group is specified by the EHPLMN count and can be in the range of 1 to 255. An IMSI pool group that has no associated EHPLMN should not be referenced in the IMSI Pool EHPLMN EF. According to 3GPP standard TS 131.102, each EHPLMN included in the EHPLMN list can be specified by a Mobile Country Code (MCC) value and a Mobile Network Code (MNC) value.

[0047] Figure 8A Table 800 illustrates an exemplary structure of an EF for storing the Operator Preferred PLMN (OPLMN) and the identifier of the associated access technology (ACT), which may also be referred to as a Radio Access Technology (RAT), such as 4G LTE or 5G NR, for an IMSI pool group specified in an IMSI Pool EF. Each IMSI pool group with an associated OPLMN is assigned a Group ID value and an indication of the number of OPLMNs with their ACTs configured for the IMSI pool group, where each OPLMN identifier is accompanied by an associated ACT identifier value. For each IMSI pool group, the OPLMNs are listed in order of preference. IMSI pool groups without any associated OPLMNs may not be referenced in the IMSI Pool OPLMNwACT EF.

[0048] Figure 8B Illustrated provides information about Figure 8ATable 850 shows additional information about the various fields of the IMSI Pool OPLMNwACT EF. An IMSI pool group is assigned an IMSI Pool Group ID value, and all IMSI pools in a particular IMSI pool group share the same Group ID value and also share exactly the same set of OPLMNs (so the list of prioritized OPLMNs for each IMSI pool in the IMSI pool group is the same). The total number of OPLMNs configured for an IMSI pool group is specified by the OPLMN count and can be in the range of 1 to 255. An IMSI pool group that has no associated OPLMN should not be referenced in the IMSI Pool OPLMNwACT EF. In accordance with 3GPP standard TS131.102, each EHPLMN included in the OPLMN list can be specified by a Mobile Country Code (MCC) value and a Mobile Network Code (MNC) value. Each OPLMN access technology is indicated by an ACT identifier value, which can be encoded in accordance with TS131.102.

[0049] Figure 9Tables 900 and 950 illustrate a "Set IMSI" APDU command for configuring the IMSI value of the shared provisioning SIM / eSIM 402 of the UICC / eUICC 118 / 108 of the wireless device 102. The class code of the "Set IMSI" APDU command may be configured according to TS 102.221, and the proprietary instruction code for the "Set IMSI" APDU command may be an unused (or appropriately specified) APDU instruction code value according to TS 102.221. The "Set IMSI" APDU command also includes a first parameter field (P1) having the values ​​specified in Table 950, wherein a first P1 value (e.g., "00000000") indicates that the IMSI value of the shared provisioning SIM / eSIM 402 should be cleared of any previously stored value, and a second P1 value (e.g., "00000001") indicates that a non-null IMSI value encoded in the "Lc" and "Data" fields should be configured in the shared provisioning SIM / eSIM 402. The on-device shared provisioning SIM / eSIM controller 404 selects an IMSI value from the IMSI pool specified by the IMSI Pool EF included in the shared provisioning SIM / eSIM 402 and transmits a “Set IMSI” command with the selected IMSI value to the UICC / eUICC 118 / 108 to configure the shared provisioning SIM / eSIM 402. Before issuing the “Set IMSI” APDU command, the on-device shared provisioning SIM / eSIM controller 404 may select a universal SIM (USIM) application for the shared provisioning SIM / eSIM 402. After the “Set IMSI” command has been transmitted, a refresh mechanism may be used to synchronize the contents of the shared provisioning SIM / eSIM 402 maintained by the on-device shared provisioning SIM / eSIM controller 404 with the actual contents of the shared provisioning SIM / eSIM 402. In some cases, an IMSI refresh command is provided by the shared provisioning SIM / eSIM 402 to the shared provisioning SIM / eSIM controller 404 on the device in response to a status command indicating that the USIM application is initialized in the terminal, transmitted from the shared provisioning SIM / eSIM controller 404 on the device to the shared provisioning SIM / eSIM 402. When the shared provisioning SIM / eSIM controller 404 on the device provides an invalid non-null IMSI value in the "Set IMSI" command (or when an execution error occurs at the shared provisioning SIM / eSIM 402 after receiving the "Set IMSI" command), the shared provisioning SIM / eSIM 402 may return a non-success error status indication to the shared provisioning SIM / eSIM controller 404 on the device.

[0050] Figure 10A diagram 1000 is illustrated showing an example of the relationship between the contents of the different Elementary Files (EFs) discussed above for a specific example MNO 114 (which may also be referred to as an operator). The IMSI Pool EF specifies IMSI pools organized into IMSI pool groups, each IMSI pool group being designated with an IMSI Pool Group ID value and having a priority level assigned to each IMSI pool in the IMSI pool group, as previously described for Figure 6A and Figure 6B As described above. Multiple IMSI pools of an MNO 114 may be organized together into a single IMSI pool group, where each IMSI pool group has the same group ID value and is associated with a common set of EHPLMNs and a common set of OPLMNs. IMSI pools of different priority levels may be included in the same IMSI pool group. IMSI pools and IMSI pool groups may be flexibly designed to meet the requirements of each MNO 114, which may vary. An MNO may have: i) a single IMSI pool group in which IMSI pools are at a single priority level (e.g., MNO C2), ii) a single IMSI pool group in which IMSI pools are at different priority levels (e.g., MNO C1), or iii) multiple IMSI pool groups at different priority levels (e.g., MNO C3). IMSI pools for different MNOs 114 may share the same priority level, or may be at different priority levels. An IMSI pool for a single MNO 114 may also be at a single priority level or at multiple priority levels.

[0051] MNO C1 illustrates an example of an MNO 114 having an IMSI pool group with multiple IMSI pools at different priority levels. For MNO C1, as shown, IMSI pool group 1 includes multiple IMSI pools (individually labeled 1 through N1) at the highest ("0") priority level, and multiple IMSI pools (individually labeled 1 through N1') at the second-highest ("1") priority level. This highest priority level and second-highest priority level are provided as examples, and an IMSI pool group may include IMSI pools at any mix of priority levels, such as priority levels 5 and 8 (not shown). Each IMSI value includes an MCC value, an MNC value, and an MSIN value. Because the MNC portion of the IMSI value is specific to a particular MNO 114, IMSI pools for different MNOs 114 are disjoint. An IMSI pool is always unique and cannot have overlapping IMSI values ​​within a particular MNO 114 or across different MNOs 114. MNO C1's IMSI pool Group 1 is associated with a prioritized list of EHPLMNs (also labeled Group 1) and a prioritized list of OPLMNs with associated ACT values ​​(further labeled Group 1). The EHPLMN values ​​and OPLMNwACT values ​​may be organized from highest priority to lowest priority within each of their respective lists.

[0052] MNO C2 illustrates an example of MNO 114 having an IMSI pool group in which all IMSI pools are at a particular priority level. For example, IMSI pool group 2 of MNO C2 includes a collection of IMSI pools (labeled 1 to N2) at the highest priority level ("0"). This highest priority level is given as an example, and the IMSI pool group may also have IMSI pools at another priority level, such as priority level 4 (not shown). IMSI pool group 2 is associated with its own prioritized list of EHPLMNs and prioritized lists of OPLMNs with ACT values.

[0053] MNO C3 illustrates an example of an MNO having multiple IMSI pool groups at different priority levels. For example, IMSI pool group 3 of MNO C3 includes IMSI pools (labeled 1 to N3) at the second highest ("1") priority level, and IMSI pool group 3' of MNO C3 includes IMSI pools (labeled 1 to N3') at a lower ("M") priority level. Each IMSI pool group of MNO C3 has its own prioritized list of associated EHLPLMNs and prioritized list of OPLMNs with ACT values.

[0054] Figure 11ADiagram 1100 illustrates automatic IMSI selection and configuration by wireless device 102 for a shared provisioning SIM / eSIM 402. In response to a power-up process by wireless device 102, a cellular baseband processor 1102 of wireless device 102 selects a shared provisioning SIM / eSIM 402, which can be configured for accessing a cellular wireless network, e.g., as part of an initialization process to communicate with an OEM-managed server when setting up wireless device 102, or as part of a cellular configuration process to communicate with an MNO provisioning server 116 to obtain a fully functional cellular eSIM for wireless device 102. The shared provisioning SIM / eSIM 402 can be used when alternative communication means (e.g., non-cellular wireless access or hardwired access) are not available for wireless device 102 to perform the initialization or configuration process. After power-up, the shared provisioning SIM / eSIM 402 can select a null IMSI value, e.g., an IMSI value that cannot be used to establish a connection with a cellular wireless network. Automatic selection of a null IMSI value can prevent the wireless device 102 from attempting to register with the cellular wireless network until an appropriate initial IMSI value is selected and used to configure the shared provisioning SIM / eSIM 402. The selection of the initial IMSI value can be based on factors such as user preferences for the MNO 114, the geographic location in which the wireless device 102 is operating, and the prioritization among various PLMNs. An on-device shared provisioning SIM / eSIM controller 404 residing on the cellular baseband processor 1102 of the wireless device 102 can obtain (e.g., by reading) information from the shared provisioning SIM / eSIM 402 specifying available IMSI values ​​that can be organized into IMSI pools and IMSI pool groups, along with a selection priority for selecting among the IMSI values. The on-device shared provisioning SIM / eSIM controller 404 of the cellular baseband processor 1102 includes initial provisioning IMSI selection logic 1106 that processes the IMSI pool group information and the selection priority information to determine an initial provisioning IMSI value for the shared provisioning SIM / eSIM 402. The provisioning IMSI evaluation and switching logic 1108 of the on-device shared provisioning SIM / eSIM controller 404 of the cellular baseband processor 1102 transmits a "Set IMSI" APDU command to the IMSI switching logic 1110 of the UICC / eUICC 118 to configure the shared provisioning SIM / eSIM 402 with the selected initial provisioning IMSI value. The shared provisioning SIM / eSIM 402 returns an active IMSI refresh command to the cellular baseband processor 1102 (including to the cellular software stack 406 and the on-device shared provisioning SIM / eSIM controller 404) to indicate that the shared provisioning SIM / eSIM 402 has been configured with the selected provisioning IMSI value.The cellular software stack 406 of the cellular baseband processor 1102 may perform a network scanning process to determine available PLMNs and attempt to register with the located cellular wireless network using the profile parameters of the shared provisioning SIM / eSIM 402 configured with the initial provisioning IMSI value. Upon successful registration with the cellular wireless network, the cellular baseband processor 1102 of the wireless device 102 may provide an indication of the successful cellular wireless connection to the application processor 1104, allowing the application processor 1104 to continue executing applications that require access to cellular data via the registered cellular wireless network. Until a fully functional eSIM 208 is downloaded and installed on the eUICC 108 of the wireless device 102 (or a fully functional SIM stored on the UICC 118 is installed in the wireless device 102), connectivity to the cellular wireless network registered using the profile parameters of the shared provisioning SIM / eSIM 402 may be restricted to specific use cases, such as communicating with a specific endpoint, such as an OEM server used to configure the wireless device 102, or communicating with the MNO provisioning server 116 to obtain the fully functional eSIM 208. When registration with a cellular wireless network using the profile parameters of the shared provisioning SIM / eSIM 402 configured with the initial provisioning IMSI value is unsuccessful, the cellular baseband processor 1102 may attempt to register with another cellular wireless network, or may select another provisioning IMSI value to reconfigure the shared provisioning SIM / eSIM 402 and then retry registration with one or more cellular wireless networks. The reselection of the provisioning IMSI value and the cellular wireless network registration attempt may be repeated until a successful registration occurs or a threshold number of retry attempts has been reached. The selection of a different provisioning IMSI value for reconfiguring the shared provisioning SIM / eSIM 402 may be based on a variety of criteria, such as device-specific characteristics, user preferences, available cellular wireless networks, IMSI pool priority, network (e.g., EHPLMN and OPLMN) prioritization, etc.

[0055] Figure 11BDiagram 1120 illustrates exemplary selection criteria for determining an initial IMSI value for a shared provisioning SIM / eSIM 402 by initial configuration IMSI selection logic 1106, which may be included in an on-device shared provisioning SIM / eSIM of a cellular baseband processor 1102 of a wireless device 102. After the wireless device 102 is powered on, an on-device shared provisioning SIM / eSIM controller 404 of the cellular baseband processor 1102 may use one or more of the selection criteria to select an IMSI for the shared provisioning SIM / eSIM 402. The on-device shared provisioning SIM / eSIM controller 404 of the cellular baseband processor 1102 may obtain information regarding available IMSI pools (which may be organized into IMSI pool groups) and relative selection priorities for selecting the initial IMSI value. The priorities may include a priority level for the IMSI pools and a prioritization of PLMNs associated with a particular MNO 114. In some cases, the on-device shared provisioning SIM / eSIM controller 404 of the cellular baseband processor 1102 accesses information regarding user selections or preferences for one or more specific MNOs 114, which may influence the selection of an initial IMSI value used to configure the shared provisioning SIM / eSIM 402. In some embodiments, the cellular baseband processor 1102 performs a cellular wireless network scanning process to determine available PLMNs visible to the wireless device 102 in which the wireless device 102 is operating, and uses the available PLMNs to inform the selection of an initial IMSI value used to configure the shared provisioning SIM / eSIM 402. In some cases, the cellular baseband processor 1102 of the wireless device 102 uses device-specific information, such as the hardware model of the wireless device 102, a stock keeping unit (SKU) value of the wireless device 102, an area code associated with the wireless device 102, or other parameters configured for the wireless device 102, that may narrow or prioritize the selection of an IMSI, IMSI pool, group of IMSI pools, or PLMN for selecting an initial IMSI value for configuring the shared provisioning SIM / eSIM 402. In some embodiments, the cellular baseband processor 1102 uses information from one or more partner agreements between the OEM of the wireless device 102 and one or more MNOs 114 to determine the initial IMSI value for configuring the shared provisioning SIM / eSIM 402. For example, the OEM of the wireless device 102 may maintain a contract with one or more MNOs 114 for limited-function cellular wireless access to allow wireless devices 102 manufactured by the OEM to connect for select purposes, such as by communicating with an OEM-managed server to configure the wireless device 102, or accessing an MNO provisioning server 116 to obtain a full-function eSIM 208 or subscribe to cellular wireless network service.In some cases, an OEM may seek to distribute wireless devices 102 across cellular wireless networks managed by different MNOs 114 based on contractual partner agreements.

[0056] Figure 11C A diagram 1130 illustrates an exemplary set of actions performed by the wireless device 102 for selecting an IMSI value, evaluating conditions when attempting to connect to a cellular wireless network using the selected IMSI value, and switching between different selected IMSI values ​​for configuring the shared provisioning SIM / eSIM 402 of the wireless device 102. Figure 11BAs described, an initial IMSI value is selected for the shared provisioning SIM / eSIM 402, and the cellular baseband processor 1102 of the wireless device 102 transmits a "Set IMSI" APDU command to the IMSI switching logic 1110 of the UICC / eUICC 118 / 108 to configure the shared provisioning SIM / eSIM 402 with the selected initial IMSI value. The IMSI switching logic 1110 of the UICC / eUICC 118 / 108 returns an active IMSI refresh command to the cellular baseband processor 1102 to indicate the updated configuration of the provisioning SIM / eSIM 402. The cellular baseband processor 1102 resets a cellular network retry mechanism, such as a timer or counter, and initiates a cellular wireless network scan procedure to ascertain available PLMNs with which the wireless device 102 can attempt to establish a cellular wireless connection using the configured profile parameters of the shared provisioning SIM / eSIM 402. When selecting a new IMSI, IMSI pool, or IMSI pool group, the provisioning IMSI evaluation and handover logic 1108 of the cellular baseband processor 1102 can prioritize the PLMN with which to attempt registration. When a Home PLMN (HPLMN) or Equivalent HPLMN (EHPLMN)—or an Operator Preferred PLMN (OPLMN)—is located, the cellular baseband processor 1102 can use the profile parameters of the shared provisioning SIM / eSIM 402 with the most recently configured IMSI value to attempt registration on the located HPLMN, EHPLMN, or OPLMN. If registration on the HPLMN, EHPLMN, or OPLMN is successful, the cellular baseband processor 1102 can cease further PLMN searches and IMSI handovers and provide an indication of successful registration to the application processor 1104. When registration on one or more detected HPLMNs, EHPLMNs, or OPLMNs is unsuccessful, the cellular baseband processor 1102 may evaluate the signaling error message received via the cellular software stack 406 to determine whether an IMSI conflict is likely to have occurred. For example, the IMSI value currently used to configure the shared provisioning SIM / eSIM 402 may also be used by another wireless device 102 to attempt to connect to or maintain an active connection with the PLMN with which the wireless device 102 is attempting to register. IMSI conflicts may occur on any PLMN, including when roaming, on an HPLMN, on an EHPLMN, on an OPLMN, and so on. An IMSI conflict may occur if multiple wireless devices 102 concurrently attach to the exact same PLMN using the same IMSI value. When the cellular baseband processor 1102 determines that the signaling error message indicates an IMSI conflict, the provisioning IMSI evaluation and switching logic 1108 may select another IMSI value from the IMSI pool that includes the currently used IMSI value.The provisioning IMSI evaluation and switching logic 1108 may transmit a new "Set IMSI" APDU command to the IMSI switching logic 1110 to reconfigure the shared provisioning SIM / eSIM 402 with the newly selected IMSI value. Upon receiving the IMSI refresh command indicating that the shared provisioning SIM / eSIM 402 has been reconfigured with the new IMSI value, the cellular baseband processor 1102 may increment a cellular network retry timer or counter mechanism and, when the maximum number of retries has not been reached, the cellular baseband processor may restart the cellular radio scanning process immediately or after a preconfigured or configurable time delay.

[0057] When the cellular baseband processor 1102 determines that the signaling error message does not indicate an IMSI conflict, but rather indicates an expired cellular radio subscription for the MNO 114 associated with the IMSI pool group from which the currently used IMSI value was selected, the provisioning IMSI evaluation and handover logic 1108 may remove the currently used IMSI pool group from future consideration and determine whether an additional IMSI pool group is available at the same or lower priority level as the current IMSI pool group. If an IMSI pool group of equal or lower priority level is available, the provisioning IMSI evaluation and handover logic 1108 may switch to the determined available IMSI pool group of equal or lower priority level and select an IMSI value from the new IMSI pool group. The provisioning IMSI evaluation and handover logic 1108 may transmit a new "Set IMSI" APDU command to the IMSI handover logic 1110 to reconfigure the shared provisioning SIM / eSIM 402 with the newly selected IMSI value. Upon receiving the IMSI refresh command indicating that the shared provisioning SIM / eSIM 402 has been reconfigured with a new IMSI value, the cellular baseband processor 1102 may increment a cellular network retry timer or counter mechanism and, when the maximum number of retries has not been reached, the cellular baseband processor may restart the cellular radio scanning process either immediately or after a preconfigured or configurable time delay.

[0058] When no detected PLMN is an HPLMN, EHPLMN, or OPLMN, cellular baseband processor 1102 may attempt to register on any other detected PLMN. When all detected PLMNs have been attempted and failed, provisioning IMSI evaluation and handover logic 1108 may determine whether there are additional IMSI pool groups available at the same or lower priority level as the current IMSI pool group. If an IMSI pool group of equal or lower priority level is available, provisioning IMSI evaluation and handover logic 1108 may switch to the determined available IMSI pool group of equal or lower priority level and select an IMSI value from the new IMSI pool group. Provisioning IMSI evaluation and handover logic 1108 may transmit a new "Set IMSI" APDU command to IMSI handover logic 1110 to reconfigure the shared provisioning SIM / eSIM 402 with the newly selected IMSI value. Upon receiving the IMSI refresh command indicating that the shared provisioning SIM / eSIM 402 has been reconfigured with a new IMSI value, the cellular baseband processor 1102 may increment a cellular network retry timer or counter mechanism and, when the maximum number of retries has not been reached, the cellular baseband processor may restart the cellular radio scanning process either immediately or after a preconfigured or configurable time delay.

[0059] When the provisioning IMSI evaluation and handover logic 1108 determines that all available IMSI pool groups have been attempted without successful registration to the associated PLMN or a maximum number of retries have been attempted (e.g., a cellular network retry mechanism timer or counter reaches a threshold), the cellular baseband processor 1102 may stop the IMSI evaluation and handover process and optionally provide a failure indication.

[0060] Cellular baseband processor 1102 may continue to evaluate PLMNs detected through the cellular network scanning process and attempt (or retry) to connect to the located PLMN. When no HPLMN, EHPLMN, or OPLMN is detected for the IMSI pool group from which the currently used IMSI value was selected, cellular baseband processor 1102 may determine whether a PLMN that is an HPLMN, EHPLMN, or OPLMN of a different IMSI pool group has been detected. When an HPLMN, EHPLMN, or OPLMN of a different IMSI pool group has been detected, provisioning IMSI evaluation and handover logic 1108 may select a most preferred IMSI pool group that includes the detected PLMN as an HPLMN, EHPLMN, or OPLMN and select an IMSI value from the selected IMSI pool group. Provisioning IMSI evaluation and handover logic 1108 may transmit a new "Set IMSI" APDU command to IMSI handover logic 1110 to reconfigure the shared provisioning SIM / eSIM 402 with the newly selected IMSI value. Upon receiving the IMSI refresh command indicating that the shared provisioning SIM / eSIM 402 has been reconfigured with a new IMSI value, the cellular baseband processor 1102 may increment a cellular network retry timer or counter mechanism and, when the maximum number of retries has not been reached, the cellular baseband processor may restart the cellular radio scanning process either immediately or after a preconfigured or configurable time delay.

[0061] When no detected PLMN is an HPLMN, EHPLMN, or OPLMN of any IMSI pool group, but at least one detected PLMN is an OPLMN of another IMSI pool group, the provisioning IMSI evaluation and handover logic 1108 may select a most preferred IMSI pool group that includes the detected PLMN as an OPLMN and select an IMSI value from the selected IMSI pool group. The provisioning IMSI evaluation and handover logic 1108 may transmit a new "Set IMSI" APDU command to the IMSI handover logic 1110 to reconfigure the shared provisioning SIM / eSIM 402 with the newly selected IMSI value. Upon receiving the IMSI refresh command indicating that the shared provisioning SIM / eSIM 402 has been reconfigured with the new IMSI value, the cellular baseband processor 1102 may increment a cellular network retry timer or counter mechanism and, if the maximum number of retries has not been reached, the cellular baseband processor may restart the cellular radio scan process immediately or after a preconfigured or configurable time delay.

[0062] Figure 12AA flowchart 1200 illustrates an exemplary method performed by the cellular baseband processor 1102 of the wireless device 102 to manage configuration of the shared provisioning eSIM 208 installed on the eUICC 108 of the wireless device 102. At 1202, the cellular baseband processor 1102 obtains information from the shared provisioning eSIM 208 indicating a group of available IMSI pools and a relative priority for selecting IMSI values ​​for the shared provisioning eSIM 208. At 1204, the cellular baseband processor 1102 repeatedly performs an IMSI selection and handover procedure and a PLMN search and registration procedure until a successful registration occurs on a PLMN identified by the PLMN search or a maximum number of retries occurs, wherein successive PLMN search and registration procedures use different selected IMSI values ​​for configuring the shared provisioning eSIM 208.

[0063] As outlined in flowchart 1220 , the IMSI selection and switching process performed by the cellular baseband processor 1102 may include, at 1222 , selecting an IMSI value from the available IMSI pool group based on relative priority; and, at 12224 , transmitting an APDU command to the eUICC 108 to cause the eUICC 108 to configure the shared provisioning eSIM 208 with the selected IMSI value.

[0064] As outlined in flowchart 1240 , the PLMN search registration process performed by the cellular baseband processor 1102 may include scanning for PLMNs at 1242 , and attempting to register the wireless device 102 with the PLMN identified based on the scan using profile parameters of the shared provisioning eSIM 208 configured with the selected IMSI value at 1244 .

[0065] In some embodiments, the cellular baseband processor 1102 of the wireless device 102 prioritizes registration with the HPLMN or EHPLMN over other PLMNs identified based on a scan. In some embodiments, the cellular baseband processor 1102 of the wireless device 102 prioritizes registration with the HPLMN or EHPLMN over other PLMNs identified based on an OPLMN or a PLMN that is not an HPLMN, EHPLMN, or OPLMN based on the PLMN identified as the HPLMN or EHPLMN to select an IMSI pool group from which to select an IMSI value. In some embodiments, the cellular baseband processor 1102 of the wireless device 102 determines that a signaling error received from the PLMN in response to a registration attempt using the current IMSI value indicates an IMSI conflict, wherein selection of a subsequent IMSI value includes switching to another IMSI value included in the IMSI pool group that includes the current IMSI value. In some embodiments, the cellular baseband processor 1102 of the wireless device 102 determines that a signaling error received from the PLMN in response to a registration attempt using the current IMSI value indicates an expired subscription, and removes the IMSI pool group that includes the current IMSI value from future consideration in the PLMN search and registration process. In some embodiments, the cellular baseband processor 1102 of the wireless device 102: i) determines that none of the PLMNs based on the scan identifier is an HPLMN or EHPLMN of an IMSI pool group that includes an IMSI value, ii) determines that the PLMN based on the scan identifier is an HPLMN or EHPLMN of another IMSI pool group, and iii) selects a most preferred IMSI pool group whose PLMN is the HPLMN or EHPLMN, wherein the selection of the subsequent IMSI value includes switching to another IMSI value included in the most preferred IMSI pool group. The most preferred IMSI pool group can be an IMSI pool group of the highest priority IMSI pool group for which the currently detected PLMN is configured as its HPLMN, EHPLMN, or OPLMN. In some embodiments, the cellular baseband processor 1102 of the wireless device 102: i) determines that none of the PLMNs based on the scanned identifier is a HPLMN or EHPLMN of any available IMSI pool group, ii) determines that the PLMN based on the scanned identifier is an OPLMN of another IMSI pool group, and iii) selects a most preferred IMSI pool group for which the PLMN is an OPLMN, wherein selection of a subsequent IMSI value comprises switching to another IMSI value included in the most preferred IMSI pool group. In some embodiments, the cellular baseband processor 1102 of the wireless device 102: i) initializes (or causes the eUICC 108 to initialize with a null IMSI value) the shared provisioning eSIM 208 after a power-up procedure, and ii) prevents registration attempts with the shared provisioning eSIM 208 using the shared provisioning eSIM 208 until the shared provisioning eSIM 208 is configured with an initial non-null IMSI value.In some embodiments, after a power-up process, the cellular baseband processor 1102 of the wireless device 102: i) selects an initial non-null IMSI value for the shared provisioning eSIM 208 before performing a first IMSI selection and handover process, and ii) configures the shared provisioning eSIM 208 with the initial non-null IMSI value as part of the first IMSI selection and handover process. In some embodiments, the selection of the initial non-null IMSI value is based on a pool of available IMSIs and the relative priority used to select IMSI values ​​for the shared provisioning eSIM 208. In some embodiments, the selection of the initial non-null IMSI value is based on a user-specific selection of a cellular subscription with the MNO 114. In some embodiments, the selection of the initial non-null IMSI value is based on the geographic region in which the wireless device 102 is operating. In some embodiments, the selection of the initial non-null IMSI value is based on information specific to the hardware or software configuration of the wireless device 102. In some embodiments, the selection of the initial non-null IMSI value is based on a partnership agreement between the OEM of the wireless device 102 and the MNO 114. In some embodiments: i) the IMSI pool group includes one or more non-overlapping IMSI pool groups for each of the plurality of MNOs, ii) each IMSI pool group includes a plurality of IMSI pools and associated group identifier values, and iii) each IMSI pool includes a plurality of IMSI values ​​and associated priority levels. In some embodiments, IMSI pools having identical associated group identifier values ​​are associated with a common corresponding priority list for an EHPLMN. In some embodiments, IMSI pools having identical associated group identifier values ​​are associated with a common corresponding priority list for an OPLMN.

[0066] Figure 12BThe flowchart illustrates an example of the cellular baseband processor 1102 of the wireless device 102 reconfiguring the shared provisioning eSIM 208 to attempt a handover from a first PLMN connected to a first MNO 114 to a second PLMN connected to a second MNO 114, where the first PLMN is not an HPLMN or an EHPLMN, and the second PLMN is an HPLMN or an EHPLMN. At 1252, the cellular baseband processor 1102 of the wireless device 102 registers with the first PLMN, where the first PLMN is not an HPLMN or an EHPLMN, using profile parameters of the shared provisioning eSIM 208 configured with a first IMSI value associated with the first MNO 114. At 1254, the cellular baseband processor 1102 of the wireless device 102 performs a PLMN search for a higher priority PLMN. At 1256, the cellular baseband processor 1102 of the wireless device 102 determines that the PLMN not identified through the PLMN search is an HPLMN or EHPLMN of a first IMSI pool group that includes the first IMSI value and is associated with the first MNO 114. At 1258, the cellular baseband processor 1102 of the wireless device 102 determines that the second PLMN identified through the PLMN search is an HPLMN or EHPLMN of a second IMSI pool group that is associated with the second MNO 114. At 1260, the cellular baseband processor 1102 of the wireless device 102 selects a second IMSI value from the second IMSI pool group. At 1262, the cellular baseband processor 1102 of the wireless device 102 sends an APDU command to the eUICC 108 of the wireless device 102 to cause the eUICC 108 to reconfigure the shared provisioning eSIM 208 with the second IMSI value and the profile parameters associated with the second IMSI value. At 1264 , the cellular baseband processor 1102 of the wireless device 102 attempts to register the wireless device 102 with the second PLMN using the profile parameters of the shared provisioning eSIM 208 reconfigured with the second IMSI value.

[0067] In some embodiments, the APDU command is a "Set IMSI" APDU command for switching the IMSI value of the shared provisioning eSIM 208. The "Set IMSI" APDU command may be used to switch the shared provisioning eSIM 208 from using a first IMSI value having associated first profile parameters to using a second IMSI value having associated second profile parameters, i.e., to switch the shared provisioning eSIM 208 from being configured with a first IMSI profile to being configured with a second IMSI profile. Figure 12BIn FIG, the cellular baseband processor 1102 of the wireless device 102 initially connects to a first PLMN that is neither the HPLMN nor the EHPLMN of the first MNO 114 using a first IMSI profile, and after performing a higher priority PLMN search, identifies a second PLMN that is either the HPLMN or the EHPLMN, but is specific to the second MNO 114. Accordingly, the cellular baseband processor 1102 transmits a “Set IMSI” APDU command to reconfigure the shared provisioning eSIM 208 from using a first IMSI value having first IMSI profile parameters and associated with the first MNO 114 to using a second IMSI value having second IMSI profile parameters and associated with the second MNO 114. Based on the higher priority PLMN search, the wireless device 102 recognizes that no PLMN was identified as the HPLMN or the EHPLMN of the first MNO 114, but rather at least one PLMN identifier was identified as the HPLMN or the EHPLMN of the second MNO 114, and therefore needs to be reconfigured in order to connect to the HPLMN or the EHPLMN. When multiple PLMNs are identified as HPLMN or EHPLMN through a higher priority search, and the PLMNs are from different IMSI pool groups, the provisioning IMSI evaluation and handover logic 1108 of the cellular baseband processor 1102 may select an IMSI pool group with the highest priority among the different IMSI pool groups, select a new IMSI value from the selected IMSI pool group, reconfigure the shared provisioning eSIM 208 with the new IMSI value (and associated profile parameters), and attempt to register with the PLMN using the profile parameters of the shared provisioning eSIM 208 reconfigured with the new IMSI value.

[0068] Representative equipment

[0069] Figure 13 1 illustrates a detailed view of a representative computing device 1300 that can be used to implement the various methods described herein according to some embodiments. Specifically, the detailed view illustrates various components that can be included in the wireless device 102. Figure 13As shown, computing device 1300 may include a processor 1302, which represents a microprocessor or controller for controlling the overall operation of computing device 1300. Computing device 1300 may also include a user input device 1308, which allows a user of computing device 1300 to interact with computing device 1300. For example, user input device 1308 may take a variety of forms, such as buttons, a keypad, a dial, a touch screen, an audio input interface, a visual / image capture input interface, input in the form of sensor data, etc. Furthermore, computing device 1300 may include a display 1310, which may be controlled by processor 1302 to display information to the user. A data bus 1316 may facilitate data transfer between at least storage device 1340, processor 1302, and controller 1313. Controller 1313 may be used to interact with and control various devices via an equipment control bus 1314. Computing device 1300 may also include a network / bus interface 1311, which is communicatively coupled to data link 1312. In the case of a wireless connection, the network / bus interface 1311 may include a wireless transceiver.

[0070] Computing device 1300 also includes a storage device 1340, which may include a single disk or multiple disks (e.g., a hard drive) and a storage management module that manages one or more partitions within storage device 1340. In some embodiments, storage device 1340 may include flash memory, semiconductor (solid-state) memory, or the like. Computing device 1300 may also include random access memory (RAM) 1320 and read-only memory (ROM) 1322. ROM 1322 may store programs, utilities, or processes to be executed in a non-volatile manner. RAM 1320 may provide volatile data storage and store instructions related to the operation of computing device 1300. Computing device 1300 may also include a secure element (SE) 1324, which may represent secure storage for cellular wireless system access by wireless device 102, such as an eUICC 108 on which one or more eSIMs 208 are stored and / or a UICC 118 on which a SIM profile is stored.

[0071] Wireless Terminology

[0072] According to various embodiments described herein, the terms "wireless communication device," "wireless device," "mobile wireless device," "mobile station," and "user equipment (UE)" may be used interchangeably herein to describe one or more common consumer electronic devices that may be capable of performing the processes associated with various embodiments of the present disclosure. According to various specific implementations, any of these consumer electronic devices may relate to: a cellular telephone or smartphone, a tablet computer, a laptop computer, a notebook computer, a personal computer, a netbook computer, a media player device, an e-book device, Devices, wearable computing devices, and any other type of electronic computing device with wireless communication capabilities, which may include communication via one or more wireless communication protocols, such as protocols used to communicate over the following networks: wireless wide area networks (WWANs), wireless metropolitan area networks (WMANs), wireless local area networks (WLANs), wireless personal area networks (WPANs), near field communication (NFC), cellular wireless networks, fourth generation (4G) long term evolution (LTE), advanced LTE (LTE-A), and / or 5G or other currently or future developed advanced cellular wireless networks.

[0073] In some embodiments, the wireless communication device may also operate as part of a wireless communication system, which may include a group of client devices, which may also be referred to as stations, client wireless devices, or client wireless communication devices, interconnected to an access point (AP) (e.g., as part of a WLAN) and / or interconnected with each other (e.g., as part of a WPAN and / or "ad hoc" wireless network). In some embodiments, the client device may be any wireless communication device capable of communicating via WLAN technology (e.g., according to a wireless local area network communication protocol). In some embodiments, the WLAN technology may include a Wi-Fi (or more generally, WLAN) wireless communication subsystem or radio component, which may implement the Institute of Electrical and Electronics Engineers (IEEE) 802.11 technology, such as one or more of the following: IEEE 802.11a; IEEE 802.11b; IEEE 802.11g; IEEE 802.11-2007; IEEE 802.11n; IEEE 802.11-2012; IEEE 802.11ac; or other currently or future developed IEEE 802.11 technologies.

[0074] In addition, it should be understood that the UE described herein can be configured as a multimode wireless communication device that is also capable of communicating via different third generation (3G) and / or second generation (2G) RATs. In these scenarios, the multimode UE can be configured to prefer attaching to an LTE network that provides a faster data rate throughput over other 3G legacy networks that provide a lower data rate throughput. For example, in some implementations, the multimode UE can be configured to fall back to a 3G legacy network, such as an evolved High Speed ​​Packet Access (HSPA+) network, or a Code Division Multiple Access (CDMA) 2000 Evolution-Data Only (EV-DO) network, when LTE and LTE-A networks are otherwise unavailable.

[0075] The various aspects, embodiments, implementations, or features of the described embodiments may be used individually or in any combination. Various aspects of the described embodiments may be implemented by software, hardware, or a combination of hardware and software. The described embodiments may also be implemented as computer-readable code on a non-transitory computer-readable medium. A non-transitory computer-readable medium is any data storage device that can store data that can then be read by a computer system. Examples of non-transitory computer-readable media include read-only memory, random access memory, CD-ROM, HDD, DVD, magnetic tape, and optical data storage devices. Non-transitory computer-readable media may also be distributed on network-coupled computer systems so that the computer-readable code is stored and executed in a distributed manner.

[0076] In connection with this disclosure, it is understood that the use of personally identifiable information should be subject to privacy policies and practices recognized to meet or exceed industry or government requirements for maintaining user privacy. Specifically, personally identifiable information data should be managed and processed to minimize the risk of unintentional or unauthorized access or use, and the nature of authorized use should be clearly stated to users.

[0077] For illustrative purposes, the foregoing description uses specific nomenclature to provide a thorough understanding of the described embodiments. However, it will be apparent to those skilled in the art that specific details are not required in order to practice the described embodiments. Therefore, the foregoing descriptions of specific embodiments are presented for purposes of illustration and description. The foregoing descriptions are not intended to be exhaustive or to limit the described embodiments to the precise forms disclosed. It will be apparent to those skilled in the art that, in light of the above teachings, many modifications and variations are possible.

Claims

1. A method for dynamically managing a shared provisioning electronic subscriber identity module (eSIM) installed on an embedded universal integrated circuit card (eUICC) of a wireless device, the method comprising: The wireless device's cellular baseband processor: obtaining, from the shared provisioning eSIM on the eUICC, information indicating a pool of available International Mobile Subscriber Identities (IMSIs) and a relative priority for selecting IMSI values ​​for the shared provisioning eSIM; as well as Repeating the IMSI selection and handover process and the Public Land Mobile Network (PLMN) search and registration process until a successful registration occurs on the PLMN identified by the PLMN search or a maximum number of retries occurs, in: The IMSI selection and switching process includes: selecting an IMSI value from the set of available IMSI pools based on the relative priority; and transmitting an application protocol data unit (APDU) command to the eUICC to cause the eUICC to configure the shared provisioning eSIM with the IMSI value; The PLMN search and registration process includes: Scanning for Public Land Mobile Networks (PLMNs); and attempting to register the wireless device with a PLMN based on the scan identification for the PLMN using profile parameters of the shared provisioning eSIM configured with the IMSI value; and Successive PLMN search and registration processes use different selected IMSI values ​​for configuring the shared provisioning eSIM.

2. The method according to claim 1, further comprising: The cellular baseband processor of the wireless device: The IMSI pool group from which the IMSI value is to be selected is selected based on the identified PLMN being the HPLMN or EHPLMN relative to an operator preferred PLMN (OPLMN) or a PLMN that is not a home PLMN (HPLMN), equivalent HPLMN (EPHLMN) or OPLMN.

3. The method according to claim 1, further comprising: The cellular baseband processor of the wireless device: determining that signaling received from the PLMN in response to a registration attempt using the current IMSI value incorrectly indicates an IMSI conflict, The selecting the IMSI value includes: switching to another IMSI value included in an IMSI pool group including the current IMSI value.

4. The method according to claim 1, further comprising: The cellular baseband processor of the wireless device: determining that a signaling error received from the PLMN in response to a registration attempt using the current IMSI value indicates an expired subscription; as well as The IMSI pool group including the current IMSI value is removed from future consideration in the PLMN search and registration process.

5. The method according to claim 1, further comprising: The cellular baseband processor of the wireless device: determining that no PLMN based on the scan identifier is a home PLMN (HPLMN) or an equivalent HPLMN (EHPLMN) of an IMSI pool group that includes the IMSI value; determining that the PLMN based on the scan identifier is a home PLMN (HPLMN) or an equivalent HPLMN (EHPLMN) of another IMSI pool group; as well as Selecting a most preferred IMSI pool group for which the PLMN is its HPLMN or EPHLMN, wherein selecting the IMSI value comprises: switching to another IMSI value included in the most preferred IMSI pool group.

6. The method according to claim 1, further comprising: The cellular baseband processor of the wireless device: determining that no PLMN identified based on the scan for the PLMN is a home PLMN (HPLMN) or equivalent HPLMN (EHPLMN) of any available IMSI pool group; determining that a PLMN identified based on the scan for the PLMN is an operator preferred PLMN (OPLMN) of another IMSI pool group; as well as Select the most preferred IMSI pool group where the PLMN is its OPLMN, The selecting of the IMSI value comprises: switching to another IMSI value included in the most preferred IMSI pool group.

7. The method according to claim 1, further comprising: The cellular baseband processor of the wireless device: After the power-up process, initializing the shared provisioning eSIM with a null IMSI value; as well as Registration attempts with the PLMN using the shared provisioning eSIM are blocked until the shared provisioning eSIM is configured with an initial non-null IMSI value.

8. The method according to claim 1, further comprising: The cellular baseband processor of the wireless device, after a power-up process: Prior to performing a first IMSI selection and handover procedure, selecting an initial non-null IMSI value for the shared provisioning eSIM; and As part of the first IMSI selection and switching process, the shared provisioning eSIM is configured with the initial non-null IMSI value.

9. The method of claim 8, wherein the selection of the initial non-null IMSI value is based on the set of available IMSI pools and relative priorities for selecting IMSI values ​​for the shared provisioning eSIM.

10. The method of claim 8, wherein selection of the initial non-null IMSI value is based on a user-specific selection of a cellular subscription with a mobile network operator (MNO).

11. The method of claim 8, wherein the selection of the initial non-null IMSI value is based on a geographic region in which the wireless device is operating.

12. The method of claim 8, wherein selection of the initial non-null IMSI value is based on information specific to a hardware or software configuration of the wireless device.

13. The method of claim 8, wherein the selection of the initial non-null IMSI value is based on a partnership agreement between an original equipment manufacturer (OEM) and a mobile network operator (MNO) of the wireless device.

14. The method of claim 1, wherein: The IMSI pool group includes one or more non-overlapping IMSI pool groups of each of a plurality of mobile network operators (MNOs), Each IMSI pool group comprises a plurality of IMSI pools and an associated group identifier value, and Each IMSI pool includes multiple IMSI values ​​and an associated priority level.

15. The method of claim 14, wherein a pool of IMSIs having identical associated group identifier values ​​is associated with a common corresponding prioritized list of equivalent home PLMNs (EHPLMNs).

16. The method of claim 14, wherein a pool of IMSIs having identical associated group identifier values ​​is associated with a common corresponding ranked list of Operator Preferred PLMNs (OPLMNs).

17. A wireless device, comprising: wireless circuitry including one or more antennas; and one or more processors communicatively coupled to the wireless circuitry and to a memory storing instructions that, when executed by the one or more processors, configure the wireless device to: reading from a shared provisioning electronic subscriber identity module (eSIM) on an embedded universal integrated circuit card (eUICC) of the wireless device a pool of available international mobile subscriber identities (IMSIs) and a relative priority for selecting an IMSI value for the shared provisioning eSIM; and Repeating the IMSI selection and handover process and the Public Land Mobile Network (PLMN) search and registration process until a successful registration occurs on the PLMN identified by the PLMN search or a maximum number of retries occurs, in: The IMSI selection and switching process includes: selecting an IMSI value from the set of available IMSI pools based on the relative priority; and transmitting an application protocol data unit (APDU) command to the eUICC to cause the eUICC to configure the shared provisioning eSIM with the IMSI value; The PLMN search and registration process includes: Scanning for Public Land Mobile Networks (PLMNs); and attempting to register the wireless device with a PLMN based on the scan identification for the PLMN using profile parameters of the shared provisioning eSIM configured with the IMSI value; and Successive PLMN searches and registration procedures use different selected IMSI values.

18. The wireless device of claim 17, wherein the wireless device is further configured to: determining that signaling received from the PLMN in response to a registration attempt using the current IMSI value incorrectly indicates an IMSI conflict, Wherein selecting the IMSI value comprises: Switching to another IMSI value included in the IMSI pool group including the current IMSI value.

19. The wireless device of claim 17, wherein the wireless device is further configured to: determining that a signaling error received from the PLMN in response to a registration attempt using the current IMSI value indicates an expired subscription; and The IMSI pool group including the current IMSI value is removed from future consideration in the PLMN search and registration process.

20. An apparatus configured to operate in a wireless device, the apparatus comprising one or more processors communicatively coupled to a memory storing instructions that, when executed by the one or more processors, configure the wireless device to: registering with a first public land mobile network (PLMN) using profile parameters of a shared provisioning electronic subscriber identity module (eSIM) configured with a first international mobile subscriber identity (IMSI) value associated with a first mobile network operator (MNO), wherein the first PLMN is not a home PLMN (HPLMN) or an equivalent HPLMN (EHPLMN); Performing a PLMN search for a higher priority PLMN; determining that a PLMN not identified by the PLMN search is a HPLMN or an EHPLMN of a first IMSI pool group that includes the first IMSI value and is associated with the first MNO; determining that a second PLMN identified by the PLMN search is a HPLMN or an EHPLMN of a second IMSI pool group associated with a second MNO; Selecting a second IMSI value from the second IMSI pool; and transmitting an application protocol data unit (APDU) command to an embedded universal integrated circuit card (eUICC) of the wireless device to cause the eUICC to reconfigure the shared provisioning eSIM with the second IMSI value; and Attempting to register the wireless device with the second PLMN using profile parameters of the shared provisioning eSIM reconfigured with the second IMSI value.

Citation Information

Cited By

  • Dynamic eSIM configuration based on available Wi-Fi internet bandwidth

    US12581399B2