NR SA Power Control


This tutorial is about how to configure UL power control parameter and verify whether the power control works. The type of power control being configured in this tutorial is for closed loop power control. The way this power control works with Amarisoft gNB is as follows.

NOTE : You may use this feature to let UE to transmit max power.  If you set dpc_snr_target very high (e.g, 40) which can never been met, gNB would always send TPC UP and UE Tx power would eventually reach the p_max power set in SIB.

NOTE : Amarisoft Callbox does not support feature to set a specific UL power value or directly set UL max power or set a specific TPC pattern (e.g, All 0, All1, alternating).



Table of Contents



Test Setup


Test setup for this tutorial is as shown below.  This is just for low layer testing, you may not need any complicated IP layer setup.

TestSetup Callbox UE 1sdr 01



Key Configuration Parameters


Followings are important configuration parameters for this tutorial. You may click on the items for the descriptions from Amarisoft documents.




I have used gnb-sa-powercontrol-cl.cfg which is copied and modified from gnb-sa.cfg.

NR SA PowerControl Config 01

I am using the default mme (mme-ims.cfg), ims config as shown below.

NR SA PowerControl Config 02

Following is the configuration in gnb-sa-powercontrol-cl.cfg. dpc_snr_target is the important parameter for UL power control. This parameter is configured separately for PUCCH and PUSCH so that we can set the criteria independently for PUSCH and PUCCH.

If PUCCH SNR estimated by gNB is lower than dpc_snr_target value, gNB send TPC UP via DCI and if the SNR is greater than the value, gNB send TPC down via DCI.

NR SA PowerControl Config 03

NR SA PowerControl Config 04

If PUSCH SNR estimated by gNB is lower than dpc_snr_target value, gNB send TPC UP via DCI and if the SNR is greater than the value, gNB send TPC down via DCI.

NR SA PowerControl Config 05



Perform the Test

Check the cell configuration and see if it is configured as intended.

NR SA PowerControl Run 01

Power on UE and get it attached.

NR SA PowerControl Run 02

Confirm that the attach is complete and UE get the IP address.

NR SA PowerControl Run 03

Try continuous ping from callbox to UE.  Power Control is for Uplink channel power. So we need UE to generate UL channel traffic continuously. Ping would be the simplest way to do it.

NR SA PowerControl Run 04

Tweak rx_gain until it hits snr threshold that you specified in the configuration. Usually the snr would goes under the threshold temperarily and recover quickly as power control works.

NR SA PowerControl Run 05

NR SA PowerControl Run 06

NR SA PowerControl Run 07



Log Analysis

Sample Log

Check UL power profile and see if there is any points where the power control threshold are met. Hit [Analysis] button and then select [SNR] tab and pick the UE ID that you want to check.

NR SA PowerControl Log 01

Check TPC plot and see if how much  and where TPC comments were sent. For this plot, you need to select a specific UE in 'UE ID' pannel. 'Global' would not produce any plot.

NOTE : The plot shown below is the average value of TPC value over a certain time period. If you are using the latest version of callbox software, you can plot the average value and instantaneous value simultaneously as shown in this tutorial.

NR SA PowerControl Log 02

Filter the channels that help you check out TPC operation. I selected BCCH,CCCH,DCCH to display RRC message and selected PDCCH to check TPC value contained in DCI.

NR SA PowerControl Log 03

See if the tpc_comman field in DCI carries the proper values as you intended. tpc_command=2 indicates "increase the power", 1 indicates "stay same" and 0 indicates 'decrease the power'.

NR SA PowerControl Log 04