NR SA - Cell Reselection
The purpose of this tutorial is to show you how to configure the test setup for Cell Reselection in NR. Cell Reselection is the process where UE changes its serving cell in (during) the idle mode. UE perform Cell Reselection when a various conditions from the current cell and the target cell(neigbhour cell) meet the specific cell reselection criteria (mostly specified by SIB).
Table of Contents
Introduction
Cell Reselection in 5G New Radio (NR) is a fundamental radio resource management procedure that governs how a User Equipment (UE) autonomously selects and switches its serving cell while operating in idle mode. This mechanism is crucial for maintaining seamless mobility and optimal radio conditions as the UE moves through various network coverage areas. The decision-making process for cell reselection is heavily influenced by parameters broadcasted in System Information Blocks (SIBs), which define specific selection and reselection criteria such as signal strength, cell priorities, and threshold values. Unlike handovers, which are network-controlled and occur during connected mode, cell reselection is a UE-driven process that relies on continuous measurements and evaluation of neighbouring cells based on the configured criteria. Architecturally, this process involves close interaction between the physical layer (for radio measurements), the Radio Resource Control (RRC) layer (for managing criteria and SIB parsing), and the UE’s mobility management functions. The significance of accurate and efficient cell reselection lies in its direct impact on user experience, network reliability, and resource utilization; improper configuration or malfunction can lead to service interruptions, increased battery drain, or coverage gaps. In the broader 5G ecosystem, cell reselection ensures robust connectivity across heterogeneous networks—such as transitions between NR, LTE, and legacy technologies—thereby supporting advanced mobility, low-latency applications, and ubiquitous service continuity. This tutorial focuses on the practical aspects of configuring and analyzing cell reselection in a test environment, emphasizing the importance of UE-side logging and troubleshooting to understand the underlying decision logic and measurement evaluations.
-
Context and Background
- Cell reselection is a critical process in NR (New Radio) networks, ensuring that UEs maintain optimal connectivity by autonomously switching between cells during idle mode.
- The procedure is governed by criteria defined in SIBs (System Information Blocks) and executed entirely by the UE, making it a key area for UE-based analysis and troubleshooting.
- Effective cell reselection supports seamless mobility, network reliability, and efficient radio resource utilization in 5G environments.
-
Relevance and Importance of the Tutorial
- This tutorial addresses the configuration and test setup for cell reselection, a foundational capability for real-world 5G deployments and test scenarios.
- Understanding cell reselection is essential for engineers involved in network optimization, device validation, and troubleshooting mobility-related issues.
- The focus on UE-side logging and analysis provides practical insights, as the reselection process is not directly observable from the gNB/eNB side during idle mode.
-
Learning Outcomes
- Gain a comprehensive understanding of cell reselection mechanisms and the role of UE-side decision-making in NR networks.
- Learn how to configure and evaluate test setups for cell reselection, including relevant criteria and measurement parameters.
- Develop practical skills for collecting and analyzing detailed UE logs (e.g., from Amarisoft UEsim or commercial DUTs) to troubleshoot and optimize the reselection process.
-
Prerequisite Knowledge and Skills
- Familiarity with NR/LTE network architecture, specifically the roles of gNB/eNB and UE in mobility management.
- Understanding of radio interface protocols, particularly RRC and SIB configuration in 5G NR.
- Basic experience with UE logging tools and interpretation of measurement and event logs.
- General knowledge of test environments and procedures for wireless communications systems.
Summary of the Tutorial
This tutorial provides a detailed procedure for configuring and executing an NR/SA intra-frequency cell reselection test using Amarisoft UEsim or a commercial UE as the Device Under Test (DUT). The test validates cell reselection behavior in a standalone NR environment, focusing on intra-frequency scenarios.
-
Test Setup:
- Two main test setups are described:
- Setup A: For commercial UEs, a standard RF connection test environment is used.
- Setup B: For Amarisoft UEsim, the setup typically uses a direct cable connection to ensure measurement accuracy and reduce interference.
- SIM card provided with the system is used without modification.
- Two main test setups are described:
-
Key Configuration Parameters:
- Critical parameters highlighted include plmn_list, tac (Tracking Area Code), and sib_sched_list (with focus on SIB2 and SIB3 configuration).
-
Test 1: NR/SA-Intra Frequency Cell Reselection
-
Configuration Procedure:
- The gNB is configured using a modified configuration file to support two cells, each with its own cell ID and potentially different TAC values.
- Neighbour cell list (ncell_list) is set so that each cell identifies the other as a neighbor.
- SIB2 and SIB3 ASN files are used for external SIB transmission, with SIB3 listing the neighbor cell’s physical cell ID.
- On UEsim, band, dl_nr_arfcn, and ssb_nr_arfcn are set to match gNB; minimal changes are required as most configuration is driven by the gNB’s RRC messaging.
- FDD or TDD mode can be used; consistency between gNB and UE is necessary.
-
Test Execution Steps:
- Verify that both cells are configured correctly, with different TAC values to facilitate tracking area update signaling after reselection.
- Initially, reduce the transmit power of the second cell to ensure the UE camps on the first cell at power-on.
- On UEsim, use the cells command to confirm that both cells are detectable.
- Power on the UE and allow it to complete the attach process, confirming connection to the first cell.
- Trigger cell reselection by increasing the power of the second cell and/or decreasing the power of the first cell so that the UE’s measurement criteria favor the second cell.
- Observe that the UE performs a tracking area update (due to TAC change) upon reselection, indicating successful cell change.
-
Log Analysis Methodology:
- Primary analysis is performed on the UE side, as the reselection process is UE-driven.
- Verify that:
- TACs in SIB1 are correctly assigned to each cell.
- Neighbour cell information in SIB3 is accurate.
- Cell selection and reselection criteria (e.g., RSRP, RSRQ, q_rxlev_min, Srxleve) are met as expected.
- UE logs show attach to the initial cell, idle state entry, and subsequent measurement reports.
- After power change, UE log shows reselection to the second cell and triggers a tracking area update.
- gNB logs are primarily for reference, as the signaling related to reselection is mainly handled by the UE.
-
Configuration Procedure:
Summary of Procedure:
- Configure two gNB cells with appropriate neighbour lists and TAC values using Amarisoft configuration files.
- Ensure SIB2 and SIB3 are transmitted and reference the correct neighbor cell.
- Start with the UE camped on the first cell by managing cell power settings.
- Adjust cell power to meet reselection criteria and trigger cell change on the UE.
- Validate the reselection and any associated signaling (e.g., tracking area update) via UE logs.
Note: For troubleshooting, focus on detailed UE logs to confirm measurements, reselection criteria, and cell reselection events. Adjust configuration and cell power as needed to ensure test validity.
Test Setup
Test setup for this tutorial is as shown below.
- SIM Card used in this tutorial is the one delivered with the system as it is.
- If you want to change the configuration, The tutorial Configuration Guide would help
[Setup A]
If you are using a commercial UE (or anything that is nto Amarisoft UEsim), you may use this setup

[Setup B]
If you are using Amarisoft UEsim, you may use this setup. This is the test configuration that I used most of the case. For the accuracy of the measurement, I would suggest to connect them with cable whenever possible.

Key Configuration Parameters
Followings are important configuration parameters for this tutorial. You may click on the items for the descriptions from Amarisoft documents.
Test 1 : NR/SA-Intra Frequency
This is to show how to configure the test setup for NR-SA intra frequency cell reselection and perform the test. In this test, I will use Amarisoft UEsim as a DUT, but with the same gNB configuration you can use your own UE as DUT.
Configuration
I used the configuration file gnb-sa-reselection-intra.cfg which is copied from gnb-sa-ho.cfg and modified. For intra cellular cell reselection, we would configure SIB3. Ideally we would need two different sib3 for each of the cells, but in this test I would use single sib3 file and use it for both cell. With this sibs, the reselection should work from the first cell to second cell.

On UEsim, I used ue-nr-sa-reselection-intra.cfg which is copied and modified from ue-nr-2cc-sa.cfg

Configured in gnb-sa-reselection-intra.cfg is as shown below. In this configuration, I configured the cell to be a FDD cell (NR_TDD 0) but it doesn't matter much, you can use whatever you want.
The important part is is to properly configure ncell_list(neighbour cell list) and plmn_list properly. As you see here, cell_id 2 is configured in ncell_list of the cell_id 1 and cell_id 1 is configured in ncell_list of the cell_id 2.


Another important thing is to configure SIB transmission related to intra frequency cell reselection. There are two SIBs related to this process SIB2 and SIB3. I configured the transmission of two external SIB asn files (sib2_nr.asn and sib3_nr.asn) which comes with the installation.

This is the contents of SIB3 (sib3_nr.asn). Assuming that the first cell (PCI 500) is the serving cell, I set physCellId 501 (PCI 501) as the neigbhour cell.

Configured in ue-nr-sa-reselection-intra.cfg is as shown below. UEsim side configuration is very simple. I just set the TDD 0 to set it for FDD which is supposed to match with gNB configuration. And set band, dl_nr_arfcn and ssb_nr_arfcn according to gNB configuration. Everything else I just leave it as in default. All the necessary configuration will be automatically configured by RRC message that gNB send out.


Perform the Test
You may need to pay a little bit closer attention to test execution process because you need to make it sure that you properly configured gNB to trigger cell reselection on UE side.
First it is alway good idea to check cell phy and cell configuration and make it sure that all the cells are configured as intended. One thing I want to highlight here is that cell 1 and cell 2 has different TAC to trigger some signaling (Tracking Area Upate in this case) after the cell reselection.

First, I descreased the power of cell 2 lower. This is to make it sure that the UE camp onto cell 1 on power-on. (

Now on UEsim side, it would be good idea to try 'cells' command and make it sure that both of the cells are detected (If you see PCI printed, it mean at least PSS/SSS of the cell is detected and basic PHY sync is established).

Power on UE and let it complete the attach. Note that UE is connected to Cell 1 (The first cell in this test)

Once UE is in Idle mode, change the cell power to trigger cell reselection. You may increase the power of the second cell and decrease the power of the first cell.

If the reselection is performed on UE side, UE would go through registration process for tracking area code update and you will see the connected cell id is changed to 2.

Log Analysis
For cell reselection process, you wouldn't see anything much from gNB log since basically the cell selection is UE side process. So if cell reselection is not done, in most case you need to look into UE side log for troubleshoot. Even when there is issues with gNB (e.g, cell power is not properly configured to trigger the cell reselection, it is hard to find this from gNB log), you would need to check the measured cell power on UE side log.
UEsim

First check if TAC(Tracking Are Code) is configured in SIB1 of the first cell as intended.

Then make it sure the TAC of the second cell (target cell in this test) is set differently from the first cell.

Now check if intra frequency cell reselection criteria for the first cell is configured as intended.

Now make it sure that the neighbour cell of the first cell is configured as intended(

After power_on on UE sim, you would see the logs as follows.
The first step is the result of PLMN selection. It shows that UE selected PLMN 001-01 which is as intended.

Then UE performs measurement for all the cells it can detect (both the serving cell and neighbour cells) and prints the result as shown here. As you may notice, Amarisoft UEsim prints out not oly rsrp, rsrq but also other parameters like q_rxlev_min, q_qual_min, Srxleve, Squal so that you can easily check if the selection / reselection criteria is met. I think this is a cool feature of Amarisoft UEsim.
Here you see both cells (Cell #0, Cell #1) meets the criterial of the cell selection, but the rsrp of the first cell (Cell #0) is higher than the second cell, so UE would select to the first cell (Cell #0)

You see that UE is attaching to Cell #0 (the first cell).

Once UEsim completes the attach process and gets into connected state, UEsim performs connected mode cell measurement and prints the result. This is not important for this tutorial, but it will be important for handover scenario.

Some time after the initial attach, UE gets into idle mode if there is no traffic from higher layer. Once UE gets into Idle state, UEsim performs "Cell Reselection measurement" and prints the result.
In this specific measurement, PCI 500 cell (the first cell, current serving cell) still has higher RSRP so reselection does not work.

After every measurement, UEsim prints the status of reselection. Since the reselection has not been done, the reselection info shows the PCI of the first cell (PCI 500 in this case).

At this point, I changed the cell power of the two cell in such a way that the power of the second cell (PCI 501) gets higher than the first cell (PCI 500).
Now Cell Reselection Measurement result shows that the RSRP of PCI 501 cell is higher than the RSRP of PCI 500 Cell. This meets the reselection crigeria and triggers Cell Reselection on UEsim.

Now the Reselection Info prints the changed PCI which indicates the cell (Serving Cell) changed.

Once reselection is complete, UEsim prints 'Cell Reselection : arfcn xxxxx and pci xxx'.

Now UEsim start decoding SIBs for the reselected cell (Cell #1 in this case).

After decoding SIBs, UEsim notice TAC(tracking area code) is different from the previous cell and triggers registration process for TAC update.

After the tracking area update, UEsim gets into idle mode again and start performing Cell Reselection Measurement.

From this point, the same process as explained above repeats

gNB
For the gNB log, I would not put any description since in terms of signaling message it is same as UEsim log. Just as a reference, I put the log only here.
