... use your gamepad wherever you need it: QJoyPad
(Background image is of a
Logitech® Wingman Rumblepad™)

Graciously hosted on

As seen on:
The Linux Game Tome

Help QJoyPad thrive!
Support This Project

I use Mozilla Firefox Get Firefox
Introduction Back to the top!

     This is the home page of QJoyPad, a simple Linux/QT program that lets you use your gaming devices where you want them: in your games! QJoyPad takes input from a gamepad or joystick and translates it into key strokes or mouse actions, letting you control any XWindows program with your game controller. This lets you play all those games that for some reason don't have joystick support with your joystick. QJoyPad also gives you the advantage of multiple saved layouts so you can have a separate setting for every game, or for every class of game! That way you can play your games the way you want, not the way the programmers decided, and you can have the same button be "fire" in every one of your space fighters. QJoyPad gives you the freedom and flexibility to really take advantage of gaming devices in Linux, and makes the Linux gaming experience just a little bit nicer.

News Back to the top!

February 2, 2010 - QJoyPad 4.1 released! Packagers wanted

     QJoyPad 4.1 is out! Here is the obligatory list of new features:

  • Migrates tray icon code over to native Qt tray icon code. Clears up a lot of random errors.
  • Overhaul of the configure script to fix problems a lot of people were having when building on Ubuntu, Fedora and the like.
  • Introduces advanced gradient options!
    Under the Axis configuration you'll have the option to set what sort of curve QJoyPad uses to calculate how far to move your mouse. Huge thanks to Yue Shi Lai for submitting the patch for this.
  • Previously if the window for QJoyPad configuration was open no events were generated. Now this behavior only happens if the configuration is open and has focus.
Unfortunately there are no binary packages available yet, but I have a spec file for Fedora. If you know how to generate an rpm from it correctly (i.e. optimized to the bare minimum allowed by the distro) let me know! If you know how to create portage files, or the Ubuntu/Debian equivalent by all means let me know!
(If you're an ArchLinux user like me, you can find both the development PKGBUILD and the latest stable release PKGBUILD in the AUR)

August 20, 2009 - QJoyPad 4.0 released! And: The future of the project

     Let me begin by thanking each and every one of you for reporting all the bugs you found to me, it helped me put the final touches on the first release of QJoyPad in years. Secondly, I would like to thank Nathan for starting this project and being so available and helpful in getting this project back into active development. But enough of that. Release notes as follows:

  • Port of code to the Qt4
  • A new and improved config script that allows for easier packaging and building (thanks to Fabien for helping out with this)
  • A new startup option --force-tray that forces QJoyPad to wait for the system tray to become available; helpful for when you want to have QJoyPad start up with your WM and don't want the floating icon
  • Improved performance
  • Various bug fixes that existed in the old code
     Unfortunately I'm not very good at packaging, so as of now, this version is available source only. If you have some packaging skills, and would like to send a package my way, please do!
Now, for the curious, here is a list of features you can look forward to as well as bugs I will be working to iron out!
  • Get QJoyad working on the PS3 when the controller is connected via bluetooth
  • Support for pressure sensitivity
  • Multiple simulated keypresses per button press
  • Migrating this list to its proper place on the site :P
  • The system icon in the tray sometimes has a garbled background, migrate trayicon code over to the new native Qt4 system tray icon
  • Create a list of gamepads known to work with QJoyPad (If you'd like to help, please email me your make and model and I'll get to work on that list
If you'd like a feature on this list that isn't here, by all means, drop me a line. I always welcome bug reports too, so don't hold back on that account ;) Until later!

Features Back to the top!
  • Incorporates your gaming devices into any XWindows program
  • Move and click the mouse with your joystick
  • Auto-detects how many joysticks you have and how many buttons and axes each supports
  • Can detect joystick devices on the fly without restarting
  • Support for devices with more than two axes
  • Save as many layouts as you want and switch between them quickly
  • Swap layouts on the fly from the command line or from a script
  • Share layout files with your friends or even edit them by hand for greater control
  • Color cues quickly show you which buttons you're pressing and which joystick you're using
  • Set or reset all the keys at once in a flash
  • Adjust the sensitivity of every axis independently
  • Quietly hides in your system tray, running in the background without taking up space
  • For window managers without a system tray, QJoyPad can run without the tray icon.
  • Make an axis "Gradient" so that a light push does a little and a harder push does more - now with customizable curves!
  • Support for throttle controls
  • Make a button "Sticky" if you don't feel like holding it down all the time
  • Turn on Rapid Fire so you don't wear out your gamepad!
  • Supports DVORAK keyboards and other unusual key layouts
  • Native tray icon code making putting it in your start up entry simple
Bold = New or improved in 4.1!
Documentation Back to the top!
The documentation for QJoyPad is now available online! Click here to give it a look.

Download Back to the top!
A few key points before you download:
  • QJoyPad is only meant for Linux computers and will only work in XWindows. That means it can't help you at the console, and if you're a Microsoft Windows user, you'll have to look elsewhere.
  • QJoyPad requires the QT Toolkit to work. This is the basis for KDE and is already installed on most Linux distributions, but if you don't have QT installed, you'll have to get it from Trolltech.
  • You need a working joystick or gamepad to use QJoyPad; this means only gaming devices that are supported by the Linux kernel will work, and only after the proper drivers are loaded. QJoyPad is not a hardware driver.

File Version Type Date Contributed by
qjoypad-4.1.0.tar.gz 4.1.0 Source Code 2/02/10 John Toman

No binary for your distro? Help out and contribute. ( email me )

Older versions of QJoyPad can be found here.

If you're moving up from an earlier version, your layout files are incompatible with version 3.0 and up. To convert your old version 2 files to the new format, use the converter program found here.

QJoyPad is completely free, but if you use it and want to show your appreciation, click this button to make a donation:

Support This Project

Screenshots Back to the top!
Screenshots of version 3.4!

The basic window... notice how every button can have virtually any key assigned to it, or no key at all. In version 3, every axis gets its own settings instead of just limiting you to one button to each of Up, Down, Left, and Right.

Here you can see the highlighting in action! Right now I'm hitting up, right, and button one, all at once, on joystick one. If I were to press a button on joystick two, you would see the little "Joystick 2" button light up just like the one for "Joystick 1".

With QJoyPad's new tray icon, you can change layouts with a convenient menu without needing to see the full settings dialog.

Instead of just pressing a key, every button and axis of your gaming device has many options in QJoyPad3. For instance, the dialog for setting up an axis is shown above (the blue bar shows that I'm pushing that axis just a little to the left). But don't worry, even with the added complexity that comes with the new features you can still setup a layout quickly and easily using the new Quick Set feature.

Contact Back to the top!
The current author and maintainer of both QJoyPad and this website is John Toman; feel free to drop me a line at virtuoussin13@users.sourceforge.net

This project was originally written and maintained by Nathan Gaylinn. You can still reach him at wren42@users.sourceforge.net

Any questions, comments, suggestions, or positive criticisms are greatly appreciated!

QJoyPad is 100% GPL, meaning it is free and open source. Feel free to do with it what you will, just remember who's responsible for the code and give credit where credit is due. Also, if you find the QJoyPad source useful, please, let me know. It's a good feeling to see your source put to work.

A little thanks should also go to LinuxEMU for helping me get the word out about QJoyPad. Lovely forums they have there ;)

This website is graciously hosted for free on SourceForge.net, an organization dedicated to bringing Open Source software to the world. Thank you sourceforge, you help make Open Source possible.


Listed on The Linux Game Tome
(image represents QJoyPad's current rating)

The Linux Game Tome

Submitted to search engines through Addme.com

AddMe.com, free web site submission and promotion to the search engines