[APP] Button Mapper - Customize your hardware buttons

Search This thread


Senior Member
Jun 10, 2013
Which is last build? You should be using 1.51 on the OP5
Only this build work fine,
but then it updates and doesn't work anymore. I have to prevent modification.

Icona di Verificata con community


  • Screenshot_20210213-075948_Button_Mapper.png
    140.1 KB · Views: 20


New member
Feb 16, 2021
I have a specific scenario: I want to turn the pages of my kindle app using a Bluetooth remote thing. The Bluetooth remote only presses volume up which turns the page back not forwards. Remapping to volume down doesn't work with kindle app - it just turns the volume down rather than turning the page. Is there a way to fix this? I know its really niche but I'd love it if you could!


New member
Feb 17, 2021
I'm owner of Philips Android TV, and would like to remap specific button on the remote ("Rakuten TV"). Instead it should do a POST call to external linux server, running a Kodi, to trigger a JSON RPC command. Reading capabilities, ButtonMapper would be the right tool for this :)
However, I'm struggling on getting the syntax right for setting up the POST request. I can generate the correct call in Postman and using curl. But how to map this into the single line provided in ButtonMapper for setting up the POST call? This I cannot solve, as the POST call contains keys, form data, etc.

Anyone have idea on how to solve this?

Regards, René


Dec 11, 2013
Im having issues restoring the pro version on Android tv.

Toast message comes up

"Button Mapper Needs To Be Restarted"

Force stopped, un installed, rebooted the box but it's not activating the pro functions.

Any suggestions?


Mar 18, 2013
Hello @flar2. I try to simulate Fire Tv remote menu button on my Sony Android TV by using this app. I tried setting action "Show menu" on one of the buttons but it doesn't work on all apps. For example it doesn't work on Firefox TV Browser. But when mapping button via custom keycode and setting KEYCODE_MENU = "82" it starts working. But for that to work I need to use adb and I would like to avoid that. Would it be possible for you to make action "Show menu" to function fully in all apps so it would work the same as when setting custom keycode "KEYCODE_MENU" ?
Last edited:


New member
Dec 9, 2011
Hello, into the "Add Buttons" section, can you add recognizing ability of key combinations (shift+key etc.) . This would be great! for those who use android with keyboard.


Senior Member
Jun 21, 2010
Samsung Galaxy S10 plus on Android 9 here rooted

I see that the volume buttons section is grayed out. Is there anything I can do to help it? Bixby button works and I remapped it to back action. But can't do anything for the volume buttons.


New member
Feb 22, 2021
Hello, Im having issues on the app. Samsung Galaxy S10 on Android 11.
1 Sometimes the remapping will fail, unless I restart accessibility services.
2 Sometimes when I press the Bixby button once, Double tap is triggered instead of Single tap.
Can you fix it ?


Recognized Developer
Jun 11, 2012
Southwestern Ontario
Hello, Im having issues on the app. Samsung Galaxy S10 on Android 11.
1 Sometimes the remapping will fail, unless I restart accessibility services.
2 Sometimes when I press the Bixby button once, Double tap is triggered instead of Single tap.
Can you fix it ?

It works just the same as always, the problem is Samsung killing the service. That is something beyond my control. Check dontkillmyapp.com
  • Like
Reactions: tiho5


Recognized Developer
Jun 11, 2012
Southwestern Ontario
Samsung Galaxy S10 plus on Android 9 here rooted

I see that the volume buttons section is grayed out. Is there anything I can do to help it? Bixby button works and I remapped it to back action. But can't do anything for the volume buttons.

Uninstall and reinstall. I can't think of any reason why the volume button settings would be disabled unless you are using an extremely old setting called "Bixby only". That setting was only meant for the earliest generation of Bixby phones, before Samsung started their war on remapping apps.

Top Liked Posts

  • There are no posts matching your filters.
  • 1

    Hi @flar2

    Super app, thank you.

    Is there a way to button map the start/stop Buttons Mapper service itself without root and outside of using the notification bar perhaps (basically a button shortcut for the accessibility toggle)? Please let me know.
    Public intents

  • 129

    Button Mapper allows you to remap any action you want to physical or capacitive hardware buttons. This includes volume buttons, camera button, home button on Samsung devices and capacitive home, back and recents, Bixby, Active Edge, LG assistant button and many buttons on game controllers and other hardware. It does NOT work with onscreen home, back and recents buttons (i.e. soft keys or the navigation bar).

    You can launch shortcuts, apps or actions to single press, double tap and long press for hardware buttons.

    Download on XDA Labs:

    -does not work when the screen is off (unless rooted)
    -only works with hardware buttons, not onscreen buttons (i.e. navigation bar)
    -power button cannot be modified
    -there can be quirks with some devices due to non-standard hardware and software implementations by various manufacturers. I try to fix them, but sometimes it's difficult if I don't have the device to test.

    Examples of things you can do with this app:

    -Lockscreen peek: press and hold the home button to quickly check your lockscreen messages, release to turn off the screen (requires PRO VERSION)
    -Launch an app by long pressing the home button
    -Swap the back and recents buttons (capacitive buttons only, like on Samsung Galaxy or Asus Zenfone or One Plus One)
    -Use the home button to the turn the screen off from the homescreen on your Samsung Galaxy (requires PRO VERSION)
    -Control the button lights on your Samsung Galaxy. Turn them on or off, or change the length of time they light up
    Big update!

    After many weeks of work, I've released an update that adds many new features and improvements, and fixes some longstanding bugs.

    The new version is rolling out to a small number of users on the Google Play Store.
    You can download the new version now on XDA Labs.

    Download on XDA Labs:

    Pixel 2 Active Edge
    The Pixel 2 battery drain was caused by remapping Active Edge with root and not enabling screen off actions. It has nothing to do with the method that I use to remap the Edge squeeze, it was caused by a typo in the options logic. There are a lot of myths about how this app handles Active Edge. First of all, it does not consume battery and does not slow down your system. Such claims are false (notwithstanding the bug, which is now fixed). The method for remapping Active Edge does not scan through every logcat message. With root, it's 100% reliable and you will never see the Assistant and will remain in your current app. Without root, you will occasionally see the Assistant and it may bring you to the homescreen. The only limitation is you need to use English language until Google enables the Assistant for other languages.

    Root Command
    You can now remap buttons to a root command. This offers unlimited possibilities for power users. Obviously this requires root! It's available in the Pro version only

    Custom Key Codes
    You can also remap buttons to custom key codes. This means you can fully remap game controllers, tv remotes and other hardware attached to your device. I've compiled a list of key codes that are recognized by Android here. This requires root, unfortunately. It's available in the Pro version only.

    MIUI does some really stupid things to Android. In order for Button Mapper to work correctly, you need to grant the "Autostart" permission and disable battery optimization. If you do not grant the autostart permission, swiping Button Mapper away in recents will kill the service. If you do not set battery optimization to "No restrictions", then Button Mapper's service will be killed every 10 minutes or so.

    To grant these permissions, in go to the menu at upper right in Button Mapper and select "Introduction." Swipe to the screen title Permissions and follow the instructions.

    Samsung volume bug
    I tracked down a few obscure bugs on Samsung phones, including the volume scaling bug that I could never reproduce. This occurred when the volume buttons were remapped and then later the "Bixby only" option was selected without rebooting.

    Pirating this app
    Don't install pirated versions of this app (or any app that uses Accessibility or root), even just to try for a few minutes. Because it uses Accessibility Service and root, you must fully trust the developer. Using a pirated version of any root app gives hackers carte blanche on your device.

    • New actions:
      -toggle BlueTooth
      -headset key press
      -change keyboard
      -root command (requres root and PRO)
      -custom keycodes (requires root and PRO)
    • Android TV support
    • Screen off only option (requires root and PRO)
    • Fix battery drain on rooted Pixel 2
    • Update translations
    • Fix volume change for screen off actions
    • Improve Bixby handling
    • Fix volume bug on S8/Note8
    • Improve UI
    • Add 180 rotation to swap volume orientation setting
    • Improve root handling
    • Improve MIUI behaviour
    • New intro
    • Add feedback form
    • Speed and memory optimizations
    • Many other bug fixes and improvements

    Button Mapper update!

    There is an awesome new update for Button Mapper rolling out. You can get it on XDA Labs now, and on the Play Store in the coming days. This update improves volume button behavior, has fixes for Android Pie, improves Bixby remapping, lots of updates for Blackberry devices and adds a bunch of new actions, such as fullscreen mode, invert colors, toggles for NFC, airplane mode and mobile data, broadcast intents, Greek and Arabic languages, plus the usual bugfixes.

    Download on XDA Labs:

    I want to highlight two important new features.

    First, the broadcast intent action (pro version only!). With this action, you can use a button press to broadcast an intent, which is Android's way of communicating between apps. This opens up literally endless possibilities. For example, if you have my High Brightness Mode app installed, you could enter flar2.hbmwidget.TOGGLE_HBM for long-press of volume button to toggle high brightness mode.

    The second feature is a new option to disable volume button remapping when the volume panel is showing. For example, if you have long press volume down mapped to toggle the flashlight, when the volume panel is showing, holding down volume will turn the volume down rather than turning on the flashlight. Once the volume panel disappears, holding the volume button will once again toggle the flashlight. I think this makes the volume button behavior more intuitive, so it's enabled by default. This can be turned off if you don't like it, the option is in Advanced options->Volume panel bypass.

    Please enjoy, and don't forget to leave a positive review if you find Button Mapper useful.
    Version 0.66 is now released. It will roll out slowly on the Play Store, if you want it now, get it from XDA Labs

    This version has tons of small fixups: volume button behavior is vastly improved, activities open right away after pressing home, everything is faster, and there are more options. Also quite a few UI improvements. New actions include toggle mobile data (root only), toggle wifi hotspot (Nougat and lower only), toggle autobrightness and clearn notifications. There is a new option to enable pocket detection, so actions won't occur while the phone is in your pocket (requires pro version).

    For Android P users, I've fixed the volume buttons to default to media and added an option to force them to control ring volume like older versions of Android.

    There is now an option to lock the screen in a way that allows you to unlock with the fingerprint. Rooted users could always do that, now unrooted users can too.

    I've also added an option to force audio routing through the speaker while Pressy, MiKey or other headphone jack buttons are plugged in. I don't have one of these devices, but it should all work.

    Pocket detection (pro)
    Toggle auto brightness
    Toggle Wifi hotspot (Android 7 and lower)
    Toggle mobile data (root)
    Clear notifications
    Compatibility with Android P
    Option to use speaker with Pressy, MiKey, etc
    Global bypass option
    More long press duration options
    Receive incoming phone calls with home button (Samsung)
    Add Spanish
    Update translations
    UI improvements
    Optional lock method that allows fingerprint unlocking
    Fix AOD crash with screenshot action (Samsung)
    Optimizations and bugfixes
Our Apps
Get our official app!
The best way to access XDA on your phone
Nav Gestures
Add swipe gestures to any Android
One Handed Mode
Eases uses one hand with your phone