Hi, I have a IPAC2, and though it works quite well with emulators, it's a pain with recent Windows games that only support XInput. I tried quite a lot of solutions (only one working was UCR, but it's quite a pain to configure), but nothing was as simple as the old x360-like dll plus a mapping file.
I had been following Nefarius' ViGEm Bus Driver (
https://github.com/ViGEm/ViGEmBus), and in february began implementing some software with it. After quite a bit of fiddling, I had something working. Fast forward 6 months and I finally got around to polishing it a bit and making a public release, so here it is:
https://gitlab.com/SchwingSK/Keyboard2Xinput.
I'm not going to copy/paste the whole documentation here, but here are the highlights:
- simple mapping file as configuration (one key = one button/axis)
- creates as many pads as you want (not tested but should work with IPAC4 or any other keyboard encoder)
- lightweigt (fast startup)
- discreet (no splashscreen)
- supports passing mapping file as argument if you need different mappings for different games
- support for a toggle on/off key so that if you need your keyboard in-game you can have access to it
- open source so that anyone can submit merge requests/fork the project
I've tested it on Windows 7 & 10. On my two pcs, it has been quite stable, BUT: this is my first time coding in C#, I tried to follow conventions, but I'm sure I made lots of beginner mistakes, so keep that in mind if it misbehaves/doesn't work
Any comments are welcome, I'll TRY to address issues, but my experience in C# is limited, so no promises
Important note: please make sure to read
installation instructions. Keyboard2Xinput in itself only requires unzipping but it depends on ViGEm (
releases) and CAN'T work without it.
Please note that as of 2019/04/18, ViGEm now has an installer, making installation much simpler!
Latest version downloadVersion history:
1.2.3 (2024/04/05)
- Thumb sticks now go to 100%
1.2.2 (2021/10/15)
- add pollInterval - allows Mortal Kombat XI, Injustice 2 and the like to correctly register simultaneous button inputs
1.2.1 (2020/05/21)
- add multiple mappings support
- add sample mappings (Thanks Angryherbalist for the IPAC4 mapping)
- add sample AutoHotKey scripts (Thanks MartyKong for the Pac-Man Museum example)
- generate html doc & include it in the release zip
1.2.0 (2019/07/12)
- add option to start disabled -
Issue #4- add distinct keys to enable/disable -
Issue #51.1.1 (2019/04/10)
- Tray icon doesn't disappear when program exits -
Issue #2- Confusing behavior when ViGem is not installed -
Issue #3download1.1.0 (2019/04/08)
- thumb sticks support added by SpaceNinja
- added small delay between controllers creation to get consistent controller order (SpaceNinja again!)
download1.0.0 (2018/08/17)
initial release