How to change buttons in places on Xiaomi: 5 working ways for MIUI and custom firmware

Are you used to a certain location of navigation buttons on Android, but after buying a smartphone Xiaomi, Redmi or POCO found that they are confused? Or want to optimize one-handed control by swapping the buttons "Back" and "Recent"? In this article, we will analyze all possible ways to reassign buttons โ€” from standard MIUI settings to hidden functions for power users.

The problem of awkward buttons is a problem for many: someone is used to the classic Android scheme (on the left - "Back", on the right - "Recent"), and someone wants to adapt the interface to left-handedness. Fortunately, Xiaomi provides several solutions, from simple to advanced. We will look at methods for different versions of MIUI (including MIUI 14 and MIUI 15), as well as alternative methods for custom firmware and devices without root rights.

Itโ€™s important to understand that not all methods are universal: some only work on certain models (such as the Xiaomi 13 Pro or Redmi Note 12), while others require additional manipulation. If youโ€™re a beginner, start with the first section on standard settings. Experienced users will be interested in the section about ADB Modification of system files.

1. Standard button reassignment in MIUI settings

The easiest way to swap the buttons is to use the built-in MIUI options, which works on most modern Xiaomi, Redmi and POCO smartphones with MIUI 12 and higher firmware.

  1. Open the Settings app (the gear icon on the home screen).
  2. Go to the Display section.
  3. Select Full-screen Mode (on some models it may be called Navigation buttons or Gestures).
  4. Slip the navigation buttons option (if you use a classic bar, not gestures).
  5. Activate the switch to switch the "Back" and "Recent" buttons.

If you have MIUI 14/15, the interface may be slightly different: instead of Full-screen mode, look for System Navigation. On some devices (for example, POCO F5), the option is hidden deeper - you will have to go to Additional settings โ†’ Gestures and buttons.

๐Ÿ“Š What button scheme do you prefer?
Classic (Back Home Recent)
Back (Recent Home Back)
Gestures instead of buttons
I don't care.

Limitations of the method:

  • ๐Ÿ”„ It works only for touch-sensitive navigation buttons (does not affect physical volume/power buttons).
  • ๐Ÿ“ฑ Not available on gesture navigation devices (youโ€™ll need to switch to buttons first).
  • โš™๏ธ On some models (e.g. Xiaomi) 12T) The option may be blocked by the manufacturer.

โš ๏ธ Note: After changing the location of the buttons, it will take 2-3 days to get used to it, during which time random clicks are possible - for example, instead of returning to the menu, you can open a list of recent apps.

2. Reassign buttons through gesture navigation

If you use gestures instead of the classic buttons, the standard way in the first section won't work, but there's a hidden option in MIUI that allows you to emulate navigation buttons even in gesture mode.

  1. Activate Full-screen gestures in Settings โ†’ Display โ†’ System Navigation.
  2. Choose the MIUI gesture type (not Android!).
  3. Return to System Navigation and tap on Additional Settings (or Gesture Settings).
  4. Find the option to Show navigation buttons in gesture mode and turn it on.
  5. You can now swap the buttons, as in the first method.

This trick works on most devices with MIUI 13+, but may not be available on budget models (e.g. Redmi 10A).If you don't have an option, try updating your firmware or using alternative methods in the following sections.

โ˜‘๏ธ Preparation for button changes

Done: 0 / 4

Advantages of gesture navigation:

  • ๐Ÿ–๏ธ Frees up space on the screen (no constant button panel).
  • โšก Faster than classic buttons after getting used to.
  • ๐Ÿ”„ Can be combined with reassignment (for example, swipe left) ="Back, swipe right. ="Recent").

3.Using ADB for Deep Reassignment

If standard settings donโ€™t offer the flexibility you need (like swapping volume buttons or setting a new double-press action), youโ€™ll need an ADB (Android Debug Bridge) that works for power users and works on any Xiaomi device, including the POCO X5 Pro and Redmi K60.

Here's the step-by-step instruction:

  1. Turn on USB Debugging in Settings โ†’ About Phone โ†’ MIUI version (tap 7 times on version, then go back to Additional settings โ†’ For developers).
  2. Connect the phone to the PC and confirm the debugging permission.
  3. Download ADB Tools and unpack the archive.
  4. Open the command line in the ADB folder and do:
adb shell settings put secure sysui_nav_bar"space,back;home;recent,space"

This command will swap the back and recent buttons. Use:

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

Critical: Some ADB commands can cause the interface to crash. Before experimenting, back up through Settings โ†’ System โ†’ Backup.

What if the ADB canโ€™t see the device?
1. Make sure that Xiaomi drivers are installed (download from [official website](https://new.c.mi.com/global/miuidownload/index)). 2. Try another one. USB-cable (original from Xiaomi). 3. Restart your phone and PC. 4. Enable the option "Cancel authorization" in the developer settings USB-debugging".

Advanced ADB capabilities:

Team team.Action.Example of model
adb shell settings put secure sysui_nav_bar_left"0,back"Reassigns the left button to "Back"Xiaomi 13 Lite
adb shell settings put global policy_control immersive.full=*Hiding the navigation bar in full-screen applicationsPOCO F4 GT
adb shell am broadcast -a android.intent.action.CLOSE_SYSTEM_DIALOGSCloses system dialogs (e.g. notifications)Redmi Note 11 Pro+

4. Reassign physical buttons (volume, power)

If you're not interested in the navigation touchbar, but in physical buttons (such as volume and lock switching), the standard MIUI settings are powerless.

  1. Remapper applications (without root): ๐Ÿ“ฑ Button Mapper โ€“ allows you to assign new actions to the volume buttons, locks and even touch zones. ๐Ÿ”ง Tasker + AutoInput plugin โ€“ to create complex scenarios (for example, double-pushing down volume) = launch).

Editing the keylayout file (requires root):

  • ๐Ÿ“‚ Find the file. /system/usr/keylayout/Generic.kl (or similar to your model).
  • ๐Ÿ”„ Change the lines from the key 114 VOLUME_DOWN key 115 VOLUME_UP.
  • ๐Ÿ’พ Save the file and restart the device.

Button Mapper will need permission to use Special Features (includes in Android settings).The app supports most Xiaomi models, but some (such as Redmi K50 Gaming) may need additional customization due to custom firmware.

โš ๏ธ Note: Changing system files (keylayout) without backup may result in loss of button functionality. 12S Ultra) will also reset Widevine certificates L1, What will make Netflixโ€™s streaming quality worse.

5. Reassign buttons on custom firmware (LineageOS, Pixel Experience)

If you use custom firmware (like LineageOS, Pixel Experience, or ArrowOS), standard MIUI methods won't work, but you have more freedom to customize. Here's what you can do:

  • ๐Ÿ”ง In LineageOS: Go to Settings โ†’ System system โ†’ Buttons and select the desired layout.
  • ๐Ÿ“ฑ Pixel Experience: Use Xposed or Magisk with Button Mapper.
  • โš™๏ธ In ArrowOS: activate Settings โ†’ Arrow โ†’ Navigation and adjust gestures/buttons.

Custom firmware also allows you to configure hardware buttons through file editing in /system/usr/keylayout/. For example, to swap volume buttons on POCO X3 Pro with LineageOS 20, do:

su


mount -o rw,remount /system




sed -i's/key 114 VOLUME_DOWN/key 114 VOLUME_UP/' /system/usr/keylayout/qrd_skuh.kl




sed -i's/key 115 VOLUME_UP/key 115 VOLUME_DOWN/' /system/usr/keylayout/qrd_skuh.kl




mount -o ro,remount /system




reboot

Once you reboot, the volume buttons will swap places, and this method works on most firmware, but requires super-user rights (root) and can disrupt the system. OTA-update.

๐Ÿ’ก

Before editing system files, back them up with the command cp /system/usr/keylayout/Generic.kl /sdcard/backup/. This will help restore the functionality of the buttons in case of an error.

6. Alternative methods: gestures, virtual buttons and accessories

If none of the above methods are suitable, consider alternative options:

  • ๐Ÿ‘† Gestures instead of buttons: B MIUI 14/15 You can swipe gestures from the bottom edge (similar to the back/home buttons) and you can configure them to Settings. โ†’ Display. โ†’ System navigation.
  • ๐ŸŽฎ Virtual buttons: Apps like Floating Touch or Assistive Touch create floating panels with buttons that can be moved around the screen.
  • ๐Ÿ”Œ Hardware solutions: Cases with additional buttons (for example, Xiaomi Gamepad for Black Shark) or Bluetooth remotes (for example, Xiaomi Mi Remote).

For gamers, an interesting solution will be Xiaomi Game Turbo - a mode that allows you to assign virtual buttons to the screen in games. Activated through Settings โ†’ Special features โ†’ Game Turbo.

๐Ÿ’ก

Gesture navigation is the most versatile way, as it works on all versions of MIUI and does not require root rights. However, for fine-tuning buttons (for example, sharing "Back" and "Recent"), it is better to use ADB or custom firmware.

7. Frequent problems and their solutions

When reassigning buttons, users often encounter errors. Here's how to fix them:

Problem.Reason.Decision
Buttons don't change places in MIUIOption blocked by manufacturerUse ADB or install custom firmware
ADB does not see the deviceThere are no drivers or debugging is not includedSet up Mi. PC Suite and check it out USB-cable
After the change, the buttons stopped working.Error in the keylayout fileRestore backup or re-flash the device
Gestures are not working smoothly.Conflict with the MIUI shellTurn off MIUI optimization in battery settings

If after reassigning the buttons, the smartphone started to slow down or errors get out, reset the settings to the factory (Settings โ†’ About the phone โ†’ Resetting). This will return the standard button location and eliminate software conflicts.

Can I swap the back and home buttons?
No, in standard MIUI settings, you can only swap back and recent. The home button always stays in the center, and it will require ADB or root access to reassign it.
Why did the buttons drop after the MIUI update?
Firmware updates often reset user navigation settings. To avoid this, prior to updating, record the current settings through the user's navigation. ADB Adb shell settings list secure | grep sysui_nav_bar After the update, repeat the reassignment command.
Does the button reassignment work on the POCO F6 Pro?
Yes, but with reservations: on the POCO F6 Pro (as on other flagships of 2026), the standard option in the settings may not be available. Use ADB or applications like Button Mapper. Note that on devices with HyperOS (new shell instead of MIUI), the path to settings may be different.
How to return the standard button location?
To reset to factory settings: Open Settings โ†’ Display. โ†’ System navigation. Select the navigation buttons and turn off the option to change places. ADB, Adb shell settings delete secure sysui_nav_bar
Can I reassign the Bixby button to Xiaomi?
Xiaomi doesnโ€™t have a Bixby button (only available on Samsung), but if youโ€™re thinking of the Google Assistant button (on some models, like the Xiaomi 11T Pro), it can be reassigned via ADB or apps like Button Mapper.