Xbox controller mouse and keyboard for Windows. PadPointer is a Windows 10/11 gamepad remapper that turns an Xbox, HID, or legacy joystick into a mouse, keyboard, media remote, text editor, and desktop navigator — without taking exclusive ownership of the physical controller, so games still see the pad.
This repository is the public download page. PadPointer is released as a compiled Windows app only. Source code is not published.
Use an Xbox controller as a mouse on Windows, map gamepad buttons to keyboard keys, run JoyToKey-style macros and turbo, switch desktop vs gaming mode, and jump between on-screen controls with Smart D-pad.
Search terms: Xbox controller to mouse, gamepad mouse Windows, controller remapper, JoyToKey alternative, XInput mapper, HID joystick, DualSense / PlayStation-style labels, media remote, accessibility mouse, couch desktop control.
- Open the latest Release.
- Download
PadPointer.exe. - Run it on Windows 10 or 11 (64-bit). No installer is required.
Windows SmartScreen may warn on first launch because the EXE is not code-signed. Choose More info → Run anyway if you downloaded it from this GitHub account.
- Not exclusive. Games keep the real Xbox / XInput device. PadPointer injects mouse and keyboard; it does not hide the pad.
- Desktop + gaming. Swap modes with a hold or two-button combo (default View + Menu). Gaming mode suspends injection so the controller is just a controller.
- Three mapping layers. Base desktop map, plus two modifier layers (default LT media, RT text editing) with tap-vs-hold.
- JoyToKey-class depth. Turbo, sequences, press-count, analog bands, profiles, auto profile switch, launch program/URL, and Raw Input/HID up to 128 buttons.
- Smart D-pad. Global, snap-only UI Automation jumps directly to the nearest visible accessible control across apps.
- Either analog stick can control the Windows pointer; the other stick can scroll.
- Pointer sensitivity, deadzone, acceleration, response curves, and scroll sensitivity.
- Two controller inputs per mapping action, plus Turbo (0.1–60 Hz).
- Full XInput coverage: A/B/X/Y, LB/RB, LT/RT, View/Menu, L3/R3, D-pad.
- Mouse: left/right/middle click, drag, Back/Forward, vertical and horizontal wheel.
- Keyboard capture, Copy/Cut/Paste, Refresh, on-screen controller keyboard, macros, media keys, clock overlay.
- Profiles (Default Desktop, FPS, MOBA/ARPG, Media Center, Productivity, Presentation/Browser) and auto-switch by app.
- Four themes: Porcelain, Midnight, Sage, Clay.
- Runs in the notification tray when the window is closed.
| Input | Action |
|---|---|
| A | Play / Pause |
| B | Stop |
| X | Previous / Skip Back |
| Y | Next / Skip |
| LB | Rewind |
| RB | Fast-Forward |
| RT | Mute |
| D-pad Up / Down | Volume Up / Down |
| D-pad Left / Right | Previous / Next |
| Input | Action |
|---|---|
| A | Enter |
| B | Backspace |
| X | Copy |
| Y | Paste |
| LB | Cut |
| RB | Delete |
| LT | Shift |
| D-pad | Arrow keys |
Smart D-pad is global and snap-only. Every visible accessible control competes in one directional nearest-target score, regardless of which app currently owns the cursor. A successful press lands at the verified center of a real Windows UI Automation control.
It never behaves like smooth mouse movement: there are no pixel rays, empty-space landings, incremental nudges, or same-app preference. Covered, stale, wrapper, and snap-to-self targets are rejected. UI Automation indexing runs away from controller polling, and the last successful per-window results are retained when an app's accessibility provider is slow.
This is the required D-pad behavior for current and future PadPointer releases. Apps that expose no Windows UI Automation controls cannot provide snap targets.
Xbox-class XInput pads, Windows legacy joysticks, and Raw Input/HID devices (extra axes, POV hats, Xbox Series Share/Capture, vendor paddles, buttons through 128). Multiple controllers can run independent profiles, or you can combine connected devices into one logical pad.
PadPointer is distributed as an official compiled executable. Source code is not included. See LICENSE.
