A Linux tool for remapping keys, buttons, and mouse or joystick inputs to other inputs, with macros and X11/Wayland support.
keymapperorg/KeyMapper
An Android app that remaps buttons on phones, game controllers, keyboards and mouse, and builds custom macros and on-screen buttons.
- Stars
- 2,807
- Forks
- 266
- Open issues
- 182
- Last commit
- 12 hours ago
What is it?
Key Mapper is an Android app for remapping hardware buttons. It works with the phone's own buttons, including volume and side keys, as well as game controllers, keyboards, mouse buttons, headsets and the fingerprint sensor. Joysticks and analog triggers on gamepads are not currently supported.
Each key map has three parts: a trigger that decides how a press starts it (long press, double press, or a combination across devices), actions that run in sequence with configurable delays, and constraints that limit when it runs, such as only inside one app, while media is playing, or on the lock screen. Over 100 actions are available, including screen taps and gestures, keyboard input, opening apps, media control and sending intents to other apps.
Users can also design custom on-screen button layouts and remap those buttons like physical keys. The project is GPL-3.0 licensed, is available on Google Play and F-Droid, and is translated into several languages through Crowdin.
Key features
- 01Remaps phone, gamepad, keyboard, mouse and headset buttons.
- 02Supports over 100 actions, including taps, gestures, key input and app launching.
- 03Triggers include long press, double press and multi-device key combinations.
- 04Constraints limit when a key map runs, such as per app or while media plays.
- 05Custom on-screen button layouts can be remapped like physical keys.
Use cases
- Assigning a volume or side button on an Android phone to a custom shortcut.
- Mapping keys on a game controller or Bluetooth keyboard to macros.
- Adding on-screen buttons to apps that lack convenient controls.
- Accessibility setups that need alternative input for hardware buttons.
Quick start
- 1
Install Key Mapper from Google Play
- 2
Or install Key Mapper from F-Droid
- 3
Read the documentation to set up your first key map
Things to know
- Android only.
- Joysticks and gamepad triggers (LT, RT) are not supported.
- Licensed under GPL-3.0, a copyleft license.
In collections
Topics
FAQ
- What is KeyMapper?
- An Android app that remaps buttons on phones, game controllers, keyboards and mouse, and builds custom macros and on-screen buttons. Key Mapper is an Android app for remapping hardware buttons. It works with the phone's own buttons, including volume and side keys, as well as game controllers, keyboards, mouse buttons, headsets and the fingerprint sensor. Joysticks and analog triggers on gamepads are not currently supported.
- Is KeyMapper free to use? What license does it have?
- KeyMapper is open source under the GPL-3.0 license. Check the license terms before using it in commercial products.
- Is KeyMapper still maintained?
- Actively maintained. The last commit to KeyMapper was on Nov 7, 2026.
- What can I use KeyMapper for?
- Assigning a volume or side button on an Android phone to a custom shortcut. Mapping keys on a game controller or Bluetooth keyboard to macros. Adding on-screen buttons to apps that lack convenient controls. Accessibility setups that need alternative input for hardware buttons.
- How do I install KeyMapper?
- Install Key Mapper from Google Play Or install Key Mapper from F-Droid Read the documentation to set up your first key map
- Where can I get KeyMapper?
- The source code and installation instructions are on GitHub: https://github.com/keymapperorg/KeyMapper
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
A macOS key remapper that lets you customize keyboard keys, modifiers and shortcuts at the system level.
A cross-platform keyboard remapper for Linux, macOS and Windows that adds layers, tap-hold, macros and Unicode output to any keyboard.
An OBS Studio plugin that displays live keyboard, mouse and gamepad input as an on-stream overlay.
Keyboard-driven mouse control and key remapping for Windows and macOS, with hint grids, UI hints and configurable combos.
An on-device Android AI agent that operates apps and the web on a hidden background screen to carry out tasks you describe in one sentence.