Vjoy 2.18 !new!
The vJoy 2.18 driver provides one virtual device (by default) with the following configurable capabilities:
| Function | Purpose | |----------|---------| | vJoyEnabled() | Checks if driver is installed | | GetVJDStatus(uint32_t device) | Returns status (free, owned, busy) | | AcquireVJD(uint32_t device) | Locks device for exclusive use | | RelinquishVJD(uint32_t device) | Releases device | | SetAxis(long value, uint32_t device, uint32_t axis) | Sets axis value (0–32767) | | SetBtn(bool state, uint32_t device, uint32_t button) | Sets button press/release | | SetContPov(uint32_t value, uint32_t device, uint32_t pov) | Sets POV hat angle | vjoy 2.18
The vJoyConf utility allows users to define the exact number of axes, buttons, and POV hats, tailoring the device to specific simulation needs. The vJoy 2
When you open the application, you will see a tabbed interface representing your 16 possible virtual devices. Here you can change: If you are trying to emulate an Xbox
Choose between 0 and 4, and select whether they are "Continuous" (360-degree precision) or "4 Directions" (Discrete North/South/East/West).
If you are trying to emulate an Xbox or PlayStation controller explicitly, tools built on (like DS4Windows or XOutput) are generally preferred today over vJoy, as vJoy explicitly emulates generic DirectInput joysticks rather than XInput devices. However, for specialized simulation hardware setups, vJoy 2.18 combined with Joystick Gremlin remains unmatched in utility.
It is the standard for building custom controllers using Arduino or Raspberry Pi, where data is fed into vJoy, which then acts as a standard game controller in Windows.