Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Configuration of one of the vJoy devices affects all other vJoy input devices #230

Open
jaybz opened this issue Apr 5, 2021 · 0 comments

Comments

@jaybz
Copy link

jaybz commented Apr 5, 2021

Steps to reproduce:

  1. Enable multiple vJoy devices
  2. Configure each enabled vJoy device with a different number of axes (configure at least 1 axis, see related issue below for explanation), buttons, and POVs.
  3. Close UCR if it is running.
  4. Start UCR.
  5. Check the input axis and button binding menu of all vJoy devices.

Result:

All vJoy input devices will have the same binding menu options despite different configurations. I haven't been able to determine which vJoy device it will follow, but I suspect it's either the first or last vJoy input device that that is UCR encounters during enumeration. Output vJoy devices are unaffected.

Notes:

Aside from the related issue below, IOWrapper appears to enumerate vJoy DirectInput device capabilities correctly. As far as I can see, the configuration of the first vJoy device from IOWrapper.Core.IOController.GetInputList() is what is applied to all the remaining vJoy devices. That's how far I've gotten so far. I don't mind digging into this further later, however, I'm posting this issue just in case someone already has a good idea where the cause might lie.

Related issue: (This appears to be an IOWrapper issue)

  1. Repeat same steps above.
  2. Find the vJoy device whose configuration got applied to all the other vJoy input device.
  3. Reconfigure that vJoy device to have no axes enabled.
  4. Check the input axis and button binding menu of all vJoy devices.

Result:

All vJoy input devices will only have "Clear binding" in their binding menus.

Notes:

I included it here so that you can specifically avoid configuring a vJoy device with no axes while trying to track down this issue. From what I can tell, if I configure one of the vJoy devices with no axes, but with buttons and POVs, one of the resulting vJoy devices returned from IOWrapper.Core.IOController.GetInputList() will have no nodes available. I will file either an issue or PR with IOWrapper as soon as I know more.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant