keymapperorg/KeyMapper

An Android app to remap the buttons on your devices

Kotlin

2,737

2,900 commits

updated Oct 10, 2026

See the code

README

GitHub release fdroid release


keymapperorg%2FKeyMapper | Trendshift

Get it on Google Play Get it on F-Droid
Buy Me a Coffee at ko-fi.com Donate using Liberapay Donate using Stripe

Unleash your keys!

Make custom macros on your keyboard or gamepad, make on-screen buttons in any app, and unlock new functionality from your volume buttons!

Key Mapper supports a huge variety of buttons and keys:

  • ALL your phone buttons (volume AND side key)
  • Game controllers (D-pad, ABXY, and most others)
  • Keyboards
  • Mouse buttons
  • Headsets and headphones
  • Fingerprint sensor

Most devices are already supported, with new devices being added over time. Let us know if it's not working for you and we can prioritize your device.

Not currently supported:

  • Joysticks and triggers (LT,RT) on gamepads

Not enough keys? Design your own on-screen button layouts and remap those just like real keys!

What shortcuts can I make?

With over 100 individual actions, the sky is the limit.

Build complex macros with screen taps and gestures, keyboard inputs, open apps, control media, and even send intents directly to other apps.

How much control do I have?

TRIGGERS: You decide how to trigger a key map. Long press, double press, press as many times as you like! Combine keys on different devices, and even include your on-screen buttons.

ACTIONS: Design specific macros for what you want to do. Combine over 100 actions, and choose the delay between each one. Set repeating actions to automate and speed up slow tasks.

CONSTRAINTS: You choose when key maps should run and when they shouldn't. Only need it in one specific app? Or when media is playing? On your lockscreen? Constrain your key maps for maximum control.

Come say hi in our Discord community!

Read the documentation!

Translations

cs proofreading es-ES proofreading pl proofreading pt-BR proofreading ru proofreading sk proofreading zh-CN proofreading

Contributing

There are many ways to help with this project. 😃 Check out the contributing guide in the documentation.

accessibilityservice
android
android-accessibility
android-app
androidapplication
android-development
bluetooth
bluetoothkeyboard
joycon
keyboard
keyboards
keyboard-shortcuts
keyevent
keymapper
keymapping
kotlin

keymapperorg/KeyMapper

An Android app to remap the buttons on your devices

Kotlin

2,737

2,900 commits

updated Oct 10, 2026

See the code

README

GitHub release fdroid release


keymapperorg%2FKeyMapper | Trendshift

Get it on Google Play Get it on F-Droid
Buy Me a Coffee at ko-fi.com Donate using Liberapay Donate using Stripe

Unleash your keys!

Make custom macros on your keyboard or gamepad, make on-screen buttons in any app, and unlock new functionality from your volume buttons!

Key Mapper supports a huge variety of buttons and keys:

  • ALL your phone buttons (volume AND side key)
  • Game controllers (D-pad, ABXY, and most others)
  • Keyboards
  • Mouse buttons
  • Headsets and headphones
  • Fingerprint sensor

Most devices are already supported, with new devices being added over time. Let us know if it's not working for you and we can prioritize your device.

Not currently supported:

  • Joysticks and triggers (LT,RT) on gamepads

Not enough keys? Design your own on-screen button layouts and remap those just like real keys!

What shortcuts can I make?

With over 100 individual actions, the sky is the limit.

Build complex macros with screen taps and gestures, keyboard inputs, open apps, control media, and even send intents directly to other apps.

How much control do I have?

TRIGGERS: You decide how to trigger a key map. Long press, double press, press as many times as you like! Combine keys on different devices, and even include your on-screen buttons.

ACTIONS: Design specific macros for what you want to do. Combine over 100 actions, and choose the delay between each one. Set repeating actions to automate and speed up slow tasks.

CONSTRAINTS: You choose when key maps should run and when they shouldn't. Only need it in one specific app? Or when media is playing? On your lockscreen? Constrain your key maps for maximum control.

Come say hi in our Discord community!

Read the documentation!

Translations

cs proofreading es-ES proofreading pl proofreading pt-BR proofreading ru proofreading sk proofreading zh-CN proofreading

Contributing

There are many ways to help with this project. 😃 Check out the contributing guide in the documentation.

accessibilityservice
android
android-accessibility
android-app
androidapplication
android-development
bluetooth
bluetoothkeyboard
joycon
keyboard
keyboards
keyboard-shortcuts
keyevent
keymapper
keymapping
kotlin

Significant stargazers

Benoit de Chezelles

157 followers · starred Feb 2026

Marcus Ramberg

363 followers · starred Sep 2025

dzaima

139 followers · starred Apr 2023

Rine Amakawa

290 followers · starred May 2026