Collision elimination through forced reselection of cells in multi-SIM mobile devices

The various embodiments provide methods for implementing a forced reselection strategy after causing colliding subscriptions to perform reselection to neighboring cells. In various embodiments, the MSMS communication device may undo the effects of forced reselection in certain situations when continuing to employ forced reselection may be ineffective. In other embodiments, the MSMS communication device may force reselecting subscriptions to reselect to neighboring cells in a paging group based on the page timings of the neighboring cells. Thus, the various embodiments may increase the performance of the colliding subscriptions and may enhance the user's overall experience.

BACKGROUND

Some new designs of mobile communication devices—such as smart phones, tablet computers, and laptop computers—contain multiple Subscriber Identity Module (SIM) cards that provide users with access to multiple separate mobile telephony networks. Examples of mobile telephony networks include GSM, TD-SCDMA, CDMA2000, and WCDMA. Example multi-SIM mobile communication devices include mobile phones, laptop computers, smart phones, and other mobile communication devices that are able to connect to multiple mobile telephony networks. A mobile communication device that includes a plurality of SIMs that share a radio-frequency (RF) resource for communicating with their respective mobile telephony networks and connects to multiple separate mobile telephony networks is termed a “multi-SIM-multi-standby communication device” or “MSMS communication device.” An example is a dual-SIM dual standby (DSDS) device.

A MSMS communication device may include one or more shared RF resources that the multiple subscriptions use to communicate with their respective mobile telephony networks. However, only one subscription may use each RF resource to communicate with its mobile network at a time. Even when a subscription is in “standby” mode, meaning it is not currently actively communicating with the network, it may still need to perform discontinuous reception (DRX) operations to receive network paging messages at regular intervals (i.e., a discontinuous reception period) in order to remain connected to the network. Paging intervals for different subscriptions are not necessarily the same nor are they synchronized. Therefore, it is possible that at a certain times, the multiple subscriptions sharing an RF resource may need to use the RF resource to communicate with their respective mobile networks simultaneously. For example, two subscriptions out of three or more subscriptions may try to use a single RF resource to receive their paging messages simultaneously, or one subscription may be using the RF frontend when another other subscription is scheduled to receive a network paging message.

A “page collision” occurs when page reception times of two or more subscriptions overlap, as happens when the network paging messages for multiple subscriptions are scheduled at the same time. When a page collision occurs, one subscription must be assigned the RF resource to the exclusion of the other subscriptions. In other words, one subscription may block the other subscriptions from communicating with their respective networks (i.e., not receive their schedule page messages). Currently, the paging DRX cycle length (i.e., the length of time from the beginning of one network paging session to the next) for each subscription is determined entirely by the network and occurs in regular, predictable intervals. MSMS communication devices cannot manipulate or reschedule the paging DRX cycle for the multiple subscriptions and, therefore, cannot prevent page collisions from occurring between the multiple subscriptions even though page collisions can be anticipated. These page collisions may greatly affect mobile terminal call success rates of MSMS communications devices, especially when page collisions between two or more subscriptions are persistent.

SUMMARY

The various embodiments include MSMS communication devices and methods that may be implemented in an MSMS communication device for implementing a forced reselection strategy after forcing one or more subscriptions in multiple colliding subscriptions (i.e., “reselecting subscriptions”) to perform reselection to neighboring cells. In various embodiments, the MSMS communication device may undo the effects of forced reselection on one or more reselecting subscriptions when continuing to employ forced reselection may be ineffective.

In an embodiment, the MSMS communication device may monitor a subscription in the multiple colliding subscriptions not forced to reselect to a neighboring cell (i.e., a “camped subscription”) to determine whether the camped subscription has reselected to a different sector or cell. In response to determining that the camped subscription has reselected to a different sector or cell, the MSMS communication device may force reselecting subscriptions to reselect (i.e., “fall back”) to the cells on which the reselecting subscriptions were originally camped (i.e., their “original cells”).

In another embodiment, the MSMS communication device may monitor one or more reselecting subscriptions to determine whether they have set up a call on a neighboring cell. If the MSMS communication device detects that a reselecting subscription has set up a call on a neighboring cell, the MSMS communication device may force the reselecting subscription to fall back to its original cell to complete the call.

In an embodiment, the MSMS communication device may maintain a count of the number of times each reselecting subscription performs a forced reselection. The MSMS communication device may only force a reselecting subscription to perform a threshold number of reselections. In a further embodiment, the MSMS communication device may force the reselecting subscription to reselect (i.e., fall back) to its original cell when the reselecting subscription has performed more than the threshold number of reselections.

In another embodiment, the MSMS communication device may preemptively determine the neighboring cells that the reselecting subscriptions may reselect to in order to avoid persistent page collisions. In a further embodiment, the MSMS communication device may determine that a neighboring cell's page timing does not collide with the page timing of another cell in the neighboring cell's paging group based on various information received from the neighboring cell's paging group.

Further embodiments include MSMS communication devices having means for performing functions of the operations described above. Further embodiments include non-transitory processor-readable storage media one which are stored processor-executable instructions configured to cause a processor of a MSMS communication device to perform the operations described above.

DETAILED DESCRIPTION

As used herein, the term “MSMS communication device” refers to any one or all of cellular telephones, smart phones, personal or mobile multi-media players, personal data assistants, laptop computers, personal computers, tablet computers, smart books, palm-top computers, wireless electronic mail receivers, multimedia Internet enabled cellular telephones, wireless gaming controllers, and similar personal electronic devices which individually include a programmable processor and memory and circuitry for connecting to at least two mobile communication networks. The various aspects may be useful in mobile communication devices, such as smart phones, and so such devices are referred to in the descriptions of the various embodiments. However, the embodiments may be useful in any electronic devices that may individually maintain a plurality of subscriptions to a plurality of mobile networks through one or more radio transceivers (i.e., one or more shared RF resources).

Subscriptions with overlapping DRX cycles may suffer from persistent page collisions as long as they remain under their respective sector/base station. Current solutions to persistent page collisions include forcing one or more colliding subscriptions operating on the MSMS communication device to reselect to a neighboring cell that has a different DRX cycle in an attempt to avoid such persistent page collisions. However, such solutions presently do not provide mechanisms to address various situations that may affect the subscriptions performance after performing reselection. Without a mechanism for switching subscriptions back to their original (presumably better) cell, this approach can put the forced-away subscriptions in a sub-optimal communication configuration after the original persistent page collision situation is resolved.

In overview, the various embodiments provide methods for implementing a forced reselection strategy on an MSMS communication device after causing colliding subscriptions to perform reselection to neighboring cells. In various embodiments, the MSMS communication device may “undo” the effects of forced reselection in certain situations when continuing to employ forced reselection may be ineffective. In other embodiments, the MSMS communication device may force reselecting subscriptions to reselect to neighboring cells in a paging group based on the page timings of the neighboring cells. Thus, the various embodiments may increase the performance of the colliding subscriptions and may enhance the user's overall experience.

In various embodiments, the MSMS communication device may include a plurality of subscriptions to various mobile telephony networks. The plurality of subscriptions may share an RF resource to communicate with their respective mobile networks. When the MSMS communication device detects a page collision between multiple colliding subscriptions in the plurality of subscriptions, the MSMS communication device may force one or more of the colliding subscriptions (i.e., the “reselecting subscriptions”) to perform forced reselection to a neighboring cell while one subscription (i.e., the “camped subscription”) remains on the original cell.

In an embodiment, the MSMS communication device may monitor the camped subscription to determine whether the camped subscription has reselected to a different sector or cell. In such an embodiment, the MSMS communication device may force the reselecting subscriptions to “fall back” to their original cells. In a further embodiment, a reselecting subscription may fall back to its original cell by performing a forced reselection from its current cell (i.e., a neighboring cell) to its original cell.

In another embodiment, the MSMS communication device may monitor reselecting subscriptions to determine whether they have set up a call on a neighboring cell. If the MSMS communication device detects that a reselecting subscription has set up a call on a neighboring cell, the MSMS communication device may force the reselecting subscription to fall back to its original cell to complete the call.

In an embodiment, the MSMS communication device may maintain a count of the number of times each reselecting subscription performs a forced reselection. The MSMS communication device may only force a reselecting subscription to perform a threshold number of reselections. In a further embodiment, the MSMS communication device may force the reselecting subscription to fall back to its original cell after the reselecting subscription has performed the threshold number of reselections.

In another embodiment, before the MSMS communication device may force the reselecting subscriptions to perform a subsequent reselection, the MSMS communication device may preemptively determine the neighboring cells that the colliding subscriptions may reselect to in order to avoid persistent page collisions. In a further embodiment, the MSMS communication device may determine the neighboring cells that have page timings that do not collide with another cell's page timing based on received information from the neighboring cells' paging group.

The various embodiments may be implemented within a variety of communication systems100, such as two or more mobile telephony networks102,104,106, an example of which is illustrated inFIG. 1. Mobile networks102,104,106typically include a plurality of cellular base stations130,140,150. A first MSMS communication device110may be in communication with a first mobile network102through a cellular connection142to a first base station140, which may be in communication with the first mobile network102via a wired connection144. The first MSMS communication device110may also be in communication with the second mobile network104through a cellular connection132to a second base station130, which may be in communication with the second mobile network104through a wired connection134. A second MSMS communication device120may similarly communicate with the first mobile network102through a cellular connection142to a first base station140. The second MSMS communication device120may also communicate with the second mobile network104through a cellular connection132to the second base station130.

In a further embodiment, the first MSMS communication device110may optionally connection to an arbitrary number of other mobile networks. For example, the first MSMS communication device110may optionally connect to a third mobile network106through an optional cellular connection152to a third base station150, which may connect to the third mobile network106through a wired connection154. While the second MSMS communication device120is not shown connected to the third mobile network106, it is anticipated that any MSMS communication device may also connect to an arbitrary number of mobile networks.

Cellular connections132,142,152may be made through two-way wireless communication links, such as 4G, 3G, CDMA, TDMA, WCDMA, GSM, and other mobile telephony communication technologies.

FIG. 2illustrates a timeline diagram200of example page collisions between multiple embodiment subscriptions operating on an MSMS communication device110. In this example, a first subscription202on a first mobile network102may have a DRX cycle length206equal to T1. The first subscription202may also have a paging session duration204, during which the first subscription202may receive and respond to pages sent from the first mobile network102. Similarly, a second subscription212to a second mobile network104may have a DRX cycle length216equal to T2and may complete paging communications with the second mobile network104during a second paging session duration214. Additionally, a third subscription222to the third mobile network106may have a DRX cycle length226equal to T3and may complete paging communications with a third mobile network106during a third paging session224.

Because of the different DRX cycle lengths206,216,226of the subscriptions202,212,222, various combinations of page collisions230,240,250may occur. As discussed above, a page collision230,240,250occurs when two or more subscriptions are attempting to use a shared RF resource simultaneously, such as when a subscription's paging session overlaps with another subscription's paging session. For example, the first subscription202may receive a paging message during the second subscription212's paging session214(i.e., page collision250) or during the third subscription222's paging session224(i.e., page collision230). A page collision may also occur among more than two subscriptions, as is illustrated by page collision240, which shows a page collision among the first, second, and third subscriptions202,212,222.

In an embodiment, the MSMS communication device may receive paging messages sequentially, meaning that page collisions are detected sequentially. For example, in response to detecting a page collision240, the MSMS communication device may respectively receive a paging message for each of the first subscription202, second subscription212, and the third subscription222. Thus, the MSMS communication device may arbitrate the collision among multiple subscriptions sequentially (e.g., performing a first page collision arbitration between the first subscription202and the second subscription212and then performing a second collision arbitration between the prevailing subscription of the first arbitration and the third subscription222).

FIG. 3is a network diagram300illustrating an MSMS communication device forcing a subscription operating on the MSMS communication device to perform cell reselection. In an embodiment, the subscription (not shown) may use a shared RF resource included in the MSMS communication device110to maintain a wireless or cellular connection to an original base station140in a first cell310through a link (e.g., cellular connection142). The subscription may have selected to the original base station140because the channel quality, among other things, may have been better than a neighboring base station340located in a nearby second cell320.

When the MSMS communication device110determines that the subscription is a participant in persistent collisions among one or more other subscriptions, the MSMS communication device110may force the subscription to reselect over a wireless or cellular link342to the neighboring base station340located in the second cell320. The neighboring base station340may thereby enable the subscription to receive paging communication from its mobile network102, which the neighboring base station340may receive from the mobile network102over a wired connection344. Because DRX cycles often vary among base stations in most radio access technologies (e.g., GSM, CDMA, etc.), the subscription may likely avoid persistent collisions after acquiring a different DRX cycle after reselecting to the neighboring base station340.

FIG. 4illustrates an embodiment method400that may be implemented in an MSMS communication device for implementing a forced reselection strategy. In block404, the MSMS communication device may enable each of a plurality of subscriptions to select to an original cell as per normal operations. In an embodiment, selecting to an original cell may include establishing an initial wireless or cellular connection with a base station that is part of the subscription's mobile access network. For example, after the MSMS communication device powers up, a subscription to a CDMA mobile network may select to a cell serviced by a base station connected to the CDMA mobile network.

In another embodiment, the plurality of subscriptions operating on the MSMS communication device may each select to a cell based on, for example, the cell's channel quality, signal strength, and various other call-quality characteristics. Alternatively, in another embodiment, the MSMS communication device may attempt to preemptively avoid persistent page collisions among the plurality of subscriptions by forcing the plurality of subscriptions to select to cells in a paging group that have page timings (i.e., page burst arrival times) that do not collide. Preemptively avoiding persistent page collisions by selectively choosing cells that have a lower chance of page collisions is further discussed below with reference toFIGS. 9 and 10.

In block406, the MSMS communication device may monitor the plurality of subscriptions for page collisions. In an embodiment, and as discussed above with reference toFIG. 2, a page collision may occur when two or more subscriptions wake up from their idling processes to receive page communications from their respective mobile access networks at the same time. Because only one subscription may use the shared RF resource at a time, the other subscriptions will not receive their pages (i.e., the other subscriptions will have their pages blocked).

In determination block408, the MSMS communication device may determine whether there are persistent page collisions among multiple subscriptions in the plurality of subscriptions. In an embodiment, the MSMS communication device may determine whether collisions are persistent using various techniques, including determining the subscriptions' DRX cycles and determining instances in which two or more subscriptions' paging sessions consistently overlap. For example, the MSMS communication device may determine that a particular subscription with a DRX cycle of 941 milliseconds collides with another subscription with a DRX cycle of 470 milliseconds every time the particular subscription attempts to receive a page. If the MSMS communication device determines that there are no persistent page collisions among the plurality of subscriptions (i.e., determination block408=“No”), the MSMS communication device may continue performing in block406by monitoring the plurality of subscriptions for page collisions.

If the MSMS communication device determines that there are persistent page collisions among multiple subscriptions (i.e., determination block408=“Yes”), the MSMS communication device may optionally determine in optional determination block410whether the colliding subscriptions have previously performed forced reselection. In an embodiment, the MSMS communication device may maintain a record of the number of times each of the plurality of subscriptions has performed forced reselection. In a further embodiment, the MSMS communication device may limit the number of times a subscription may be forced to perform reselection as discussed below with reference toFIG. 8.

If the MSMS communication device determines that the colliding subscriptions have not previously performed forced reselection (i.e., optional determination block410=“No”), the MSMS communication device may continue performing in block414. Otherwise, if the MSMS communication device determines that the colliding subscriptions have previously performed forced reselection (i.e., optional determination block410=“Yes”), the MSMS communication device may optionally implement a reselection strategy before forcing the colliding subscriptions to perform a subsequent forced reselection in optional block412. In an embodiment, the MSMS communication device may perform additional actions before forcing colliding subscriptions to perform a subsequent reselection. These additional actions may alter the manner in which the MSMS communication device implements a subsequent forced reselection. The MSMS communication device may continue performing in block414.

In block414, the MSMS communication device may force the colliding subscriptions to perform reselection. As described above with reference toFIG. 3, the MSMS communication device may force the colliding subscriptions to reselect to another cell to change the colliding subscriptions' DRX cycles in the hopes that the new DRX cycles will not overlap, thereby eliminating the persistent collision among the colliding subscriptions. The process of forcing the colliding subscriptions to reselect to another cell is described below with reference toFIG. 5.

In block416, the MSMS communication device may implement a forced reselection strategy after forcing the colliding subscriptions to perform reselection. In an embodiment, the MSMS communication device may begin monitoring various aspects of the colliding subscriptions to determine, for example, whether the colliding subscriptions' circumstances have changed, thereby necessitating a response from the MSMS communication device. For example, a camped subscription may have reselected to another cell and obtained a new DRX cycle, potentially ending the need for the reselecting subscriptions to stay selected to neighboring cells. In another example, one of the reselecting subscriptions may have set up a call on a neighboring cell. Implementing reselection strategies after performing a forced reselection is further described below with reference toFIGS. 6 and 7.

The MSMS communication device may also continue monitoring the plurality of subscriptions for collisions in block406and determining whether there are still persistent page collisions in determination block408after forcing the colliding subscriptions to perform reselection.

FIG. 5illustrates an embodiment method414′ that may be implemented on an MSMS communication device for forcing colliding subscriptions to reselect to neighboring cells. In an embodiment, the steps of method414′ may correspond to the actions the MSMS communication device may perform in block414of method400with reference toFIG. 4. The MSMS communication device may begin performing method414′ after determining that there are persistent page collisions among the plurality of subscriptions (i.e., determination block408=“Yes” inFIG. 4).

In block502, the MSMS communication device may determine the quality of each of the colliding subscriptions' neighboring cells. For example, if two subscriptions have persistent page collisions, the MSMS communication device may determine the quality of each of the subscription's respective neighboring cells based on various criteria, such as receiver power. In block504, the MSMS communication device may rank the colliding subscriptions based on the quality of their respective neighboring cells. For example, the colliding subscription with the best neighboring cell or cells may be ranked highest and the colliding subscription with the worst neighboring cells (e.g., lowest receiver power, etc.) may be ranked last.

In block506, the MSMS communication device may select the colliding subscription with the lowest rank to be the camped-on subscription (i.e., to be the subscription that remains on its original cell). The lowest ranking colliding subscription may remain on the original cell because its neighboring cells are the lowest quality, and thus, the lowest ranking colliding subscription may suffer the most by reselecting to a neighboring cell. The MSMS communication device may also select the other colliding subscriptions to be the reselecting subscriptions (i.e., subscriptions that are forced to reselect from their respective original cells to neighboring cells) in block508.

In block510, the MSMS communication device may rank the neighboring cells for each of the reselecting subscriptions. In an embodiment, the MSMS communication device may use ranking criteria that may include channel quality and signal strength. The MSMS communication device may also choose the highest ranked neighboring cell for each reselecting subscription in block512. In another embodiment (not shown), the MSMS communication device may maintain a list of neighboring cells to which a colliding subscription has previously been forced to reselect. In such embodiment, when the MSMS communication device determines that there are still page collisions, the MSMS communication device may only force a reselecting subscription to perform subsequent reselects to neighboring cells to which the reselecting subscription has not previously selected because forcing reselecting to the previously selected neighboring cells has not avoided persistent page collisions.

In block514, the MSMS communication device may force each reselecting subscription to reselect to its highest ranked neighboring cell. In an embodiment, reselecting to a highest ranked neighboring cell may ensure that a reselecting subscription is selecting to a neighboring cell that will, for example, provide the next best call quality. The MSMS communication device may continue by implementing a forced reselection strategy as discussed above with reference to block416of method400illustrated inFIG. 4.

FIG. 6illustrates an embodiment method600that may be implemented on an MSMS communication device for causing reselecting subscriptions to fall back to their original cells when a camped subscription reselects to another cell. The MSMS communication device may begin performing method600after enabling each of the plurality of subscriptions operating on the MSMS communication device to select to an original cell in block404of method400as described above with reference toFIG. 4.

In block406, the MSMS communication device may monitor the plurality of subscriptions for collisions. In one embodiment, the MSMS communication device may monitor each of the plurality of subscriptions' paging channels for paging messages from the plurality of subscriptions' respective mobile access network. In determination block408, the MSMS communication device may determine whether there are persistent page collisions among multiple subscriptions in the plurality of subscriptions. In an embodiment, the MSMS communication device may determine each of the plurality of subscriptions' start for their respective paging sessions based on their DRX cycle lengths. The MSMS communication device may also monitor the beginnings of each of the plurality of subscriptions' paging sessions to determine whether multiple subscriptions continue to receive page messages at the same time (i.e., whether there are persistent page collisions).

If the MSMS communication device determines that there are no persistent page collisions among multiple subscriptions in the plurality of subscriptions (i.e., determination block408=“No”), the MSMS communication device may determine whether a camped subscription has reselected to another cell in determination block604as described below. Otherwise, if the MSMS communication device determines that there are persistent page collisions among multiple subscriptions in the plurality of subscriptions (i.e., determination block408=“Yes”), the MSMS communication device may force the colliding subscriptions to perform reselection in block414. As discussed above with reference to block414of method400inFIG. 4, the MSMS communication device may select a camped subscription from the colliding subscriptions to remain on its original cell and may force the other subscriptions (i.e., the reselecting subscriptions) to reselect to their best respective neighboring cell.

In determination block604, the MSMS communication device may determine whether a camped subscription has reselected to another cell. In an embodiment, the camped subscription may reselect to another cell for various reasons. For example, the MSMS communication device may have moved to a different cell, thereby causing the camped subscription to reselect to a neighboring cell that is now closer (i.e., has a higher call quality) than the camped subscription's original cell. If the MSMS communication device determines that the camped subscription has not reselected to another cell (i.e., determination block604=“No”), the MSMS communication device may continue performing in block406by monitoring the plurality of subscriptions for collisions.

However, if the MSMS communication device determines that the camped subscription has reselected to another cell (i.e., determination block604=“Yes”), the MSMS communication device may force the reselecting subscriptions to fall back to their original cells in block606. In an embodiment, once the camped subscription reselects, the MSMS communication device may force the reselecting subscriptions to fall back to their original cells because the persistent page collisions may no longer exist after the camped subscription reselects to another cell. Also, in another embodiment, the MSMS communication device may force the reselecting subscriptions to reselect to their original cells because their original cells are preferred to (e.g., have a better call quality than) their neighboring cells.

The MSMS communication device may continue monitoring the plurality of subscriptions for collisions in block406and determining whether there are still persistent page collisions in determination block408.

FIG. 7illustrates an embodiment method700that may be implemented in an MSMS communication device for configuring a reselecting subscription to fall back to its original cell after setting up a call on a neighboring cell. The MSMS communication device may begin performing method700after enabling each of the plurality of subscriptions operating on the MSMS communication device to select to a respective original cell in block404of method400inFIG. 4.

In block406, the MSMS communication device may monitor the plurality of subscriptions for collisions. In one embodiment, the MSMS communication device may monitor the plurality of subscriptions just before they perform wake ups. In determination block408, the MSMS communication device may determine whether there are persistent page collisions among multiple subscriptions in the plurality of subscriptions. The MSMS communication device may make this determination by performing operations discussed above regarding determination block408of method400with reference toFIG. 4.

If the MSMS communication device determines that there are no persistent page collisions among the multiple subscriptions in the plurality of subscriptions (i.e., determination block408=“No”), the MSMS communication device may determine whether a particular reselecting subscription has set up a call on its neighboring cell in determination block704as discussed below. Otherwise, if the MSMS communication device determines that there are persistent page collisions among the multiple subscriptions in the plurality of subscriptions (i.e., determination block408=“Yes”), the MSMS communication device may force the colliding subscriptions to perform reselection in block414. In an embodiment, the MSMS communication device may select a camped subscription to remain on its original cell while forcing the other subscriptions (i.e., the reselecting subscriptions) to reselect to a neighboring cell.

In determination block704, the MSMS communication device may determine whether a particular reselecting subscription has set up a call on its neighboring cell. In other words, the MSMS communication device may determine whether a subscription, after being forced to reselect to a neighboring cell, has set up a call on the neighboring cell to which it was forced to reselect. In an embodiment, the MSMS communication device may monitor each of the reselecting subscriptions for call setups.

If the MSMS communication device determines that a reselecting subscription has not set up a call on its neighboring cell (i.e., determination block704=“No”), the MSMS communication device may continue monitoring the plurality of subscriptions for collisions in block406by. In an embodiment, the MSMS communication device may always determine that a particular reselecting subscription has not set up a call on a neighboring cell when there are no reselecting subscriptions (i.e., none of the plurality of subscriptions has been forced to reselect to a neighboring cell).

If the MSMS communication device determines that a reselecting subscription has set up a call on its neighboring cell (i.e., determination block704=“Yes”), the MSMS communication device may determine whether the reselecting subscription's original cell is preferable to the reselecting subscription's neighboring cell in determination block706, such as exhibiting superior link characteristics. In an embodiment, the MSMS communication device may monitor and measure the particular reselecting subscription's original cell to determine whether the original cell meets certain call-quality thresholds based on, among other things, call quality, signal strength, etc. For example, the MSMS communication device may have moved away from the reselecting subscription's particular original cell, thereby reducing the signal strength from the original cell below an acceptable threshold. In another embodiment, the MSMS communication device may not force the reselecting subscription to fall back to its original cell when the original cell does not meet those certain call-quality thresholds.

If the MSMS communication device determines that the particular reselecting subscription's original cell is not acceptable (i.e., determination block706=“No”), the MSMS communication device may continue monitoring the plurality of subscriptions for collisions in block406. In an embodiment, the MSMS communication device may allow the particular reselecting subscription to continue the call on its neighboring cell when the particular reselecting subscription's original cell is no longer acceptable.

If the MSMS communication device determines that the particular reselecting subscription's original cell is still acceptable or preferable to the current cell (i.e., determination block706=“Yes”), the MSMS communication device may optionally send fabricated measurement reports to the neighboring cell to facilitate handoff of the call to the original cell in optional block708. In an embodiment, the MSMS communication device may send false energy reports for the original cell to the neighboring cell. These false reports may report higher energies at the original cell than actual energy measurements. In such embodiment, the false energy reports of the original cell may cause the neighboring cell to begin handoff procedures faster, thereby enabling the reselecting subscription to continue its call on the original cell sooner. In block710, the MSMS communication device may force the reselecting subscription to fall back to its original cell.

In optional determination block712, the MSMS communication device may optionally determine whether the particular reselecting subscription's call is over. In an embodiment, the MSMS communication device may configure the reselecting subscription to remain on its original cell only during is call. If the MSMS communication device determines that the reselecting subscription's call is not over (i.e., optional determination block712=“No”), the MSMS communication device may continue to perform this determination.

If the MSMS communication device determines that the particular reselecting subscription's call is over (i.e., optional determination block712=“Yes”), the MSMS communication device may force the reselecting subscription to reselect back to its neighboring cell in optional block714if persistent call paging conditions persist. In an embodiment, once the reselecting subscription's call is over, the MSMS communication device may force the reselecting subscription to reselect back to its neighboring cell to avoid future persistent collisions that may have been avoided when the reselecting subscription reselected to the neighboring cell.

These operations may be implemented in a continuous loop and the MSMS communication device may continue monitoring the plurality of subscriptions for collisions in block406.

FIG. 8illustrates an embodiment method800that may be implemented on an MSMS communication device for managing the number of times the MSMS communication device forces a subscription to reselect to a neighboring cell. A subscription performing a reselection to another cell may not receive numerous pages or other information from its mobile access network during the reselection process. Thus, in an embodiment, the MSMS communication device may mitigate such effects of reselection on a subscription by limiting the number of times each subscription may be forced to reselect to another cell. The MSMS communication device may begin performing method800after enabling each of the plurality of subscriptions operating on the MSMS communication device to select to an original cell in block404of method400inFIG. 4.

In block802, the MSMS communication device may set a reselection counter for each of the plurality of subscriptions operating on the MSMS communication device. In an embodiment, the MSMS communication device may set the reselection counter to any arbitrary value (e.g., zero) that may be used to determine the number of times that a subscription has been forced to reselect to a neighboring cell.

In block406, the MSMS communication device may monitor the plurality of subscriptions for collisions. In determination block408, the MSMS communication device may determine whether there are persistent page collisions among multiple subscriptions in the plurality of subscriptions. The MSMS communication device may make this determination by performing the operations discussed above with reference to determination block408of method400illustrated inFIG. 4.

If the MSMS communication device determines that there are no persistent page collisions among the multiple subscriptions in the plurality of subscriptions (i.e., determination block408=“No”), the MSMS communication device may reset the reselection counter for each subscription in the plurality of subscriptions in block804. In an embodiment, the MSMS communication device may reset the reselection counters for the plurality of subscriptions when there are no persistent collisions. The MSMS communication device may continue performing in block406by monitoring the plurality of subscriptions for collisions.

If the MSMS communication device determines that there are persistent page collisions among multiple subscriptions in the plurality of subscriptions (i.e., determination block408=“Yes”), the MSMS communication device may optionally determine in optional determination block806whether the camped subscription has reselected to another cell. If the MSMS communication device determines that the camped subscription did not reselect to another cell (i.e., optional determination block806=“No”), the MSMS communication device may continue performing in block810.

If the MSMS communication device determines that the camped subscription reselected to another cell (i.e., optional determination block806=“Yes”), the MSMS communication device may optionally force the reselecting subscriptions to fall back to their original cells in optional block808. In an embodiment, the MSMS communication device may force the reselecting subscriptions to fall back to their original cells because their original cells may be preferred to their current cells. The MSMS communication device may also reset the reselection counter to zero for each of the plurality of subscriptions in block809. In an embodiment, the MSMS communication device may, in effect, restart the process of detecting persistent collisions and forcing subscriptions to reselect in response.

The MSMS communication device may continue monitoring the plurality of subscriptions for collisions in block406and determining whether there are still persistent page collisions in determination block408. In an embodiment, the MSMS communication device may need to determine whether persistent collisions are still occurring after forcing the reselecting subscriptions to fall back to their original cells.

In block810, the MSMS communication device may select the reselecting subscriptions in the colliding subscriptions. As discussed above with reference to block506and block508of method500illustrated inFIG. 5, the MSMS communication device may select a camped-on subscription that will remain on its original cell from the multiple colliding subscriptions. The MSMS communication device may also select the remaining colliding subscriptions to be the reselecting subscriptions.

In determination block812, the MSMS communication device may determine for each reselecting subscription whether each reselecting subscription's reselection counter is greater than a reselection threshold. In an embodiment, the reselection threshold may be a maximum number of times that a subscription may be forced to reselect. For example, the reselection threshold may be the maximum number of times a subscription may be forced to reselect without causing a significant decrease in performance.

If the MSMS communication device determines that a reselecting subscription's counter is not greater than a reselection threshold (i.e., determination block812=“No”), the MSMS communication device may force the reselecting subscription to perform reselection in block816. For example, the MSMS communication device may force the reselecting subscription to reselect to the next best neighboring cell to which the reselecting subscription has not previously selected. The MSMS communication device may also increment the reselection counter for the reselecting subscription in block820. While these operations are discussed in the context of one reselecting subscription, the MSMS communication device may similarly perform these steps with regards to each reselecting subscription that has a reselection counter that is less than or equal to a reselection threshold. The MSMS communication device may continue performing in block406by monitoring the plurality of subscription for collisions.

If the MSMS communication device determines that a reselecting subscription's count equals or exceed a reselection threshold (i.e., determination block812=“Yes”), the MSMS communication device may optionally force the reselecting subscription to fall back to its original cell in optional block818. In an embodiment, the MSMS communication device may only force the reselecting subscription to fall back when the reselecting subscription's original cell is preferable. The MSMS communication device may also perform page collision arbitration for the reselecting subscription in block822. In an embodiment, once a reselecting subscription exceeds the reselection threshold, the MSMS communication device may no longer force that subscription to perform reselection and, instead, may perform page collision arbitration between the reselecting subscription and other colliding subscriptions. For example, the MSMS communication device may enable alternate subscriptions in the colliding subscriptions to receive their respective pages when a collision occurs. The MSMS communication device may continue monitoring the plurality of subscriptions for collisions in block406.

FIGS. 9-10illustrate embodiment methods900,1000that may be implemented on a MSMS communication device for forcing a subscription to select to a cell in a GSM paging group based on the cell's page timing. In an embodiment, the MSMS communication device may determine the member cells of a paging group and their page timings (e.g., the arrival time of page bursts) based on various parameters and other information received over a broadcast control channel (BCCH).

FIG. 9illustrates an embodiment method900that may be implemented in an MSMS communication device for selecting original cells for each of a plurality of subscriptions to camp on initially. In an embodiment, the MSMS communication device may “smartly” select which original cells each of the plurality of subscriptions camps on to ensure that the plurality of subscriptions have a low or no chance of experiencing persistent page collisions. The MSMS communication device may begin performing method900by starting a timer in block902. The timer may be a call timer with a resolution of a quarter of a GSM symbol time (12/13 microseconds) and a period of 1 GSM super frame (i.e., 51×26 GSM TDMA frames). In an embodiment, the MSMS communication device may use the timer, among other things, when determining the arrival times of page bursts from various cells in a paging group.

In block904, the MSMS communication device may receive a synchronization channel (i.e., SCH) transmitted over channel CO of a broadcast control channel (i.e. BCCH). In an embodiment, the SCH may include information describing a synchronization resolution up to one half of the symbol time of a GSM symbol (i.e., 24/13 microseconds).

In block906, the MSMS communication device may determine the CCCH_GROUP parameter. In an embodiment, each common control channel (i.e., CCCH) includes a group (i.e., a common control channel group or CCCH_GROUP) of subscriptions in idle mode. The subscriptions in the CCCH_GROUP may listen for paging messages and may make random accesses only on the specific CCCH to which the CCCH_GROUP belongs. In block908, the MSMS communication device may determine the PAGING_GROUP parameter. In an embodiment, a PAGING_GROUP parameter may include all subscriptions listening to a particular paging block. In a further embodiment, after determining the CCCH_GROUP parameter and the PAGING-GROUP parameter, the MSMS communication device may be able to determine the exact time of arrival of page bursts from various cells.

In determination block914, the MSMS communication device may determine whether there is an unattached subscription in the plurality of subscriptions. An unattached subscription may be a subscription that has not yet camped on an original cell. If the MSMS communication device determines that there are no unattached subscriptions (i.e., determination block914=“No”), the MSMS communication device may continue monitoring the plurality of subscriptions for collisions in block406as described above with reference toFIG. 4.

If the MSMS communication device determines that there is an unattached subscription in the plurality of subscriptions (i.e., determination block914=“Yes”), the MSMS communication device may select the unattached subscription in block916. In block918, the MSMS communication device may select a potential cell for the unattached cell to camp on. In an embodiment, a potential cell may be a nearby or neighboring cell that the unattached subscription may camp on.

The MSMS communication device may also determine the page timing of the potential cell in block920based on the CCCH_GROUP parameter, the PAGING_GROUP parameter, and the timer. In an embodiment, the MSMS communication device may leverage the timer and its knowledge of the CCCH_GROUP and PAGING_GROUP parameters to identify the over-the-air arrival time of page bursts to the potential cell (i.e., the page timing of the potential cell). Once the potential cell's page timing is determined, the MSMS communication device may determine whether the potential cell's page timing collides with the page timing for another cell that has a subscription camped on it in determination block922. In other words, the MSMS communication device may determine whether the unattached subscription would experience persistent page collisions if it camped on the potential cell. For example, if one subscription's cell has page burst over-the-air arrival times of T0and the potential cell's page burst arrival times are T1, the MSMS communication device may use T0and T1to determine whether the potential cell's page timing collides with the other cell's page timing.

If the MSMS communication device determines that the potential cell's page timing does not collide with the page timing for another cell that has a subscription camped on it (i.e., determination block922=“No”), the MSMS communication device may force the unattached subscription to camp on the potential cell in block926. The MSMS communication device may also continue performing in determination block914by determining whether there is another unattached subscription.

If the MSMS communication device determines that the potential cell's page timing collides with the page timing for another cell that has a subscription camped on it (i.e., determination block922=“Yes”), the MSMS communication device may determine whether all potential cells for the unattached subscription have been tried in determination block924. In an embodiment, there may be a finite number of potential cells to which an unattached subscription may camp on. If the MSMS communication device determines that there is at least one untried potential cell for the unattached subscription (i.e., determination block924=“No”), the MSMS communication device may select another potential cell for the unattached cell to camp on that has not been tried in block925. The MSMS communication device may continue determining the page timing of the potential cell in block920.

If the MSMS communication device determines that all potential cells for the unattached subscription have been tried (i.e., determination block924=“Yes”), the MSMS communication device may force the unattached subscription to camp on the potential cell in block926. In other words, the unattached subscription may not have any potential cells to camp on that would avoid persistent page collisions but must camp on a cell nevertheless. The MSMS communication device may continue determining whether there is another unattached subscription in the plurality of subscriptions in determination block914.

FIG. 10illustrates an embodiment method1000that may be implemented in an MSMS communication device for forcing reselecting subscriptions to reselect to cells that the MSMS communication device determines will avoid persistent page collisions. The MSMS communication device may begin performing method1000after enabling each of the plurality of subscriptions operating on the MSMS communication device to select to an original cell in block404of method400inFIG. 4.

In block406, the MSMS communication device may monitor the plurality of subscriptions for collisions. In determination block408, the MSMS communication device may determine whether there are persistent page collisions among multiple subscriptions in the plurality of subscriptions. In an embodiment, the MSMS communication device may determine each of the plurality of subscriptions' start of their respective paging sessions based on their DRX cycle lengths.

If the MSMS communication device determines that there are persistent page collisions among multiple subscriptions in the plurality of subscriptions (i.e., determination block408=“No”), the MSMS communication device may continue performing in block406by monitoring the plurality of subscriptions for collisions.

If the MSMS communication device determines that there are persistent page collisions among multiple subscriptions in the plurality of subscriptions (i.e., determination block408=“Yes”), the MSMS communication device may select the reselecting subscriptions in block1002. In an embodiment, the MSMS communication device may select a camped subscription to remain on its original cell while the remaining colliding subscriptions may be selected to be the reselecting subscriptions. The MSMS communication device may select the camped-on subscription, for example, based on the relative qualities of each colliding subscription's neighboring cells, and the subscription with the worst neighboring cells (e.g., worst signal strength or channel quality) may be selected to remain camped on its original cell.

In block1006, the MSMS communication device may choose a reselecting subscription. The MSMS communication device may choose the reselecting subscription arbitrarily or based on various known selection techniques. In block1008, the MSMS communication device may select a potential neighboring cell for the chosen reselecting subscription. In an embodiment, the MSMS communication device may select the neighboring cell with, for example, the best channel quality and signal strength. The MSMS communication device may also determine the page timing for the potential neighboring cell in block1010. In an embodiment, as described above with reference toFIG. 9, the MSMS communication device may determine various characteristics about the page burst arrival times for the potential neighboring cell based on, for example, the CCCH_GROUP parameter and the PAGING_GROUP parameter.

In determination block1012, the MSMS communication device may determine whether the page timing for the potential neighboring cell conflicts with another page timing of another subscription's cell, such as the camped subscription's cell. In an embodiment, the MSMS communication device may attempt to force the reselecting subscription to reselect to a neighboring cell that will avoid persistent page collisions as discussed above with reference toFIG. 9.

If the MSMS communication device determines that the page timing for the potential neighboring cell does conflict with another page timing of another subscription's cell (i.e., determination block1012=“Yes”), the MSMS communication device may determine whether there is another potential neighboring cell available in determination block1014. If the MSMS communication device determines that there is not another potential neighboring cell available (i.e., determination block1014=“No”), the MSMS communication device may force the selected reselecting subscription to switch to the potential neighboring cell in block1016. If the MSMS communication device determines that there is another potential neighboring cell available (i.e., determination block1014=“Yes”), the MSMS communication device may select the another neighboring cell for the reselecting subscription in block1018. In an embodiment, the MSMS communication device may not select a previously selected potential neighboring cell. The MSMS communication device may continue determining the page timing for the different neighboring cell in block1010.

If the MSMS communication device determines that the page timing for the potential neighboring cell does not conflict with the page timing of another subscription's cell (i.e., determination block1012=“No”), the MSMS communication device may force the reselecting subscription to reselect to the potential neighboring cell in block1016.

The MSMS communication device may also determine whether there is another reselecting subscription in determination block1020. In an embodiment, the MSMS communication device may choose each reselecting subscription until each reselecting subscription has been forced to reselect to a neighboring cell. If the MSMS communication device determines that there is not another reselecting subscription (i.e., determination block1020=“No”), the MSMS communication device may continue monitoring the plurality of subscriptions for collisions in block406.

If the MSMS communication device determines that there is another reselecting subscription (i.e., determination block1020=“Yes”), the MSMS communication device may select another reselecting subscription in block1022. The MSMS communication device may also continue selecting a potential neighboring cell for the another reselecting subscription in block1008.

The various embodiments may be implemented in any of a variety of mobile communication devices, an example of which is illustrated inFIG. 11. For example, the mobile communication device1100may include a processor1102coupled to internal memory1104. Internal memory1104may be volatile or non-volatile memory, and may also be secure and/or encrypted memory, or unsecure and/or unencrypted memory, or any combination thereof. The processor1102may also be coupled to a touch screen display1106, such as a resistive-sensing touch screen, capacitive-sensing touch screen infrared sensing touch screen, or the like. Additionally, the display of the mobile communication device1100need not have touch screen capability. Additionally, the mobile communication device1100may have one or more antenna1108for sending and receiving electromagnetic radiation that may be connected to a wireless data link and/or cellular telephone transceiver1116coupled to the processor1102. The mobile communication device1100may also include physical buttons1112aand1112bfor receiving user inputs. The mobile communication device1100may also include a power button1118for turning the mobile communication device1100on and off. The mobile communication device1100may have a first SIM card1120and a second SIM card1122that utilize a cellular telephone transceiver1116and one or more antennae1108to connect to a first and a second mobile network, respectively. While not shown, the MSMS communication device may also have additional SIMs that utilize one or more cellular telephone transceivers to respectively connect to additional mobile networks.

The various embodiments described above may also be implemented within a variety of mobile communication devices, such as a laptop computer1200illustrated inFIG. 12. Many laptop computers include a touchpad touch surface1217that serves as the computer's pointing device, and thus may receive drag, scroll, and flick gestures similar to those implemented on mobile computing devices equipped with a touch screen display and described above. A laptop computer1200will typically include a processor1211coupled to volatile memory1212and a large capacity nonvolatile memory, such as a disk drive1213of Flash memory. Additionally, the computer1200may have one or more antenna1208for sending and receiving electromagnetic radiation that may be connected to a wireless data link and/or cellular telephone transceiver1216coupled to the processor1211. The computer1200may also include a floppy disc drive1214and a compact disc (CD) drive1215coupled to the processor1211. In a notebook configuration, the computer housing includes the touchpad1217, the keyboard1218, and the display1219all coupled to the processor1211. Other configurations of the computing device may include a computer mouse or trackball coupled to the processor (e.g., via a USB input) as are well known, which may also be use in conjunction with the various embodiments. The computer1200may have a first SIM card1220and a second SIM card1222that utilize a cellular telephone transceiver1216and one or more antennae1208to connect to a first and a second mobile network, respectively. While not shown, the MSMS communication device may also have additional SIMs that utilize one or more cellular telephone transceivers to respectively connect to additional mobile networks.