The proximity sensor in Xiaomi Redmi smartphones is a small but critical component that is responsible for turning off the screen during a phone conversation. When it fails, you face annoying problems: accidental pressing during a call, inability to complete a call, or even complete inoperability of the touch screen. According to service centers, up to 12% of the calls for malfunctioning of the screen are actually related to the failure of this sensor, not the display.
In this article, we will discuss 5 working methods for checking the proximity sensor on any Redmi models - from the budget Redmi. 9A up to the flagship Redmi K60 Pro. You'll learn how to test a sensor without special tools, what secret codes Xiaomi engineers use, and what to do if the sensor does not respond to the cover of the hand. ADB, which works even on blocked loaders.
Signs of malfunction of the proximity sensor
Before you start diagnosing, it is important to make sure that the problem is in the sensor, not a software failure or mechanical damage to the screen.
- π± The screen doesnβt go out when you hold your phone to your ear during a ringing (even if you donβt touch the sensor)
- π The screen is spontaneously turned on/off for no apparent reason.
- π§ When using a headset or Bluetooth headphones, the screen behaves as if the phone is pressed to the ear.
- π οΈ After replacing the glass or display, the sensor stopped working (a common problem with unskilled repairs)
- π The battery is discharged faster than usual β a faulty sensor can constantly interrogate the system
If you know any of these signs, the probability of a proximity sensor breaking is 80-90%, but before you bring your phone to the service, try self-diagnosis, 60% of the time it's software-solved.
β οΈ Note: On Redmi Note 10 Pros and later, the proximity sensor is often combined with the light sensor in one module. If you find out after checking that the automatic brightness adjustment is not working, prepare to replace the entire module.
Method 1: Checking through the engineering menu (codes ##)
The fastest way to diagnose is to use the service codes that Xiaomi leaves behind for hardware testing, which work on all Redmi smartphones regardless of the MIUI version.
Open the Phone app and enter one of the combinations:
##6484##
or
##4636##Once you enter, you will open an engineering menu. Select Hardware Testing β Sensor Test β Proximity Sensor. In some firmware, the path may be different β look for tabs called Sensors or Device Test.
- π’ Green indicator and value 0 with open sensor / 1 (or 5) with closed sensor is serviceable
- π΄ Red indicator or no response to cover β sensor is faulty
- βͺ White screen or Sensor not found error β sensor connection problem (possibly the plume has moved away)
βοΈ What to do if the engineering menu does not open
On some models (e.g. Redmi Note 8 Pro), the engineering menu may be blocked, in which case use alternative methods from the following sections.
Method 2: Testing with the Sensor Test application
If service codes donβt work or you want more details, install a third-party sensor diagnostics app.We recommend CPU-Z (Sensors section) or a dedicated Sensor Test app from Innovative Apps.
After installation:
- Open the app and find the Proximity Sensor tab
- Look at the current value (usually 0.0 cm or Far with the sensor open)
- Cover the sensor with your hand β the value should change to 5.0 cm, Near or similar
- Remove your hand β the value should return to the original
| Showing of the annex | Meaning | Diagnosis. |
|---|---|---|
| Far β Near at the cover | Sensor reacts. | β Corrected. |
| The meaning doesn't change. | Sensor's not responding. | β Faulty or disabled |
| Not available | Sensor not detected. | β οΈ Problem with the plume or firmware |
| Meaning jumps chaotically | Unstable signal | π§ Requires cleaning or replacement |
If the app shows that the sensor is working, but the screen does not go out during the call, the problem may lie in the system settings or conflicts with the MIUI shell.
Settings β Applications β Application Management β Phone β Storage β Clear data
Method 3: Checking through ADB (for advanced users)
This method requires you to connect your phone to your computer, but it's the most accurate method, because it goes directly to your system logs.
- π₯οΈ Computer with installed ADB-Drivers (you can download on the official Android website)
- π± Included debugging by USB on the phone (Settings) β The phone. β Version. MIUI β 7 times to unlock the developer menu, then Settings β Additionally. β For developers β Debugging by USB)
- π USB-cable (preferably original)
Connect your phone to your PC and execute the following commands in the terminal (command line):
adb shell
su
cat /sys/class/sensors/proximity/proximity_rawIf you do not have root rights, use an alternative command:
adb shell dumpsys sensorserviceIn the output, look for a unit called the Proximity Sensor.
mPendingEvents:
sensor=5, handle=5, type=8, accuracy=3, value=[0.0], timestamp=123456789
sensor=5, handle=5, type=8, accuracy=3, value=[5.0], timestamp=123456790Here, value=[0.0] -- the sensor is open, value=[5.0] is closed. If the values don't change or there's no sensor unit, the problem is hardware.
π‘
If the su command doesnβt work but you have a bootloader unlocked, try getting a temporary root via Magisk or a temporary patch using the Temporary Root app (available in XDA Developers).
Method 4: Visual inspection and mechanical inspection
Sometimes the proximity sensor doesn't stop working because of the electronics, but because of contamination or damage, and on Redmi models, it's usually located at the top of the screen, next to the speaker. Here's how to look at it.
- Take a magnifying glass and flashlight β the sensor looks like a small circular hole (sometimes covered by a grid)
- Check if it is dusty, dirty or glue residue (a common problem after glass replacement)
- Gently wipe the area with a soft brush or cotton swab dipped in alcohol
- Blow into the sensor hole β sometimes dust accumulates inside, which blocks the infrared signal.
If your phone has fallen or been repaired, check:
- π§ Integrity of the sensor plume (on models with a collapsible screen it can come off)
- π The gap between the glass and the case β if the glass is installed incorrectly, it can press the sensor
- π Oxidation of contacts on the board (visible only when completely disassembled)
β οΈ Note: On the Redmi Note 11 and later, the proximity sensor is often integrated into the flexible display plume. If the plume is damaged when replacing the screen, the sensor will not work even after flashing.
What does the proximity sensor look like on different Redmi models
Method 5: Software reboot of the sensor
If the sensor is physically functional but not working properly, the problem may be a system services failure.
- Open Settings β Applications β Application Management
- Find the Phone app and select Stop.
- Then go to Settings β System β Resetting Settings β Resetting App Settings
- After resetting, restart your phone.
For models on MIUI 13/14 there is another way:
adb shell cmd phone reset-proximity-calibrationThis command resets the sensor calibration to factory values, and then you run it, test it again through the engineering menu.
If nothing worked, but you are sure that the problem is software, try rolling back the MIUI update or installing custom firmware (for example, Xiaomi.eu).In forums, users of the Redmi Note 8 Pro reported that the sensor starts working after a downgrade from MIUI 14 to MIUI 12.5.
π‘
Before resetting or flashing, be sure to back up your data through Settings β Additional β Backup and Reset.
What to do if the sensor is not working?
If all tests show that the proximity sensor is faulty, you have a few options:
| Option | Cost | Difficulty | Efficiency |
|---|---|---|---|
| Cleaning the sensor with alcohol | 0 β½ | β | 60% (if the problem is pollution) |
| Replacement of sensor plume | 500β1500 β½ | βββ | 90% |
| Phone flashing | 0 β½ | ββ | 30% (if the problem is in the software) |
| Replacement of the entire display module | 3000β8000 β½ | ββββ | 100% |
| Disabling the sensor via ADB | 0 β½ | ββ | Provisional decision |
If you decide to disable the sensor software (for example, while waiting for repair), use the command:
adb shell settings put global proximity_delay 0This will turn off screen delay during the call, but may result in occasional taps.
To completely disable the sensor, root rights and file editing /system/usr/idc/*.idc will be required (not recommended for inexperienced users).