The telephony framework reports cellular network signal strength using various signal measurement types. You can then use these reported signal strengths to control how signal bars are displayed on your device and customize the signal strength reporting criteria from the modem. Starting from Android 11, you can customize multiple signal measurement types that the framework uses to report the signal strength of 4G LTE and 5G NR radio access networks (RANs).
The framework uses three functions for reporting signal strength: signal strength reporting criteria, signal strength thresholds, and signal levels. These functions affect how Android communicates with the modem hardware, for example, preventing unnecessary signal strength reporting by the modem to reduce power usage and improve system health. The functions are defined as:
- Signal strength reporting criteria: The conditions defined by Android to trigger signal strength reporting from the modem.
- Signal strength thresholds: A list of four integers used for suggesting signal level and signal strength reporting criteria.
- Signal levels: Five levels (
GREAT) that correspond to signal strength.
Support for multiple signal measurement types
For devices running Android 11 or higher, the following signal measurement types are customizable for NGRAN (5G LTE) and EUTRAN (4G LTE) networks. These measurements are used for the signal strength reporting criteria, signal strength thresholds, and signal levels functions.
- NGRAN (5G NR): SSRSRP, SSRSRQ, SSSINR
- EUTRAN (4G LTE): RSRP, RSRQ, RSSNR
To enable the device to set the signal strength reporting criteria for each RAN,
hardware interface. For each RAN, multiple signal measurement types are
supported. If none of the reporting criteria for a measurement type is enabled
for a RAN, the reporting criteria for that RAN is defined by the Android
framework. When the reporting criteria of a measurement type is enabled for a
RAN, the reporting criteria of other measurement types are disabled.
To define the signal strength thresholds for 4G and 5G networks, use the following carrier config keys:
To select multiple measurements for a RAN, use the following carrier config keys:
To validate your implementation, use the
CTS test in
Use VTS for testing