How to change the location of the buttons on Xiaomi smartphones: from physical keys to software settings

Touch and physical buttons on Xiaomi smartphones are one of the key elements of interaction with the device. However, standard key layouts (such as Back-Home-Recent) are not always convenient: left-handers may be uncomfortable using the right button, and owners of devices with cutouts under the screen face random presses. Fortunately, MIUI offers flexible settings for reassigning buttons, and in some cases even manual editing of system files will help.

In this article, we’ll look at all the ways to change buttons on Xiaomi, from basic menu settings to advanced methods using ADB and third-party apps. We’ll focus on the typical issues that arise after changes: why the vibration disappears, how to return the standard layout, and what to do if your smartphone stopped responding to clicks. If you use a model with MIUI 14 or later, note that some menu items may have changed location β€” we’ve updated the instructions for the latest firmware.

1. Standard button settings in MIUI: what can be changed without root

Most Xiaomi devices (from Redmi Note 10 to Xiaomi 13 Ultra) allow you to reassign the software navigation buttons directly to the system settings. This method does not require superuser rights and works on all versions of MIUI starting with the 11th.

  • πŸ”„ The order of the buttons - swap "Back" and "Recent" (relevant for layout with three buttons).
  • 🎯 Sign mode – completely remove the navigation bar and switch to swipes (available on the site) MIUI 12+).
  • ⚑ Additional steps – assign a double press on the power button (for example, to start the camera or voice assistant).
  • πŸ”• Hiding the panel – automatically hide the navigation bar in full-screen applications.

To change the location of the buttons:

  1. Open the Settings β†’ Display.
  2. Select Full-screen display (on some models - System navigation).
  3. Slip on the navigation buttons and select the order you want: Recent-home-back or vice versa.
  4. Save the changes and restart the device (recommended for settings).

⚠️ Attention: On devices with MIUI 14 and later, after the change of order of the buttons, the vibration response may be lost. To return tactile feedback, go to Settings β†’ Sound and vibration β†’ Vibration of the system and enable the option Vibration when pressing the buttons.

πŸ“Š What button layout do you use?
Standard (Back-Home-Recent)
Reverse (Recent-Home-Back)
Just gestures.
Another.

2. Reassign physical buttons: volume, power, Bixby

The physical buttons on Xiaomi smartphones (volume, power, and on some models a dedicated button for Google Assistant or Bixby) can also be reassigned.

  • πŸ”Š Volume buttons – you can swap β€œLouder / Quiet” or assign other actions to them (for example, rewinding tracks).
  • πŸ”„ Power button - on some models (POCO F3, Redmi K40) You can use it to call a voice assistant.
  • πŸ€– Dedicated button – on devices with the Google Assistant button (e.g. Xiaomi) 11T Pro) it can be disabled or reassigned to another application.

To change the functions of physical buttons:

  1. Go to Settings β†’ Buttons and gestures (on some firmware – Settings β†’ Additional β†’ Buttons).
  2. Select the desired button (for example, Power button or Volume button).
  3. Assign a new action from the list (for example, Launch the camera with double tap on power).

On devices with MIUI 13+, there is an option Quick Actions, where you can configure button combinations, for example, pinch Volume up + Power to turn on the flashlight.

How to reassign the Bixby button to Xiaomi?
Some models (e.g., Xiaomi Mi 11 Lite for the Korean market) have a dedicated button for Bixby to disable or reassign: Install the Button Mapper app from Google Play. Give it access rights to special features (Settings) β†’ Special opportunities β†’ Button Mapper.Select the Bixby button in the list and assign a new action (e.g., launching Google Assistant or opening an app). ⚠️ After reassignment, the original button function will not be available!

3. Advanced methods: ADB and system file editing

If the standard settings MIUI Not enough, you can use it. ADB-These methods require connecting a smartphone to a PC and basic knowledge of how to work with a console:

  • πŸ› οΈ Flexibility – you can reassign any button, including hardware buttons (for example, make the volume button down opens Google Pay).
  • πŸ”§ Fine-tuning – set delays, keyboard combinations, or trigger conditions (e.g., only in certain applications).
  • πŸ“± Support for outdated models – works even on Xiaomi MIUI 10 and below, where there are no built-in reassignment options.

First, turn on the USB debugging:

  1. Go to Settings. β†’ The phone.
  2. Tap 7 times on the MIUI version to activate the developer mode.
  3. Return to Settings β†’ Additional β†’ For developers and enable USB debugging.

Now connect your smartphone to your PC and use the following: ADB-button-reassignment:

Change the "Back" and "Recent" (reboot required)


adb shell settings put secure sysui_nav_bar "space,back;home;recent,space"




Assign a double press on the power button to start the camera



adb shell settings put global power_double_click_camera 1




Turn off vibration when you press the software buttons



adb shell settings put global haptic_feedback_enabled 0

⚠️ Attention: Misuse of the right ADB This can cause a loss of button functionality or system freeze.Before experimenting, back up your data via adb backup or built-in tools. MIUI.

β˜‘οΈ Preparation for work with ADB

Done: 0 / 4

4. Reset button settings to factory

If, after experimenting with the settings, the buttons stopped working correctly (for example, the response to the clicks disappeared or the smartphone constantly opens the wrong application), you can return the factory settings. There are two ways:

  1. Through the MIUI menu: Go to Settings β†’ System β†’ Reset. Select Reset all settings (does not delete data, only returns settings to factory settings).
  2. Through ADB: adb shell settings delete secure sysui_nav_bar adb shell settings delete global power_double_click_camera

If your smartphone doesn’t respond to any pressing at all (for example, after a failed editing of system files), try:

  • πŸ”Œ Hard reset - clamping down on the power supply + Volume up 10 seconds to reboot in Fastboot, then select Recovery β†’ Wipe data.
  • πŸ“± Recovery via Mi Flash – if the device does not boot, run the original firmware through the Mi Flash Tool (instructions on the official Xiaomi website).
Problem.Possible causeDecision
Buttons don't respond.Failure after ADB-teamResets with adb shell settings delete secure sysui_nav_bar
Vibration's gone.Disabled in the settingsInclude in Settings β†’ Sound and vibration β†’ System Vibration
The buttons changed themselves.MIUI UpdateReassign to Settings β†’ Display β†’ Full-screen display
Double-pressing doesn't work.Conflict with the shellDisable battery optimization for Button Mapper app

5. Reassign buttons on gesture devices

Starting with MIUI 12, Xiaomi is actively promoting gesture control instead of the classic buttons. However, even in this mode, you can configure additional actions. For example, on Xiaomi 12 and POCO F4, the following options are available:

  • πŸ‘† Swipe up – return to the main screen (analogue of the button β€œhomeΒ»).
  • πŸ‘‡ Swipe down – opening the notification panel (works from the edges of the screen).
  • πŸ”„ Diagonal Swipe – Calling Google Assistant or returning to the previous app.
  • πŸ›‘ Swipe delay – Sensitivity setting (useful if gestures are triggered accidentally).

To tune the gestures:

  1. Go to Settings β†’ Display β†’ Full-screen display.
  2. Choose the full screen gestures (MIUI Full Screen Gestures).
  3. Activate the option Additional gestures and assign actions for swipes from the left / right edge.

Some models (Xiaomi Mix 4, Redmi K50 Ultra) have a swipe zone setting available, so you can narrow down the trigger area to avoid false activations when playing games or watching videos.

πŸ’‘

If gestures conflict with apps (e.g., in games), add those apps to exceptions. Go to Settings β†’ Apps β†’ Permissions β†’ Full-screen gestures and turn off gestures for the right programs.

6. Third-party applications for button reassignment

If the built-in MIUI tools aren't enough, you can use third-party utilities.

AnnexFunctionsNeeds root?
Button MapperReassign physical and program buttons, customize gesturesNo (but special opportunities are needed)
TaskerComplex scripts with buttons (for example, running a script while keeping volume)No.
Xposed Framework + GravityBoxDeep customization of buttons, including changing their appearanceYes.
Fluid Navigation GesturesReplacement of standard MIUI gestures with customNo (but you need to adjust availability)

For the use of Button Mapper:

  1. Download the app from Google Play.
  2. Go to Settings β†’ Special. features β†’ Button Mapper and enable access.
  3. Select a button to reassign (such as Volume Down) and assign a new action (such as Previous Track).
  4. Save the settings and restart the device.

⚠️ Note: Applications like the Xposed Framework require unlocking the bootloader and installing a custom recap (e.g., a custom recap, TWRP). This cancels the warranty and can lead to a device blink in case of incorrect actions.

πŸ’‘

Third-party apps are the most flexible way to reassign buttons, but they can conflict with MIUI updates. After the firmware update, check the health of the settings!

7.Typical mistakes and how to avoid them

When changing the location of the buttons, users often face the following problems:

  • πŸ”„ Buttons are reset after the update β€” MIUI Sometimes resets navigation settings when you install new versions. Solution: Reassign buttons after the update.
  • πŸ”Š The vibration is lost, and that's because you've disabled the tactile feedback in your settings. β†’ Sound and vibration β†’ Vibration of the system.
  • πŸ›‘ Gestures conflict with games – add the game to exceptions (see section 5) or turn off gestures entirely for this app.
  • πŸ”‹ Fast battery drain – some button reassignment apps (like Tasker) run in the background and consume extra power. β†’ Battery.

If the smartphone has become unstable after the changes (for example, accidentally opens the menu or does not respond to clicks), follow the following steps:

  1. Reboot the device – this often resolves temporary crashes.
  2. Check for conflicts with other apps (like launchers like Nova Launcher).
  3. Reset the button settings to factory buttons (see section 4).
  4. If the problem persists, roll back to the previous firmware version via Fastboot.

FAQ: Frequent questions about reassigning buttons to Xiaomi

Can I swap the volume buttons on Xiaomi?
Yes, but only software-based -- you can't physically cross-sweeten buttons without damaging the board. ADB-Adb shell settings put global volume_key_cursor_control 1 This will change the volume buttons to cursor control (useful when connected to an external display).
Why did the button change the response to the presses disappear?
The system interface settings are probably lost. Try: Reset Settings β†’ System β†’ Reset. Run adb shell pm clear com.miui.home. If it doesn't work, return the factory firmware via the Mi Flash Tool.
How do I return the standard navigation buttons if I switch to gestures?
Go to Settings. β†’ Display. β†’ Full-screen display and select Navigation buttons instead of Gesture control. If no point, use ADB: adb shell settings put secure sysui_nav_bar "space,back;home;recent,space"
Can I assign the power button to run an arbitrary application?
Yes, but only with third-party utilities like Button Mapper or Tasker. In standard MIUI settings, only predefined actions (camera, voice assistant, flashlight) are available. Tasker will need to create a profile with the Button Press condition and the Launch App task.
Why is my Xiaomi not having a button reassignment option?
Possible reasons: You have a simplified version of MIUI (e.g. for the European market); try changing the firmware region; the device runs on Android Go (e.g. Redmi Go), where many features are stripped; the firmware is customized (e.g. LineageOS), where MIUI settings are not available; Solution: use ADB or third-party apps.