3G/UMTS

 

 

 

Cell Selection/ReSelection

 

Note : Before you think of Cell Selection - Cell Selection is the procedure that happens when Cell Detection/Search procedure were successful and complete. So when you try to test or troubleshooting Cell Selection step, you have to prove from UE side log that Cell Detection/Search procedure were successful and complete. The cell power criteria described in this page (in 3GPP as well) is determined only by P-CPICH power, you have to think of another signal power (P-SCH, S-SCH power and quality) which UE has to detect even before detecting P-CPICH. This is not all. In purely based on 3GPP criteria, P-CPICH detection may be good enough for cell selection, but when it comes to testing if Cell Selection is successful or not, we normally use Registration (or at least PRACH transmission/Reception) as a success criteria. So if you think of this factor, additional channel power/quality (P-CCPCH, S-CCPCH etc) should be considered as well. Therefore, I would like to say the completion of cell selection in terms of testing would involve much more factors than those described in this page.

Followings are the topics in this page.

Type of Cell Selection

There are two types of Cell Selections. "Initial Cell Selection" and "Stored Information Cell Selection". Definition of these two methods are described as follows in  25.304 5.2.3 Cell Selection Process.

a) Initial Cell Selection

This procedure requires no prior knowledge of which RF channels are UTRA carriers. The UE shall scan all RF channels in the UTRA bands according to its capabilities to find a suitable cell. On each carrier, the UE need only search for the strongest cell. Once a suitable cell is found this cell shall be selected.

b) Stored Information Cell Selection

This procedure requires stored information of carrier frequencies and optionally also information on cell parameters, e.g. scrambling codes, from previously received measurement control information elements.

Once the UE has found a suitable cell the UE shall select it. If no suitable cell is found the Initial cell selection procedure shall be started.

Both procedures end with the same test. The UE selects a cell only if it is a suitable cell, and TS 25.304 defines a suitable cell by several conditions. The cell belongs to the selected PLMN, the registered PLMN or a PLMN of the equivalent PLMN list. It is not barred. It belongs to at least one LA that is not in the list of forbidden LAs for roaming. If the UE supports access technology restriction, the access technology of the cell is not restricted for that PLMN. For a CSG cell, the UE is also a member of that CSG. Finally, the cell selection criteria of the next section are fulfilled.

So the S criterion is only one of these checks. A cell can pass it and still be rejected, for example when SIB3 marks the cell as barred. This is why the SIB3 capture further down on this page shows cellAccessRestriction next to the selection parameters.

  • Initial cell selection scans all carriers : on each carrier, the UE needs to search only for the strongest cell.
  • Stored information cell selection starts from stored data : it falls back to initial cell selection when no suitable cell is found.
  • A suitable cell passes more than the S criterion : PLMN, barring, forbidden LAs and access technology are checked as well.

Cell Selection Criteria

For a cell to be selected, they should meet a certain criteria as follows. Both criteria compare a measurement with a minimum that the cell broadcasts in SIB3. So the UE can evaluate them only after it has read the system information of the cell. The formulas below are for an FDD cell.

When UE is in HPLMN

    Squal = Qqualmeas – Qqualmin > 0

    Srxlev = Qrxlevmeas – Qrxlevmin – Pcompensation > 0

When UE is in VPLMN

    Squal = Qqualmeas – (Qqualmin + QqualminOffset) > 0

    Srxlev = Qrxlevmeas – (Qrxlevmin + QrxlevminOffset) – Pcompensation > 0

< 25.304 - 5.2.3.1.2 Criteria >

25.304 clause 5.2.3.1.2 cell selection parameter table

(In FDD) For a cell to be selected, both Squal and Srxlev should be greater than 0 and these two values are calculated as follows.

 

SIB3 cell selection IEs mapped into the Squal and Srxlev formulas

The picture follows each value from SIB3 into the two formulas.

  • q-QualMin -24 goes directly into Squal as Qqualmin, in dB.
  • q-RxlevMin -58 goes into Srxlev as Qrxlevmin, and the arrow is marked x 2.
  • maxAllowedUL-TX-Power 21 goes into Pcompensation as UE_TXPWR_MAX_RACH.
  • The two tables map the reported CPICH Ec/No and RSCP values to measured ranges.

Two details in the picture need care. First, TS 25.331 defines Q-RxlevMin as INTEGER (-58..-13), and the actual value is IE value x 2 + 1. So -58 means -115 dBm, not -116 dBm. Second, the RSCP table in the picture is the P-CCPCH RSCP mapping of TS 25.133 Table 9.32, and TS 25.304 uses P-CCPCH RSCP only for TDD cells. An FDD cell uses CPICH RSCP. TS 25.133 Table 9.4 maps it from CPICH_RSCP_LEV _-05 to _91, which covers -120 dBm to -25 dBm.

What does the current TS 25.304 add to the formula ?

The formulas above, and the table in the 25.304 picture, come from an older release. The current Release 19 text keeps the same structure, but it adds one more term to both formulas. It also limits the two offsets to one special case.

    Squal = Qqualmeas - (Qqualmin + QqualminOffset) - Qoffsettemp > 0

    Srxlev = Qrxlevmeas - (Qrxlevmin + QrxlevminOffset) - Pcompensation - Qoffsettemp > 0

Qoffsettemp is a temporary offset for one cell. TS 25.331 applies it after RRC connection establishment has failed "ConnEst Fail Count" consecutive times on the same cell, when SIB3 of that cell includes "Tx Fail Params". The UE then uses "ConnEst Fail Qoffset,temp" as Qoffsettemp for that cell during the "Offset Validity" period. This makes a cell that keeps rejecting the UE look weaker for a while. The change history of TS 25.304 records this feature in Release 12.

QqualminOffset and QrxlevminOffset are narrow in scope as well. TS 25.304 applies them only when the UE evaluates a cell during a periodic search for a higher priority PLMN while it is camped normally in a VPLMN. That is why the HPLMN formulas above carry no offset.

The ASN.1 below shows where the SIB3 inputs are defined, together with their conversion rules.

Following is based on 25.331 v19.0.1 (Release 19)

CellSelectReselectInfoSIB-3-4 ::=	SEQUENCE {
	mappingInfo							MappingInfo							OPTIONAL,
	cellSelectQualityMeasure			CHOICE {
		cpich-Ec-N0							SEQUENCE {
			-- Default value for q-HYST-2-S is q-HYST-1-S
			q-HYST-2-S							Q-Hyst-S					OPTIONAL
		},
		cpich-RSCP							NULL
	},
	modeSpecificInfo					CHOICE {
		fdd									SEQUENCE {
			s-Intrasearch						S-SearchQual				OPTIONAL,
			s-Intersearch						S-SearchQual				OPTIONAL,
			s-SearchHCS							S-SearchRXLEV				OPTIONAL,
			rat-List							RAT-FDD-InfoList			OPTIONAL,
			q-QualMin							Q-QualMin,
			q-RxlevMin							Q-RxlevMin
		},
		tdd									SEQUENCE {
			s-Intrasearch						S-SearchRXLEV				OPTIONAL,
			s-Intersearch						S-SearchRXLEV				OPTIONAL,
			s-SearchHCS							S-SearchRXLEV				OPTIONAL,
			rat-List							RAT-TDD-InfoList			OPTIONAL,
			q-RxlevMin							Q-RxlevMin
		}
	},
	q-Hyst-l-S							Q-Hyst-S,
	t-Reselection-S						T-Reselection-S,
	hcs-ServingCellInformation			HCS-ServingCellInformation			OPTIONAL,
	maxAllowedUL-TX-Power				MaxAllowedUL-TX-Power
}

-- Actual value S-SearchQual = IE value * 2
S-SearchQual ::=						INTEGER (-16..10)

-- Actual value S-SearchRXLEV = (IE value * 2) + 1
S-SearchRXLEV ::=						INTEGER (-53..45)

Q-QualMin ::=						INTEGER (-24..0)

-- Actual value Q-RxlevMin = (IE value * 2) + 1
Q-RxlevMin ::=						INTEGER (-58..-13)

MaxAllowedUL-TX-Power ::=			INTEGER (-50..33)

The comments in the ASN.1 give the conversions you need. Q-QualMin is used as it is, in dB. Q-RxlevMin is IE value x 2 + 1, in dBm. S-SearchQual carries s-Intrasearch and s-Intersearch for FDD, and its actual value is IE value x 2, in dB. MaxAllowedUL-TX-Power is in dBm and needs no conversion.

Example 1

Assumption : It is assumed that there is only one Cell is available and cell selection is determined only by S_rxlev and S_qual. If there is any other competing cells around, you have to consider a lot of other factors like absolute measured cell power, priority and various cell search/reselection criteria as well.

CPICH_RSCP = -110 dBm, Qrxlevmin:-58, UE Power Class:3(P_MAX = 23)

UE_TXPWR_MAX_RACH (maxAllowedUL-Tx-Power in SIB3) : 24

CPICH_Ec/N0: -10, Qqualmin:-24

Srxlev = -110 -(-58 x 2 + 1) - max(24-23,0)

       = -110 - (-115) - max(1,0)

       = -110 + 115 -1

       = 4

Squal=(-10)-(-24)

     = 14

Squal > 0, Srclev > 0. So The UE will select this cell.

Example 2

Assumption : It is assumed that there is only one Cell is available and cell selection is determined only by S_rxlev and S_qual. If there is any other competing cells around, you have to consider a lot of other factors like absolute measured cell power, priority and various cell search/reselection criteria as well.

CPICH_RSCP = -110 dBm, Qrxlevmin:-58, UE Power Class:3(P_MAX = 23)

UE_TXPWR_MAX_RACH (maxAllowedUL-Tx-Power in SIB3) : 0

CPICH_Ec/N0: -10, Qqualmin:-24

Srxlev = -110 -(-58 x 2 + 1) - max(0-23,0)

       = -110 - (-115) - max(-23,0)

       = -110 + 115 - 0

       = 5

Squal=(-10)-(-24)

     = 14

Squal > 0, Srclev > 0. So The UE will select this cell.

Example 3

Assumption : It is assumed that there is only one Cell is available and cell selection is determined only by S_rxlev and S_qual. If there is any other competing cells around, you have to consider a lot of other factors like absolute measured cell power, priority and various cell search/reselection criteria as well.

CPICH_RSCP = -110 dBm, Qrxlevmin:-58, UE Power Class:3(P_MAX = 23)

UE_TXPWR_MAX_RACH (maxAllowedUL-Tx-Power in SIB3) : 33

CPICH_Ec/N0: -10, Qqualmin:-24

Srxlev = -110 -(-58 x 2 + 1) - max(33-23,0)

       = -110 - (-115) - max(10,0)

       = -110 + 115 - 10

       = -5

Squal=(-10)-(-24)

     = 14

Squal > 0, Srxlev < 0. So The UE will not select this cell.

All three examples read Qrxlevmin as IE value x 2 + 1, so the IE value -58 gives -115 dBm. Only Pcompensation changes from one example to the next. In Example 3, SIB3 allows 33 dBm on the RACH, but a power class 3 UE can send only 23 dBm. So this UE loses 10 dB in Srxlev, and that loss makes Srxlev negative.

  • Both values must be above 0 : Squal checks the quality in dB, and Srxlev checks the level in dB.
  • Convert the IE before you calculate : Q-RxlevMin is IE value x 2 + 1 in dBm, and Q-QualMin is used as it is.
  • Pcompensation penalises a weaker UE : a UE that cannot reach UE_TXPWR_MAX_RACH loses the difference in Srxlev.

Intra Search Criteria

After the UE camps on a cell, it keeps measuring the serving cell. It does not have to measure the neighbour cells on the same frequency all the time, which saves battery. The serving cell Squal decides when the intra-frequency measurements must start.

When the following condition meets :

When UE is in HPLMN

    (Squal = Qqualmeas – Qqualmin) <= s-Intrasearch

    or

    s-Intrasearch is not configured

When UE is in VPLMN

    (Squal = Qqualmeas – (Qqualmin + QqualminOffset)) <= s-Intrasearch

    or

    s-Intrasearch is not configured

     

If you want to let UE to perform Intracell search all the time, the easiest way would be to set as follows.

    i) set s-Intrasearch to be MAX value

    ii) set Qualmin to be MAX value

In TS 25.304 this is rule 1 of the measurement rules for cell re-selection when HCS is not used. The rules apply in Idle, URA_PCH and CELL_PCH states. If Squal is above Sintrasearch, the UE may choose not to perform intra-frequency measurements. The rule says "may", so a UE is allowed to measure anyway. If Squal is at or below Sintrasearch, or if Sintrasearch is not sent, the UE performs intra-frequency measurements.

The value in SIB3 is not in dB yet. For FDD, s-Intrasearch has the type S-SearchQual, and its actual value is IE value x 2. For example, the SIB3 picture in the Cell Selection Criteria section shows s-Intrasearch 0, which means 0 dB. A UE with Squal of 14 dB, as in the examples, may then skip intra-frequency measurements.

  • Squal is compared with Sintrasearch : at or below the threshold, the UE must measure its own frequency.
  • A missing s-Intrasearch means measure always : the UE performs intra-frequency measurements when the IE is not sent.
  • Actual value is IE value x 2 : S-SearchQual is signalled in 2 dB steps.

SIBs for Cell Selection / Reselection

Followings are System Information Block messages that are related to Cell Selection/Reselection. I enabled IEs as much as possible just to show you all the usable IEs. You may not see many of these IEs in real deployment. Which IE and values are used are completely up to each network operators.

SIB 3

SIB3 carries the parameters of the serving cell itself. These are the inputs of the S criterion, the search thresholds and the access restriction. In the capture, the author highlights the rat-List in blue, the two minimum levels in red and the Release 5 scaling extension in green.

Decoded SIB3 from a test setup. Field values are from the capture, not from the specification.

SysInfoType3
    .0.. .... sib4indicator: False
    cellIdentity: 00000000
    cellSelectReselectInfo
        cellSelectQualityMeasure: cpich-RSCP (1)
            cpich-RSCP: NULL
        modeSpecificInfo: fdd (0)
            fdd
                rat-List: 2 items
                    Item 0
                        RAT-FDD-Info
                            rat-Identifier: gsm (0)
                            s-SearchRAT: 10
                            s-HCS-RAT: -53
                            s-Limit-SearchRAT: 0
                    Item 1
                        RAT-FDD-Info
                            rat-Identifier: cdma2000 (1)
                            s-SearchRAT: -16
                            s-HCS-RAT: -53
                            s-Limit-SearchRAT: -16
                q-QualMin: -24
                q-RxlevMin: -45
        q-Hyst-l-S: 0
        t-Reselection-S: 0
        maxAllowedUL-TX-Power: 24
    cellAccessRestriction
        cellBarred: notBarred (1)
            notBarred: NULL
        cellReservedForOperatorUse: notReserved (1)
        cellReservationExtension: notReserved (1)
    v4b0NonCriticalExtensions
        sysInfoType3-v4b0ext
        v590NonCriticalExtension
            sysInfoType3-v590ext
                cellSelectReselectInfo-v590ext
            v5c0NoncriticalExtension
                sysInfoType3-v5c0ext
                    cellSelectReselectInfoTreselectionScaling-v5c0ext
                        non-HCS-t-CR-Max: notUsed (0)
                            notUsed: NULL
                        speedDependentScalingFactor: 0
                        interFrequencyTreselectionScalingFactor: 4
                        interRATTreselectionScalingFactor: 4

With the TS 25.331 conversions, q-RxlevMin -45 means -89 dBm, and q-QualMin -24 means -24 dB. The IE maxAllowedUL-TX-Power 24 gives a Pcompensation of 1 dB for a 23 dBm UE. In the rat-List, s-SearchRAT is S-SearchQual, so 10 for GSM means 20 dB and -16 for cdma2000 means -32 dB. The capture carries no s-Intrasearch and no s-Intersearch. So this cell asks the UE to perform intra-frequency and inter-frequency measurements all the time.

SIB 11

SIB11 describes the neighbour cells rather than the serving cell. Each neighbour carries its own cellSelectionReselectionInfo, which the author highlights in red, so the UE can check the S criterion of that neighbour too.

Decoded SIB11 from a test setup. Field values are from the capture, not from the specification.

SysInfoType11
    ..0. .... sib12indicator: False
    measurementControlSysInfo
        use-of-HCS: hcs-not-used (0)
            hcs-not-used
                cellSelectQualityMeasure: cpich-RSCP (0)
                    cpich-RSCP
                        intraFreqMeasurementSysInfo
                            intraFreqMeasurementID: 1
                            intraFreqCellInfoSI-List
                                removedIntraFreqCellList: removeNoIntraFreqCells (2)
                                    removeNoIntraFreqCells: NULL
                                newIntraFreqCellList: 1 item
                                    Item 0
                                        NewIntraFreqCellSI-RSCP
                                            intraFreqCellID: 0
                                            cellInfo
                                                cellIndividualOffset: -20
                                                referenceTimeDifferenceToCell: accuracy40 (0)
                                                    accuracy40: 0
                                                modeSpecificInfo: fdd (0)
                                                    fdd
                                                        primaryCPICH-Info
                                                            primaryScramblingCode: 9
                                                        primaryCPICH-TX-Power: 28
                                                        .1.. .... readSFN-Indicator: True
                                                        ..0. .... tx-DiversityIndicator: False
                                                cellSelectionReselectionInfo
                                                    q-OffsetS-N: -50
                                                    maxAllowedUL-TX-Power: 24
                                                    modeSpecificInfo: fdd (0)
                                                        fdd
                                                            q-QualMin: -24
                                                            q-RxlevMin: -45
                            intraFreqMeasQuantity
                                filterCoefficient: fc2 (2)
                                modeSpecificInfo: fdd (0)
                                    fdd
                                        intraFreqMeasQuantity-FDD: cpich-RSCP (1)
                            intraFreqReportingQuantityForRACH
                                sfn-SFN-OTD-Type: noReport (0)
                                modeSpecificInfo: fdd (0)
                                    fdd
                                        intraFreqRepQuantityRACH-FDD: cpich-EcN0 (0)
                            maxReportedCellsOnRACH: currentCell (1)
                            reportingInfoForCellDCH
                                intraFreqReportingQuantity
                                    activeSetReportingQuantities
                                        dummy: noReport (0)
                                        .... .0.. cellIdentity-reportingIndicator: False
                                        .... ..0. cellSynchronisationInfoReportingIndicator: False
                                        modeSpecificInfo: fdd (0)
                                            fdd
                                                1... .... cpich-Ec-N0-reportingIndicator: True
                                                .0.. .... cpich-RSCP-reportingIndicator: False
                                                ..0. .... pathloss-reportingIndicator: False
                                    monitoredSetReportingQuantities
                                        dummy: noReport (0)
                                        .... .0.. cellIdentity-reportingIndicator: False
                                        .... ..1. cellSynchronisationInfoReportingIndicator: True
                                        modeSpecificInfo: fdd (0)
                                            fdd
                                                1... .... cpich-Ec-N0-reportingIndicator: True
                                                .0.. .... cpich-RSCP-reportingIndicator: False
                                                ..0. .... pathloss-reportingIndicator: False
                                measurementReportingMode
                                    measurementReportTransferMode: acknowledgedModeRLC (0)
                                    periodicalOrEventTrigger: eventTrigger (1)
                                reportCriteria: intraFreqReportingCriteria (0)
                                    intraFreqReportingCriteria
                        interFreqMeasurementSysInfo
                            interFreqCellInfoSI-List
                                newInterFreqCellList: 1 item
                                    Item 0
                                        NewInterFreqCellSI-RSCP
                                            interFreqCellID: 0
                                            frequencyInfo
                                                modeSpecificInfo: fdd (0)
                                                    fdd
                                                        uarfcn-DL: 9800
                                            cellInfo
                                                modeSpecificInfo: fdd (0)
                                                    fdd
                                                        primaryCPICH-Info
                                                            primaryScramblingCode: 11
                                                        primaryCPICH-TX-Power: 28
                                                        ...0 .... readSFN-Indicator: False
                                                        .... 0... tx-DiversityIndicator: False
                                                cellSelectionReselectionInfo
                                                    q-OffsetS-N: 3
                                                    maxAllowedUL-TX-Power: 24
                                                    modeSpecificInfo: fdd (0)
                                                        fdd
                                                            q-QualMin: -24
                                                            q-RxlevMin: -45
                interRATMeasurementSysInfo
                    interRATCellInfoList
                        removedInterRATCellList: removeAllInterRATCells (0)
                            removeAllInterRATCells: NULL
                        newInterRATCellList: 1 item
                            Item 0
                                NewInterRATCell-B
                                    interRATCellID: 0
                                    technologySpecificInfo: gsm (0)
                                        gsm
                                            cellSelectionReselectionInfo
                                                q-Offset1S-N: -50
                                                q-Offset2S-N: -50
                                                maxAllowedUL-TX-Power: -50
                                                hcs-NeighbouringCellInformation-RSCP
                                                    hcs-CellReselectInformation
                                                        penaltyTime: notUsed (0)
                                                            notUsed: NULL
                                                modeSpecificInfo: fdd (0)
                                                    fdd
                                            interRATCellIndividualOffset: -50
                                            bsic
                                                ncc: 0
                                                bcc: 0
                                            frequency-band: dcs1800BandUsed (0)
                                            bcch-ARFCN: 0

The capture lists three neighbours. The first is an intra-frequency cell with primary scrambling code 9. The second is an inter-frequency cell on UARFCN 9800 with scrambling code 11. The third is a GSM cell in the DCS 1800 band. q-OffsetS-N is an offset in dB between the serving cell and that neighbour, and it is used in the ranking for cell reselection. The value -50 is the lowest value of Q-OffsetS-N, INTEGER (-50..50). The GSM entry also shows maxAllowedUL-TX-Power -50, which is the lowest value of that IE. These extreme values match the note above, which says that the IEs were enabled to show all of them, not to model a real network.

SIB 19

SIB19 carries the absolute priorities of the serving UTRA layer, of GSM and of E-UTRA. When priorities are present, the UE uses the priority based rules of TS 25.304 for those layers instead of the search thresholds above.

Decoded SIB19 from a test setup. Field values are from the capture, not from the specification.

SysInfoType19
    utra-PriorityInfoList
        utra-ServingCell
            priority: 3
            s-PrioritySearch1: 0
            s-PrioritySearch2: 0
            threshServingLow: 0
    gsm-PriorityInfoList: 1 item
        Item 0
            GSM-PriorityInfo
                gsmCellGroup
                    startingARFCN: 0
                    bandIndicator: dcs1800 (0)
                    followingARFCNs: explicitListOfARFCNs (0)
                        explicitListOfARFCNs: 0 items
                priority: 0
                qRxLevMinGSM: -58
                threshXhigh: 0
                threshXlow: 0
    eutra-FrequencyAndPriorityInfoList: 1 item
        Item 0
            EUTRA-FrequencyAndPriorityInfo
                earfcn: 300
                measurementBandwidth: mbw25 (2)
                priority: 4
                qRxLevMinEUTRA: -55
                threshXhigh: 9
                threshXlow: 9
                eutra-blackListedCellList: 2 items
                    Item 0
                        EUTRA-BlacklistedCell
                            physicalCellIdentity: 100
                    Item 1
                        EUTRA-BlacklistedCell
                            physicalCellIdentity: 102
                1... .... eutraDetection: True
    v920NonCriticalExtensions
        sysInfoType19-v920ext
            utra-PriorityInfoList-v920ext
                threshServingLow2: 0
            eutra-FrequencyAndPriorityInfoList-v920ext: 1 item
                Item 0
                    EUTRA-FrequencyAndPriorityInfo-v920ext
                        qqualMinEUTRA: -34
                        threshXhigh2: 0
                        threshXlow2: 0
        va80NonCriticalExtensions
            sysInfoType19-va80ext

In the capture, the serving UTRA cell has priority 3, GSM has priority 0 and the E-UTRA frequency EARFCN 300 has priority 4. E-UTRA is therefore a higher priority layer, and the UE shall perform measurements on it. For layers of equal or lower priority, such as GSM here, the UE may skip the measurements while SrxlevServingCell is above Sprioritysearch1 and SqualServingCell is above Sprioritysearch2. For reselection to E-UTRA, the E-UTRA cell must exceed Threshx,high. The IE threshXhigh 9 means 18 dB, because the actual value is IE value x 2, and qRxLevMinEUTRA -55 means -110 dBm.

One field name in the capture differs from the current ASN.1. The capture shows eutra-blackListedCellList, while the current TS 25.331 names the same field eutra-exclude-ListedCellList. The capture was left as it was recorded.

  • SIB3 is about the serving cell : Qqualmin, Qrxlevmin, the search thresholds and the barring status.
  • SIB11 is about the neighbours : each neighbour has its own offsets and its own minimum levels.
  • SIB19 is about priorities : a higher priority layer is always measured, and lower layers depend on Sprioritysearch1 and Sprioritysearch2.

Inter Search Criteria

Inter-frequency measurements cost more than intra-frequency ones, because the UE must retune its receiver. So the network sets a separate threshold for them, s-Intersearch, which works in the same way as s-Intrasearch.

When the following condition

When UE is in HPLMN

    (Squal = Qqualmeas – Qqualmin) <= s-Intersearch

    or

    s-Intersearch is not configured

When UE is in VPLMN

    (Squal = Qqualmeas – (Qqualmin + QqualminOffset)) <= s-Intersearch

    or

    s-Intersearch is not configured

     

If you want to let UE to perform inter-frequency search all the time, the easiest way would be to set as follows.

    i) set s-Intersearch to be MAX value

    ii) set Qualmin to be MAX value

This is rule 2 of the same TS 25.304 clause, and it has more conditions than rule 1. If Squal is above Sintersearch, the UE may choose not to perform inter-frequency measurements. When SsearchHCS is signalled, Srxlev must also be above SsearchHCS for that choice. When an MBMS preferred layer is indicated and the serving cell is not on it, the UE shall still measure the MBMS preferred layer.

The rule applies only when absolute priorities for inter-frequency layers are not provided. When SIB19 gives priorities, the priority based rules of the SIB 19 section replace this threshold.

  • Squal is compared with Sintersearch : at or below the threshold, the UE must measure the other frequencies.
  • SsearchHCS can force the measurement : a low Srxlev triggers inter-frequency measurements even with a good Squal.
  • SIB19 priorities replace this rule : with absolute priorities, the UE follows Sprioritysearch1 and Sprioritysearch2 instead.

Troubleshoot for Cell Selection

You may think Cell Selection (or Reselection) would be relatively easy to troubleshoot, but in reality it is not simple at all. First, not so many people has clear understanding of the cell selection criteria itself. Even though you have clear understanding of all these 3GPP details, there are technical issues that make this troubleshooting difficult. The first step for the troubleshooting is to guarantee / verify the following two factors.

    i) Signal Quality from the network (or UE Test Equipment) is good enough in whole power range of the test

    ii) Signal detection/decoding capability of UE is good enough in whole power range of the test

Item ii) is relatively easy comparing to item i) if you have UE side logging tool and skill to analyze the log very in detail.

The problem is item i). Usually Cell Selection test is done in very low power. One of the most accurate way to verify the signal quality of any transmitter is to use Vector Signal Analyzer and measure EVM or CDP(Code Domain Power. See some example ). But the problem is that none of the vector signal analyzer (as far as I know) can decode/analyze the modulated signal at such a lower power level (e.g, under -100 dBm). Technically, if you have very good quality of amplifier with high dynamic range, you can use it to amplify the signal from the network and then put it into spectrum analyzer. But in reality it would be difficult to use such a complicated setup for day-to-day troubleshooting.

Therefore, in real life of UE testing.. if you don't have detailed UE logging and the skills to analyze them, the troubleshooting process would be almost completely like 'matter of luck'.

If you have UE side log, you may check following items one by one. (In this step, I assume that the signal quality from NodeB is good enough)

 

  • i) Check P-CPICH RSCP and Ec/Io (If UE log fail to print this value, you may check P-SCH, S-SCH detection.. but usually we take it as failure without further checking. But technically, you have to check P-SCH, S-SCH detection before you give up)
  • ii) Check if UE log successfully print out PSC (Primary Scrambling Code) and see it matches the PSC of the NodeB that you want the UE to select.
  • iii) Check if UE successfully decode MIB
  • iv) Check if UE sucessfully decode all the SIBs scheduled in MIB
  • v) Check P-CPICH power and quality meets the cell selection criteria (To do this, UE needs to successfully decode SIB3 at least.) Usually, most of UE log would print out Squal and Srxlev value if you set proper filter in the logging tool so you don't have to calculate them manually.
  • vi) If both Squal and Srxlev is greater than 0, then check if UE successfully decoded all the scheduled SIBs (or at least SIB 1, 3, 5)
  • vii) If UE successfully decoded the necessary SIBs, it should send PRACH. If UE does not send PRACH even at this condition, it is UE side protocol issue or sometimes I saw some UE manufacturer put some hard limiter in such a way that UE does not send PRACH under a certain value regardless of cell selection criteria.
  • vii) If UE send PRACH, check if the PRACH power is big enough for network reception range. (The proper PRACH power is also determined by a complicated process called 'Open Loop Power Control')
  • viii) If UE has sent PRACH with proper power and NodeB (or Test equipment) fail to detect it, then network side debugging should be done.

Reference

[1] TS 25.304 UMTS; UE Procedures in idle mode and procedures for cell reselection in connected mode - v19.1.0, clause 4.3, clause 5.2.3 and clause 5.2.6.1

[2] TS 25.331 UMTS; RRC Protocol Specification - v19.0.1, clause 8.1.3 and the ASN.1 of clause 11.3

[3] Inter-System Cell Reselection Parameter Optimization in UMTS by Qualcomm

[4] 3GPP TS 25.133 v19.0.0 - Requirements for support of radio resource management, FDD - Table 9.4 and Table 9.32