Skip to content
SPECIFICTION
Get listed

JoyShockMapper

github.com

Free plan Open source WindowsLinuxSelf-hosted
Visit github.com
Spec score 8.5 #3 of 29 in Controller Mapping Software

What it is

JoyShockMapper maps game controller input to keyboard, mouse, or virtual controller events for PC games. It supports gyro controls and flick stick for aiming and turning. Buttons can map to keyboard or mouse inputs with tap-and-hold, chorded, and simultaneous-press options; stick modes can control the mouse or trigger keys, including scroll-wheel and flick-stick modes. The project describes support for DualSense, DualShock 4, paired JoyCons, and Nintendo Switch Pro Controller. It loads commands from text configuration files, and its download includes example gyro configurations. JoyShockMapper is free, with a Windows release and Linux builds available from source. Development primarily targets Windows, and Linux builds may not always work. Linux use requires read and write access to /dev/uinput and the relevant /dev/hidraw device; focused-window detection works only on X11. Virtual Xbox or DS4 output requires separate ViGEm bus software. The releases page lists v3.6.1 as the latest release.

Spec sheet

What it does
JoyShockMapper converts controller input into keyboard, mouse, and virtual-controller events for PC games.Read 15 Oct 2026 · github.com
Purpose
JoyShockMapper maps game controller input to keyboard, mouse, or virtual controller events for playing PC games.Read 30 Sep 2026 · github.com
Support
The project directs users with problems to its troubleshooting and known-issues documentation, the GyroGaming subreddit, and an affiliated Discord server.Read 30 Sep 2026 · github.com
License
The repository is released under the MIT License with an as-is warranty disclaimer.Read 15 Oct 2026 · github.com
Additional software
Using virtual controller output requires installing the latest ViGEm bus release linked by the project.Read 30 Sep 2026 · github.com
Analog triggers
Analog triggers can have separate soft-pull and full-pull bindings; digital-trigger controllers cannot use this feature.Read 15 Oct 2026 · github.com
Binding modifiers
The command system includes tap-and-hold, simultaneous, chorded, diagonal, double-press, and gyro-button bindings.Read 15 Oct 2026 · github.com
Bluetooth limitation
The documentation says some Bluetooth adapters introduce lag with JoyCons or Pro Controllers, especially when multiple devices are connected.Read 15 Oct 2026 · github.com
Button mapping
Controller buttons can be mapped to keyboard or mouse inputs, with options including tap and hold, chorded press, and simultaneous press.Read 30 Sep 2026 · github.com
Changelog development
The changelog lists a 3.6.2 entry covering SDL3 migration, reconnect scripts, adaptive-trigger fixes, Linux FIFO command listening, and diagonal-handling improvements.Read 15 Oct 2026 · raw.githubusercontent.com
Configuration
It can load commands from text configuration files, and its download includes example gyro configuration files.Read 30 Sep 2026 · github.com
Configuration model
Users configure the program through text files and console commands, with sample files in the GyroConfigs directory.Read 15 Oct 2026 · github.com
Controllers
The project describes support for DualSense, DualShock 4, JoyCons used in pairs, and Nintendo Switch Pro Controller.Read 30 Sep 2026 · github.com
Developer language and build
The application is C++ and uses CMake, with platform-specific source directories.Read 15 Oct 2026 · github.com
Developer reference
The repository describes older versions as reference implementations for reading controller input with JoyShockLibrary.Read 15 Oct 2026 · github.com
Digital bindings
Buttons and stick directions can be mapped to keyboard keys, mouse buttons, scrolling, volume, and media controls.Read 15 Oct 2026 · github.com
Documentation depth
The README contains command references, calibration procedures, configuration-file behavior, troubleshooting, and known issues.Read 15 Oct 2026 · github.com
Flick stick
The right stick supports a flick-stick mode for rapid horizontal camera turns.Read 15 Oct 2026 · github.com
Flick-stick origin
Wikipedia credits Julian Smart with designing flick stick in 2018 and says JoyShockMapper first implemented it publicly in early 2019.Read 15 Oct 2026 · en.wikipedia.org
Gyro aiming
Gyroscope movement can control the mouse for precision aiming.Read 15 Oct 2026 · github.com
Gyro and flick stick
It supports gyro controls and flick stick for aiming and turning in PC games.Read 30 Sep 2026 · github.com
Independent directory description
SaaSHub describes the project as customizable, advanced, actively developed, and compatible with multiple controllers.Read 15 Oct 2026 · saashub.com
Independent project listing
LibHunt lists JoyShockMapper as a C++ project for DualShock 4, JoyCon, and Pro Controller gyro aiming and flick stick.Read 15 Oct 2026 · libhunt.com
Latest release
Release v3.6.1 dated February 20 lists fixes for simultaneous-press crashes, command-action crashes, overlapping presses, and scroll-wheel stick mode.Read 15 Oct 2026 · github.com
Limit: anti-cheat incompatibility
A Reddit report says Valorant's anti-cheat blocks JoyShockMapper virtual mouse input, preventing use there.Read 15 Oct 2026 · reddit.com
Limit: missing flick-speed option
Reddit feedback cites the lack of a slower-or-faster rotation control while holding flick stick.Read 15 Oct 2026 · reddit.com
Limit: no graphical interface
Reddit users repeatedly identify the lack of a GUI as a usability drawback because configurations are written in text files.Read 15 Oct 2026 · reddit.com
Limit: setup complexity
Users report that learning commands and calibration requires reading the GitHub documentation and can be difficult initially.Read 15 Oct 2026 · reddit.com
Linux device permissions
Linux operation needs read/write access to /dev/uinput and the relevant /dev/hidraw device.Read 15 Oct 2026 · github.com
Linux display support
The Linux application works on X11 and Wayland, but focused-window detection works only on X11.Read 15 Oct 2026 · github.com
Linux limitation
The maintainers warn that Linux builds may occasionally fail because development is Windows-led and Linux maintainer coverage is limited.Read 15 Oct 2026 · github.com
Linux requirements
Linux builds require Clang, GTK3, libappindicator3, libevdev, libusb, SDL2, and hidapi development packages.Read 15 Oct 2026 · github.com
Maintainer transition
The README credits Nicolas Lessard as the version-3 development lead and says the project is now his.Read 15 Oct 2026 · github.com
Maker background
Jibb Smart's site says JoyShockMapper is an open-source remapper originally created by him and now led by Electronicks.Read 15 Oct 2026 · karboom.net
Modeshifts
Configurations can change dynamically according to pressed buttons through modeshifts.Read 15 Oct 2026 · github.com
Platform support
JoyShockMapper is primarily developed for Windows and can be built for Linux, though the project notes Linux builds may not always work because of rapid development and limited Linux maintainers.Read 30 Sep 2026 · github.com
Praise: broad game coverage
A Reddit user described it as system-wide and usable with games launched outside Steam, including automatic configuration loading.Read 15 Oct 2026 · reddit.com
Praise: gyro precision
A Reddit user reported markedly higher precision and comfortable tracking of small moving targets compared with their Steam Input setup.Read 15 Oct 2026 · reddit.com
Praise: stability and customization
A Reddit user praised stable gyro behavior, low apparent latency, and configurable minimum and maximum sensitivity thresholds.Read 15 Oct 2026 · reddit.com
Release
The releases page lists JoyShockMapper v3.6.1 as the latest release.Read 30 Sep 2026 · github.com
SDK/library
JoyShockLibrary is a separate C++ library for reading DualSense, DualShock 4, JoyCon, and Pro Controller input.Read 15 Oct 2026 · github.com
SDL integration
Current controller support uses SDL2, with releases updating the bundled SDL version.Read 15 Oct 2026 · github.com
Stick modes
Sticks can control the mouse or trigger key presses in modes including flick stick and scroll wheel.Read 30 Sep 2026 · github.com
Supported controllers
The project documents support for DualSense, DualShock 4, paired JoyCons, and Nintendo Switch Pro Controllers.Read 15 Oct 2026 · github.com
Touchpad support
The documentation includes PlayStation touch and touch-stick inputs.Read 15 Oct 2026 · github.com
Virtual controllers
JoyShockMapper can create virtual Xbox and DS4 controllers through Nefarius ViGEmBus.Read 15 Oct 2026 · github.com

Plans and prices

Free/open-source JoyShockMapper Free downloadable executable · source available · Windows and Linux builds Read 15 Oct 2026 · github.com
JoyShockMapper Free Free download; Windows release; Linux can be built from source Read 30 Sep 2026 · github.com

Every JoyShockMapper plan and price →

Strong points and limits

Strong points

  • Supports gyro controls and flick stick.
  • Maps buttons to keyboard or mouse inputs.
  • Supports four listed controller types.
  • Free Windows release; Linux can be built from source.

Limits

  • Linux builds may not always work.
  • Linux requires access to /dev/uinput and /dev/hidraw.
  • Focused-window detection works only on X11.
  • Virtual controller output requires separate ViGEm bus software.

Who it suits

JoyShockMapper suits PC players who want to map supported controllers to keyboard, mouse, or virtual-controller inputs. Linux users need to be comfortable with the listed device permissions and X11 limitation.

Verdict

JoyShockMapper offers detailed input mapping, including gyro and virtual-controller output. Its Windows focus and Linux requirements are important platform considerations.

Where Specifiction places it

Alternatives to JoyShockMapperAll alternatives →