LTE - CDRX
The purpose of this tutorial is to show you how to configure CDRX. CDRX is one of the mechanisms that are designed to save energy consumpion on UE side. The general logic is to allow UE to go to sleep when there is no data to be received and transmit for a certain time duration. While UE is in sleep (i.e, turning off large portions of PHY process), it can save the energy consumption.
Then what if there is some data to be received short after it gets into the sleep ? CDRX is bascially operate in cylic mode repeating sleep and wake-up. If there is any data to be received by UE while it is in sleep mode, eNB will schedule it in next wake-up cycle. If there is continuous data to be received during the wake-up time, UE would not get into the sleep mode until all the continuous data are received.
This is just to show how to configure CDRX parameters, but it is almost impossible to verify that it is really working as expected. The verification of CDRX should be done on UE side. A few typical ways to verify the CDRX operation on UE side are as follows.
- Check UE log especially on Clocks and PHY processing : When UE gets into sleep mode, a lot of clocks (usually PHY processing related clocks) stops and PHY/MAC processing gets minimized.
- Measure the current consumption : The surest way is to measure the current consumption on UE with high sample rate test equipment. If UE really gets into DRX sleep mode, you may get the current consumption profile something like this.

Image Source : Sharetechnote
Table of Contents
Introduction
Connected Discontinuous Reception (CDRX) is a sophisticated energy-saving mechanism employed within modern wireless communication systems, particularly in LTE and 5G networks. Its primary objective is to reduce power consumption on the User Equipment (UE) side by strategically alternating between active (wake) and inactive (sleep) states based on data transmission needs. Architecturally, CDRX is built into the radio resource control protocol layer, enabling the UE to temporarily power down substantial portions of its physical layer (PHY) processing circuitry when there is no data to be transmitted or received. This process operates in a cyclic manner: the UE periodically wakes at predefined intervals to check for incoming data, then returns to a low-power state if no activity is detected. The eNodeB (eNB) or gNodeB (gNB) coordinates the scheduling of downlink data, ensuring that transmissions are aligned with the UE’s active periods. If data arrives during a sleep phase, it is buffered at the network side and delivered in the next scheduled wake-up cycle. This mechanism is crucial for extending battery life in mobile devices, especially in scenarios where data traffic is intermittent. However, the configuration and optimization of CDRX parameters—such as sleep and wake timers—require careful balancing to avoid negative impacts on latency and user experience. Due to its operation at the lower layers and the complexity of real-world wireless environments, direct verification of CDRX functionality is challenging and typically conducted through device-side logging and current consumption measurements. Configuring CDRX effectively is fundamental for network engineers and device manufacturers aiming to maximize UE energy efficiency without sacrificing connectivity or quality of service.
-
Context of CDRX Technology
- Energy Efficiency in Modern Wireless Networks: CDRX is a key feature in LTE and 5G designed to optimize UE battery life by minimizing unnecessary PHY and MAC processing.
- Operational Principles: Utilizes a cyclic sleep-wake pattern, orchestrated by the eNB/gNB, to balance energy savings with timely data delivery.
- Architectural Placement: Implemented at the radio resource control and PHY layers, integrating deeply with scheduling and power management frameworks.
-
Relevance and Importance of This Tutorial
- Practical Configuration Guidance: Demonstrates how to configure CDRX parameters to achieve optimal trade-offs between power efficiency and network responsiveness.
- Industry Significance: Essential for device OEMs, network engineers, and field testers responsible for deploying and optimizing LTE/5G solutions.
- Real-World Impact: Proper CDRX configuration can substantially extend device battery life, especially in IoT and mobile broadband applications.
-
Learning Outcomes
- Understand CDRX Operation: Gain in-depth knowledge of how CDRX cycles function and interact with both the UE and network infrastructure.
- Master CDRX Parameter Tuning: Learn to configure and fine-tune sleep, wake, and inactivity timers for specific network scenarios.
- Verification Techniques: Acquire practical skills for verifying CDRX functionality using UE logging and current measurement methodologies.
- Troubleshooting: Identify common pitfalls and remedies when configuring or testing CDRX in lab and field environments.
-
Prerequisite Knowledge and Skills
- Technical Background: Familiarity with LTE/5G cellular architecture, including concepts such as eNB/gNB, PHY, MAC, and RRC layers.
- Protocol Understanding: Basic knowledge of radio resource management and power-saving mechanisms in mobile networks.
- Analytical Skills: Ability to interpret device logs and analyze power consumption profiles.
- Equipment Proficiency: Experience with test equipment for current measurement and UE logging tools is beneficial for practical verification.
Summary of the Tutorial
This tutorial details the procedures for testing Connected Mode Discontinuous Reception (CDRX) with both Long and Short DRX cycles in LTE using Amarisoft equipment. The summary below highlights the necessary configuration steps, test execution, and log analysis methodology.
-
Test 1: CDRX - Long/Short Cycle
-
Configuration Steps:
- Begin by copying and modifying the enb.default.cfg to create enb-cdrx.cfg. For the MME, use mme-ims.cfg without modifications.
- Set up the LTE cell with your preferred configuration (e.g., FDD mode, 5 MHz bandwidth with N_RB_DL = 25), but ensure consistency with your test requirements.
- Enable CDRX by configuring the drx_config parameter in mac_config. Key parameters include:
- on_duration_timer
- drx_inactivity_timer
- drx_retransmission_timer
- long_drx_cycle
- short_drx_cycle
- drx_short_cycle_timer
- Optionally, increase the inactivity_timer to prevent the eNB from releasing the RRC connection before the test concludes.
-
Test Execution:
- Check the physical configuration of the cell using the cell phy command to ensure all settings are correct.
- Power on the User Equipment (UE) and verify successful cell attachment.
- Confirm that the CDRX configuration is applied by reviewing the logs.
-
Log Analysis:
- Use trace logs to verify UE registration and diagnose any issues, such as registration failures.
- For in-depth analysis, utilize the WebGUI as recommended in the tutorial.
- Prior to testing, confirm that the UE supports CDRX in its capabilities, specifically in the featureGroupIndicator (FGI) of the UE capability information.
- If the UE does not indicate CDRX support in its capabilities, the Amarisoft eNB will not enable CDRX, regardless of the configuration file settings.
- Initially, CDRX will not be configured during RRC connection setup (as indicated by drx-Config release in mac-MainConfig IE).
- Once UE capability is confirmed, and if both UE and eNB support CDRX, the eNB enables CDRX through RRC Connection Reconfiguration (visible as drx-Config of mac-MainConfig IE).
-
Configuration Steps:
This test procedure ensures thorough validation of CDRX configuration and operation by combining systematic setup, execution, and comprehensive log analysis.
Test Setup
Test setup for this tutorial is as shown below.

Key Configuration Parameters
Followings are important configuration parameters for this tutorial. You may click on the items for the descriptions from Amarisoft documents.
- drx_config: In this link, you would get the descriptions for all the items listed below
- on_duration_timer
- drx_inactivity_timer
- drx_retransmission_timer
- drx_ul_retransmission_timer
- long_drx_cycle
- short_drx_cycle
- drx_short_cycle_timer
Test 1 : CDRX - Long/Short Cycle
This Test is to show how to configure CDRX with both Long and Short DRX cycle in LTE.
Configuration
In this tutorial, I used enb-cdrx.cfg which is copied and modified from enb.default.cfg.

For mme, I used mme-ims.cfg without any change.

Following is the configuration in enb-cdrx.cfg
You can use any LTE configuration in terms of duplex mode and channel bandwidth etc. In this test, I used the detault LTE configuration which is FDD (TDD = 0) and channel bandwidth 5Mhz (N_RB_DL = 25)

In order to enable cdrx, you need to configure drx_config parameter with all the necessary details in mac_config. The details commonly used for drx_config are on_duration_timer, drx_inactivity_timer, drx_retransmission_timer, long_drx_cycle, short_drx_cycle and drx_short_cycle_timer.

This configuration is not mandatory, but I extended the timer (inactivity_timer)so that eNB does not release the RRC before starting test.

Perform the Test
Check the physical configuration of the cell by cell phy commandand see if it is configured as intended.

Power on UE and make it sure cell attach completes. For the cdrx configuration being applied, you need to check in the log.

Log Analysis
In this section, you will see how to confirm if UE registration is complete from trace log. You can use the same method to find any issues (e.g, registration failure) for troubleshooting. When UE registration fails, you may use this tutorial to figure out the point of the failure and troubleshoot
NOTE : This section is just to check quickly some important points in the log, but it may be a little bit tricky to do the detailed log analysis (especially for lower layer log analysis). In that case, I strongly recommend you to use WebGUI for the log analysis. You may refer to WebGUI Tutorial
Before you try the test, I strongly suggest you to check on UE capability for your UE and confirm that it support CDRX Cylce. You can check about the CDRX capability in featureGroupIndicator(FGI) IE of UE capability information.

In RRC connection setup, you see CDRX is not configured yet as you seedrx-Config release in mac-MainConfig IE. Amarisoft callbox would not configure CDRX before it confirms about UE capability about CDRX via UE capability information.

If UE notifies that it supports CDRX and eNB configuration has cdrx configuration in it, eNB enables CDRX via RRC Connection Reconfiguration as you see drx-Config of mac-MainConfig IE.
