How to Use vJoy: Feeders Explained for Beginners

The most important beginner fact about how to use vJoy is slightly disappointing and completely liberating: vJoy alone does nothing. Installing it creates virtual joystick devices, but no input ever appears on them until a feeder application writes it. Once you understand that, everything else falls into place. Games read the virtual device, feeders write to it, and vJoy is the honest plumbing in between. This guide explains feeders in plain language, introduces the feeder programs people actually use, and walks you through a first mapping small enough to succeed on the first attempt and clear enough to teach you the whole model.

The three-part model

Every working vJoy setup has three parts. First, a source: a physical joystick, a mouse, a keyboard, a serial device such as an Arduino, head-tracking data, or even the output of another program. Second, a feeder: the program that reads the source, optionally transforms it with curves, merging, deadzones or scripts, and writes the result into a vJoy device by calling functions in vJoyInterface.dll. Third, the game or application, which simply reads a standard DirectInput joystick. If any part is missing, nothing happens, and beginners usually hunt for the missing part inside vJoy itself, even though vJoy was never supposed to supply it.

  • Source: where the movement or button press really comes from.
  • Feeder: reads the source and writes to a numbered vJoy device via vJoyInterface.dll.
  • vJoy device: the virtual joystick defined in vJoyConf, with your chosen axes, buttons and POV.
  • Game: reads the vJoy device like any other DirectInput controller.

Meet the feeders people actually use

Joystick Gremlin is the modern general-purpose feeder for flight and space simulation: it merges multiple physical devices, applies response curves and macros, and writes the combined result to vJoy, which it requires. UCR, Universal Control Remapper, maps a wide range of inputs and uses vJoy as its DirectInput output provider, while using a different provider for Xbox-style output. FreePIE is an older, script-driven feeder, stable but with its last release in 2019, still used for mouse-to-joystick scripts and as part of head-tracking chains where OpenTrack output is routed through FreePIE and vJoy in community setups. Specialist feeders exist too: vJoySerialFeeder brings serial, RC and Arduino data in, and Sx2vJoy feeds 3DConnexion devices. Choose the feeder by source and job, not by popularity.

Your first mapping, step by step

  1. Install vJoy and use Configure vJoy to create device 1 with the X and Y axes enabled and a handful of buttons.
  2. Verify in joy.cpl that the vJoy Device exists. Leave the Properties window handy for testing.
  3. Install and open your chosen feeder. In its output settings, select vJoy device 1 as the target.
  4. Create exactly one mapping: one source axis, for example your physical stick’s pitch, written to the vJoy device’s X axis. No curves, no modifiers, no macros yet.
  5. Open JoyMonitor or the joy.cpl Properties view and move the stick. The virtual X axis should follow your hand.
  6. Add one button mapping and test it the same way. Only when both work should you build the rest of the profile, a few mappings at a time, testing as you go.

That deliberately tiny first mapping is the whole craft in miniature. If it works, you understand your setup: source, feeder, device, verification. If it fails, the failure is easy to locate, because only one mapping exists. Beginners who import a huge shared profile as their first step inherit somebody else’s device IDs, axis choices and assumptions, and then cannot tell whether a failure is theirs, the profile’s, or the driver’s. Build small, prove it, grow it. Profiles built that way are also the ones you can repair months later without dread.

Making the virtual device recognisable to games

Once the feeder writes reliably, start the game and look for the vJoy Device in its controller list. Expect the name to be generic. Simulators list every vJoy device under the identical name, a documented annoyance in the Microsoft Flight Simulator community, so if you run several devices, give them deliberately different axis and button counts in vJoyConf so you can tell them apart in binding screens. Bind one axis in the game, test it in a safe screen or training mission, then continue. Remember that vJoy presents a DirectInput device and does not emulate XInput, so a game that only accepts Xbox-style controllers will need an additional translation layer and will not see vJoy directly.

Common mistakes

  • Waiting for vJoy to move on its own. It never will. No feeder, no input. This is design, not a fault.
  • Feeder writing to the wrong device ID. The feeder target, vJoyConf device and game selection must agree.
  • Two feeders on one device. They overwrite each other. One device per feeder.
  • Building the full profile before the first test. One axis, one button, proven, then grow.
  • Testing only inside the game. Verify in JoyMonitor or joy.cpl first so you know which layer failed.
  • Ignoring version matching. Feeders load vJoyInterface.dll; a DLL from a different release than the driver causes the classic version mismatch error.

Frequently asked questions

Do I need to start vJoy before playing? No. The driver is loaded by Windows. You start your feeder, load its profile, and then start the game. Can one feeder drive two games? The feeder writes to the device; any game reading that device sees the same data, though you will normally run one game at a time. Can vJoy turn my mouse into a joystick? Only through a feeder, typically a FreePIE script or UCR mapping that writes mouse movement into virtual axes. Is keyboard-to-joystick possible? Yes, feeders such as UCR can map keys to virtual buttons and axes. What should I learn next? Device planning in vJoyConf and live verification in JoyMonitor. Those two skills cover most of daily vJoy use.

Keep going

Start from the vJoy download page if you need the installer again, and use the vJoy Setup hub as the index for this whole cluster. Two guides that pair naturally with this one are How to Install vJoy: Complete Guide and vJoy Monitor Guide. Read them in that order if you are building a setup from scratch: download choice first, installation second, configuration third, and only then time inside a game or simulator. That order prevents the most common wasted hour in this niche, which is debugging a feeder or a game for a driver problem that was visible in Windows all along.

Similar Posts