Skip to content
SPECIFICTION
Get listed

ControllerBuddy

controllerbuddy.org

Free plan Open source WindowsmacOSLinux

What it is

ControllerBuddy maps gamepad inputs to keyboard and mouse actions or a virtual joystick for flight simulators. Profiles can assign controls through different modes, and an overlay displays the active mode and virtual-axis states. A gamepad-controlled on-screen keyboard supports selecting keys and holding multiple keys at once. The software supports Xbox Controller, DualShock 4, DualSense and other controllers supported by SDLGameControllerDB. Community-maintained profiles are listed for simulators and aircraft, including DCS World and Microsoft Flight Simulator versions 2020 and 2024. ControllerBuddy runs on Windows 10 or 11 (x64) and Linux (x64 or aarch64); its official Flatpak package includes profiles and optional helper scripts for Proton games and DOSBox Staging. The software is free and open-source under GNU GPL v3.0. There are control limits: mode actions must be assigned at Default Mode level and cannot combine multiple buttons, and the two triggers cannot be merged into one rudder axis. It uses rolling releases, with backward compatibility not guaranteed.

Spec sheet

What it does
ControllerBuddy maps gamepad controls to keyboard, mouse and virtual-joystick inputs for flight simulators.Read 15 Oct 2026 · controllerbuddy.org
Purpose
ControllerBuddy maps gamepad inputs for flight simulators, aiming to let users fly without a joystick, keyboard, or mouse.Read 3 Oct 2026 · controllerbuddy.org
Support
The project directs bug reports to GitHub Issues and questions to its Discord community.Read 15 Oct 2026 · controllerbuddy.org
License
ControllerBuddy is released under the GNU General Public License version 3.0.Read 15 Oct 2026 · github.com
Maker
The website identifies Matteo Hausner as the creator and copyright holder of ControllerBuddy.Read 15 Oct 2026 · controllerbuddy.org
Action cycles
An action-cycle feature runs a sequence of configured sub-actions one after another on repeated presses.Read 15 Oct 2026 · github.com
Command-line integration
Command-line parameters can autostart modes, load or save profiles, set network hosts and ports, pass passwords, export visualizations and quit the application.Read 15 Oct 2026 · github.com
Controller compatibility
Supported examples include Xbox 360, Xbox One, Xbox Series X|S, DualShock 3/4 and DualSense controllers, with additional SDL_GameControllerDB devices supported.Read 15 Oct 2026 · github.com
Controllers
It supports Xbox Controller, DualShock 4, DualSense, and other controllers supported by SDL_GameControllerDB.Read 3 Oct 2026 · controllerbuddy.org
DCS integration
The FAQ describes an example integration with DCS World and says command-line parameters can help integrate ControllerBuddy with other applications.Read 3 Oct 2026 · controllerbuddy.org
Developer extensibility
The source repository is public, uses Gradle, includes build and test tasks, and invites contributions through forks and pull requests discussed on Discord.Read 15 Oct 2026 · github.com
Documentation depth
Documentation consists of a long FAQ, README feature and build instructions, simulator profiles, Linux setup guides and GitHub issue reporting.Read 15 Oct 2026 · controllerbuddy.org
Domain registration
ScamAdviser reports a controllerbuddy.org WHOIS registration date of 2021-11-28.Read 15 Oct 2026 · scamadviser.com
Game profiles
The site lists community-maintained profiles for numerous simulators and aircraft, including DCS World and Microsoft Flight Simulator versions 2020 and 2024.Read 3 Oct 2026 · controllerbuddy.org
Input mapping
Profiles can map gamepad inputs to keyboard and mouse actions or a virtual joystick device.Read 3 Oct 2026 · controllerbuddy.org
Installation
Windows installation requires vJoy and a downloaded ZIP, while Linux installation uses uinput permissions and a TGZ archive.Read 15 Oct 2026 · github.com
Integration example
The project documents a DCS World integration that uses command-line parameters and the single-instance behavior.Read 15 Oct 2026 · controllerbuddy.org
Keyboard and mouse emulation
The software can generate keystrokes with modifiers, mouse-button presses, cursor movement and scrolling.Read 15 Oct 2026 · github.com
Limit: combined triggers
The two gamepad triggers cannot be merged into one axis for rudder control.Read 3 Oct 2026 · controllerbuddy.org
Limit: mode actions
Mode actions cannot be assigned to combinations of multiple buttons or nested inside another mode.Read 15 Oct 2026 · controllerbuddy.org
Limit: physical controls
Independent DCS commenters said controllers have fewer bindings and less precise axes than HOTAS hardware, with throttle management and complex aircraft controls remaining difficult.Read 15 Oct 2026 · reddit.com
Limit: setup complexity
A Reddit user reported that the software was not straightforward initially, although the developer spent about 30 minutes helping through Discord.Read 15 Oct 2026 · reddit.com
Limit: trigger rudder axis
The two gamepad triggers cannot be merged into one combined rudder axis.Read 15 Oct 2026 · controllerbuddy.org
Linux packaging
The project supplies an official Flatpak repository, and the application is not available through Flathub.Read 15 Oct 2026 · github.com
Modes
Mappings can be organized into switchable or momentary modes so one controller can expose multiple layouts.Read 15 Oct 2026 · github.com
Modes and overlay
Profiles support modes for assigning different functions to controls, and an overlay can show the active mode and virtual-axis states.Read 3 Oct 2026 · controllerbuddy.org
Network mode
A client-server mode sends controller inputs over UDP from one ControllerBuddy instance to another.Read 15 Oct 2026 · github.com
Notable news
The official homepage lists an October 2026 status update dated October 7, 2026.Read 15 Oct 2026 · controllerbuddy.org
Official profiles
The project maintains profiles for many simulators and aircraft, including DCS World, Microsoft Flight Simulator, Falcon BMS and IL-2.Read 15 Oct 2026 · github.com
On-screen keyboard
A controller-operated on-screen keyboard can select keys and hold combinations without a physical keyboard.Read 15 Oct 2026 · controllerbuddy.org
Operating systems
Windows and Linux receive full local, client and server support; macOS is server-only and has no provided binaries.Read 15 Oct 2026 · github.com
Overlay
A transparent in-game overlay can show the active mode and virtual-axis positions.Read 15 Oct 2026 · controllerbuddy.org
Praise: controller-only flying
A Reddit commenter said a controller setup enabled complete DCS operation without touching a keyboard or mouse.Read 15 Oct 2026 · reddit.com
Praise: modifiers
A Reddit user praised modes for letting the same controller button perform different functions in grouped layouts.Read 15 Oct 2026 · reddit.com
Praise: throttle control
A Reddit user praised the relative-axis behavior because throttle movement continues after releasing the stick and can be monitored with an overlay.Read 15 Oct 2026 · reddit.com
Primary use case
The project is designed to let users operate flight simulators with a gamepad instead of dedicated HOTAS hardware, a keyboard or a mouse.Read 15 Oct 2026 · controllerbuddy.org
Profiles
Profiles are JSON configuration files that can be edited and saved inside the application.Read 15 Oct 2026 · github.com
Relative axes
Relative-axis mappings preserve a value after a spring-centered stick is released, supporting throttle and camera controls.Read 15 Oct 2026 · github.com
Release model
Releases follow a rolling model, and backward compatibility is explicitly best-effort rather than guaranteed.Read 15 Oct 2026 · controllerbuddy.org
Security and compliance
The pages reviewed do not state security certifications or compliance claims.Read 3 Oct 2026 · controllerbuddy.org
Security statement
The official pages reviewed do not state security certifications, compliance attestations or a formal security program.Read 15 Oct 2026 · controllerbuddy.org
Supported systems
The stated operating-system requirements are Windows 10 or 11 (x64) and Linux (x64 or aarch64).Read 3 Oct 2026 · controllerbuddy.org
System requirements
The FAQ lists Windows 10 or 11 on x64 and Linux on x64 or aarch64.Read 15 Oct 2026 · controllerbuddy.org
Updates
ControllerBuddy uses rolling releases, and the FAQ says backward compatibility is best-effort and not guaranteed.Read 3 Oct 2026 · controllerbuddy.org
Virtual joystick
Inputs can drive virtual joystick buttons and axes through vJoy on Windows or uinput on Linux.Read 15 Oct 2026 · github.com
Website trust observation
ScamAdviser found a valid Let's Encrypt certificate and described the site as likely safe, while noting hidden WHOIS ownership and low traffic rank.Read 15 Oct 2026 · scamadviser.com
Windows and Linux installation
The install script installs ControllerBuddy on Windows x86-64 and Linux x86-64 or aarch64; on Windows it configures vJoy, while Linux setup uses udev and uinput.Read 3 Oct 2026 · github.com

Plans and prices

ControllerBuddy Free Free and open-source software; donations optional Custom profiles · modes · keyboard/mouse output · virtual joystick output · Windows/Linux desktop use Read 15 Oct 2026 · controllerbuddy.org

Every ControllerBuddy plan and price →

Strong points and limits

Strong points

  • Maps gamepad inputs to keyboard and mouse
  • Supports virtual joystick output
  • Overlay shows active mode and virtual-axis states
  • Includes community-maintained simulator profiles
  • Free and open-source under GNU GPL v3.0

Limits

  • Mode actions cannot combine multiple buttons
  • Triggers cannot merge into one rudder axis
  • Backward compatibility is not guaranteed

Who it suits

ControllerBuddy suits flight-simulator players who want to map gamepad controls to keyboard, mouse or virtual joystick inputs. It is for Windows and Linux users with supported controllers.

Verdict

ControllerBuddy provides profile-based gamepad mapping for flight simulators on Windows and Linux. Its control constraints and best-effort backward compatibility are important considerations for users building profiles.

Where Specifiction places it

Alternatives to ControllerBuddyAll alternatives →