JoymixerUI for Linux - lets you create
config files (map files) that allow you to combine
hardware joysticks / gamepads into 1 virtual joystick
via joymap
software It configures & uses joymap to achieve this. Joymap software is a project of Alexandre Hardy, homepage, a commandline joystick mapper. The map file is loaded by loadmap and then joymap creates the virtual joystick defined in the map file. Joymap map files are flat text files with a very specific syntax; they are not very easy to write manually, that is where JoymixerUI helps.... limitation: == joymixerUI only supports USB hardware. sorry. (maybe it works with serial. I do not know, I do not have the hardware) == joymap *replaces* the joysticks with a virtual one. that means, if you e.g. disable a button in a map, that button has become invisible in your games / system while that map is active. If you dont want that behaviour, use some other software like Qjoypad. In Qjoypad, the button will still be "seen" together with the keystroke you have assigned. However, Qjoypad cannot combine sticks. == you *can* combine joymap/joymixUI with Qjoypad :-) |
what can you do with it : |
- Fix Wine v 7.x and later: Logitech
Extreme <...> sticks will not work properly in
these wine versions, and possibly other sticks with
similar axes mapping as well. the bug report @ winehq bugzilla : https://bugs.winehq.org/show_bug.cgi?id=55653 - old games that only support 1 joystick can now use separate sticks & pedals & steering wheels & brakes etc etc: simply combine all hardware into a single virtual joystick *.map file, and load it. (max 10 devices) - configure 1 click load the right map + launch the game - have setups (*.map files) per separate game in one UI. gives oversight of which keystrokes are in which game, and easy switching from one game to another. simply load the setup (*.map) created for the game you want to play. The game will see your virtual stick. - load setups and unload them from this UI. no commandline needed - map keystrokes on buttons, the game will see keyboard input instead of button presses. - disable buttons for games you find irritating or cause unintended actions in one game, but are needed in another - almost double the nr of buttons by dedicating a "shift" button - set deadzone per axis (e.g. to eliminate "wobbling" of joysticks .. ) - invert any axis, e.g : up-down becomes down-up, necessary for some games... |
flexible: - button actions are separately loadable from stick layouts: i.e, you can use the button definitions separately, and use them with another stick. This is handy if you have downloaded a setup (map file) for a game but that was not created for your stick / or... you got yourself a brandnew nice stick ..... : Load the map file, assign your sticks ( maybe use the default stick setting: this will fill every button and axis with your choice and then adjust manually where needed ) |
PLEASE NOTE: JOYMAP must be setup
first !! You must setup joymap first, to make things work. instructions to build and install come with the package. basically you need to do : unzip it. open a terminal in the directory run : make make install and use the script that comes with the joymap download to load the joymap driver Alternatively : you MAY try to use the following download / script. it might just work. It was tested on openSuSE (15.x) and on Ubuntu (20.x LTS) : it succesfully installs and configures joymap on both. HOWEVER: you must run the installer as root, since it is a device driver, communicating with the kernel. put the tgz and the install script in the same folder, open a terminal there as root and execute the install script. It only works with systemd linuxes... thats almost all of them but there are exceptions. joymixer.tgz - the software installjoymix.sh - the installation script.. If all went well, the driver is automagically loaded whenever you boot your computer. If it does not work, you can fix things anyway : the script /usr/lib/sticksetup/sticksetup.sh must be executed as root (sudo) to make the virtual joystick possible; ideally, at system startup. e.g. via /etc/rc.local or whatever your distro is using for system boot. It *must* be run as root. Downloads : |
joymixUI binary. runs on most linuxes download here |
joymixUI lazarus project. for pascal programmers... GPLv3. please respect the license. download here |
some map files to get you started
: (key sequences are for RedBaron3D, change as
you wish, its just an example ) Logitech Extreme 3d : logi-extreme3d.map here this map file will also fix problems of throttle not working etc in wine 7.x and later. probably an issue for other sticks as well. thrustmaster flight X inc pedals : here Sample combi of thrustmaster and simped pedals : here |
Wine sometimes has problems picking /
detecting the right joystick for you. this might help detecting the virtual joystick : put it in your user profile ( ~/.bashrc or ~/.kshrc or whatever your shell is .. ), or script that starts wine ( or , in my case, Crossover from codeweavers, a wine-wrapper ) _______________script between these lines _______________________ #!/usr/bin/bash export SDL_HINT_LINUX_JOYSTICK_CLASSIC=1 export SDL_LINUX_JOYSTICK_CLASSIC=1 /opt/cxoffice/bin/crossover _______________________________________________________ |