Main > Main Forum

Help/Advice for multiple USB controllers

Pages: << < (2/7) > >>

IAmDotorg:


--- Quote from: jshel65 on November 16, 2014, 09:12:40 am ---Man, this is pretty discouraging. Just dropped a decent amount of cash trying to round up the necessary usb cables and old controllers. I would be surprised if there isn't somebody out there who knows how to make this happen. I'll keep working on it, although I'm not the most computer savvy guy but I hate to waste money and not see my vision come through.

--- End quote ---

There really isn't. Windows has a somewhat convoluted way of tracking USB controllers, and the APIs that the emulators are incorrectly using have no defined order things get returned in. I've looked into it in quite a bit of detail.

From what I can tell, your only options are:

- Get the code for all of your emulators, fix their broken controller handling to be GUID and not ID/offset based
- Write a tool like ControllerRemapper for all of your emulators individually (although you may get lucky and some may be GUID based)
- Use something like vJoy to remap the controllers to virtual controllers which hopefully are stable (note, there's no guarantee of that, either)
- Use the Detours library and remote code injection to patch the API calls to reorder the controllers in a controllable way. (This is probably the "best" option but its extremely complicated coding.)
- Downgrade to XP where JoyIDs works.
- Don't use external controllers.

And with HyperSpin unless you got lucky and your P1/P2 controls ended up 0 and 1, you'll need a program to map the joystick buttons to keyboard events because HyperSpin's joystick handling is even more fundamentally broken than the emulators' handling.

I'm having to write a tool like ControllerRemapper for MAME anyway, so that's probably the initial pass I'm going to do. (I have an added complexity that which stick and buttons are P1/P2 vary depending on the game, so I need more sophisticated logic setting up my MAME defaults anyway.)

I haven't solved my HyperSpin problem, though.

Now another more extreme option would be to use Linux. I think there's some pretty substantial downsides of that, but the upside is the controllers map in a more reliable way and worst-case you can use symbolic links to the devices to switch them around.

I may end up nixing the external controller idea, though, because there just doesn't seem to be a reliable way to do it.


keilmillerjr:

If your having issues with multiple usb devices, is using origional port reciprocal's and wiring them to a single controller an option for you?

jshel65:

It seems to be quite a complex solution to this issue. I'm surprised there hasn't been a program written for windows at this point to solve this. What if you had one of the USB hubs that have the on/off switches for each one like thishttp://www.amazon.com/Generic-7-Port-USB-Hub-Port/dp/B007S642BW.

In this case could you simply have all of your controllers plugged into this and once you launch into an emulator turn only the controller that you're going to use for that system on? That way those two controllers would automatically move up to first preference?

jshel65:

Check out this video..according to Chris this type of 3.0 USB card is the answer!How to configure your arcade for multiple control…:

DeLuSioNal29:

Looks promising. How much are the controllers?

Pages: << < (2/7) > >>

Go to full version