Why Change the Xiaomi Redmi Buttons and What You Need to Know Before You Start
Repositioning buttons on Xiaomi Redmi smartphones is a popular request among users who want to adapt the device to left-handedness, habits from previous phones or simply optimize ergonomics.In the Redmi line (from Redmi Note 8 Pro to Redmi). 13C) There are several ways to change the location of both the program navigation buttons and the physical keys (volume, power). MIUI, Smartphone models and even regional firmware.
Before you start settings, consider three key points: First, changing physical buttons (such as swap volume buttons) on most Redmi models requires root rights or engineering menus β this is risky for beginners. Second, program navigation buttons (for example, switching from gestures to classic Back-Home-Recent buttons) are configured via a standard menu, but on the other hand, the user can use the same button. MIUI 14 algorithm is different from MIUI 12.Third, some models (e.g., Redmi) K50 Or the Redmi Note 12 Pro.+) They have unique chips like Game Turbo, where the buttons are reassigned separately.
In this article, we'll take a look at all the current ways, from basic MIUI settings to advanced methods with ADB and modified firmware. If your goal is to simply swap the back and recent buttons in the navigation bar, you'll need the first two sections. For deep customization (for example, reassigning the power button to calling Google Assistant), read to the end.
Method 1: Change the navigation buttons through MIUI settings
The easiest and safest method is to use the built-in MIUI options. It is suitable for all Xiaomi Redmi models based on Android 10 and later (including MIUI 12/13/14).
- π Change the "Back" and "Recent" buttons in classic navigation mode.
- π― Switch between gestures and buttons.
- βοΈ Set up the sensitivity of gestures (to MIUI 14).
Step instructions:
- Open the Settings β Display.
- Select the Full Screen Display (on the MIUI 14 may be called the navigation buttons).
- Slip on Navigation Style and select Buttons (if you use gestures).
- Activate the option to swap the "Back" and "Recent" buttons.
Check the version of MIUI in Settings β About the phone
Make sure button mode (not gestures) is enabled
Take a screenshot of the current navigation settings
Close all background applications-->
On Redmi Note 11/12 and later, the menu also offers a navigation bar transparency and animation setting for swipes. If the Swipe option is inactive, you are using regional firmware with limited settings (for example, for India or China), in which case the ADB method (section 4) will help.
β οΈ Note: Redmi A-series (e.g. Redmi) A1+) and Android Go devices may not have the option of reassigning buttons due to a simplified shell.
Method 2: Reassign volume buttons (without root)
The physical volume buttons on Xiaomi Redmi are the default ones for adjusting the sound, but you can reassign them to other activities, such as scrolling pages in your browser or controlling your camera.
The best applications for the task:
- π± Button Mapper (supports) MIUI 12-14, but requires permission to access settings).
- ποΈ Volume Button Controller (specializes in button retention actions).
- π§ MacroDroid (to create complex scenarios, such as "double down" = screenshot").
The following is the Button Mapper:
- Install the app from Google Play.
- Give permission to change system settings (a request will appear after the first run).
- Select the Volume Up button or the Volume Down button.
- Assign an action β for example, the Previous track or Open the app.
- Save the profile and test it.
π‘
If Button Mapper doesnβt see the button, try turning on the option in the app settings "ADB-Execute the command adb shell pm grant flar2.homebutton permission.WRITE_SECURE_SETTINGS computer.
Limitations of the method:
- β Not working. MIUI China (Global Firmware Requirement).
- β Some activities (such as calling Google Assistant) may be blocked by the system.
- β After updating MIUI settings may reset.
Method 3: Use of the Engineering Menu (for advanced)
Engineering menu (#4636##) on Xiaomi Redmi allows you to change the button settings at a low level, but this method is risky - incorrect settings can lead to loss of key functionality. K40).
Instructions:
- Open the Phone app and type ##4636##.
- Go to the Hardware Testing section (may be called Hardware Information).
- Select Audio β Volume.
- In the Key test menu, find the Volume settings. Up/Down Then change their meanings (for example, KEYCODE_VOLUME_UP=25 β KEYCODE_VOLUME_DOWN=24).
β οΈ Note: Some firmwares reset the changes to the engineering menu after rebooting. To fix them, you need to modify the file. /system/usr/keylayout/Generic.kl, What requires an unlocked bootloader.
Alternative path for MediaTek devices (e.g. Redmi 9A):
- π§ Use the app. MTK Engineering Mode (available at APKMirror).
- π Go to Hardware. β Keys and change Keycode settings for buttons.
What to do if the engineering menu does not open?
Method 4: Reassign buttons via ADB (Universal Method)
If the standard methods didnβt work, ADB (Android Debug Bridge) is the most reliable tool for changing buttons on any Xiaomi Redmi.The method works on all versions of MIUI and does not require root rights, but you need permissions to debug over USB.
What can be done through ADB:
| Action. | Team team. | Example of use |
|---|---|---|
| Switch back and recent. | adb shell settings put secure sysui_nav_bar "space,back;home;recent,space" | For left-handed or used to Samsung |
| Turn off the "Recent" button. | adb shell settings put secure sysui_nav_bar "space,back;home,space" | For a minimalist interface |
| Reassign a long press on the power button | adb shell settings put global power_menu_long_press_torch 1 | Turning on a flashlight instead of a power menu |
| Change the volume button when blocking | adb shell settings put global volume_key_cursor_control 1 | Control of the cursor in recovery |
Step-by-step:
- Turn on USB Debugging in Settings β About Phone β MIUI Version (stick 7 times) β Additional β For Developers.
- Connect the phone to the PC and confirm the debugging permission.
- Open the command line (Windows) or terminal (Mac/Linux) and type: Adb devices Make sure the device is defined.
- Execute the required command from the table above.
- Reboot your phone (adb reboot).
π‘
ADB commands are temporary β after resetting or updating MIUI, they will have to be reused, and changes to system files via Magisk or TWRP are required to be made to permanently effect.
Method 5: Magisk Castom Firmware and Modules (for enthusiasts)
If youβre ready for experimentation, custom firmware like LineageOS, Pixel Experience or Xiaomi.eu offers flexible button settings that are not available in stock MIUI. For example, Xiaomi.eu can:
- π Completely reassign any physical buttons (including the power button).
- ποΈ Set up actions for double/triple pressing.
- π Turn off the button vibrations.
To install custom firmware will require:
- Unlock the bootloader through the Mi Unlock Tool (waiting 7-14 days).
- Install TWRP or OrangeFox Recovery.
- Sweep firmware and Magisk (for root rights).
Popular Magisk button management modules:
- π§ Button Mapper (Magisk) β an advanced version of the application with support for system changes.
- π Swap Back/Recents β Specialized module for exchange of navigation buttons.
- ποΈ Volume Key Seek β Media management with volume buttons.
β οΈ Note: On Redmi models with Dynamic RAM Expansion (e.g. Redmi Note 12 Pro)+) Some custom firmware may conflict with the virtual memory function. β Additionally. β Memory.
Frequent problems and their solutions
When you change buttons on Xiaomi Redmi, users experience typical errors. Here's how to fix them:
| Problem. | Reason. | Decision |
|---|---|---|
| The buttons do not change places in the MIUI settings. | Regional firmware (for example, for India) | Install global firmware via Fastboot or use ADB |
| Button Mapper is not working. | No permit. WRITE_SECURE_SETTINGS | Execute the command ADB: adb shell pm grant flar2.homebutton android.permission.WRITE_SECURE_SETTINGS |
| After reassigning the power button, the phone is not blocked | Conflict with Magisk module or custom firmware | Reverse changes or swipe through the original boot.img |
| The gestures stopped working after the buttons were changed. | Resetting navigation settings | Return to Settings β Display β Full-screen display and select gestures again |
If after manipulating the buttons, the phone stopped responding to touches or got stuck on the Redmi logo, reset via Restore mode:
- Turn off the device.
- Press the Power button + Volume up for 10 seconds.
- In the recovery menu, select Wipe data (use volume buttons for navigation).
Navigation buttons ("Back" and "Recent")|Volume buttons|Power button|Control gestures|Other-->