Davidobot / BetterJoy

Allows the Nintendo Switch Pro Controller, Joycons and SNES controller to be used with CEMU, Citra, Dolphin, Yuzu and as generic XInput
Other
3.76k stars 340 forks source link

[PROBLEM] Everytime I use program to connect the N64 Switch Controller it reads it as me having both an Xbox and N64 controller plugged in and doesn't let me properly configure any buttons and reads dual inputs at times #1009

Open DeeJayEX64 opened 1 year ago

DeeJayEX64 commented 1 year ago

Describe the bug A clear and concise description of what the bug is.

Expected behavior A clear and concise description of what you expected to happen.

Controller (please complete the following information):

DeeJayEX64 commented 1 year ago

Main issue is one button in particular it seems

dude98 commented 1 year ago

okay, it sounds like your game is reading the N64 controller already. if you're using steam, it has built in support for nintendo switch controllers, so you need to use hidhide or hidguardian to hide it from steam so only xinput is read, or just simply don't use betterjoy. if it's not using steam, the program you're using reads DirectInput, meaning you don't need to convert it to an xbox controller. if you're just doing it for rumble support, again, you can use hidhide or hidguardian, or bind the controls for the controller first then start betterjoy and bind the rumble motor. that being said, some programs can use the rumble motor of switch controllers already, so you can just check if it sees it.

all in all, the easiest fix is just check if the program you're using already reads the controller before starting betterjoy, if it does and you still want to use betterjoy, you need to hide the switch controller from the program so it only sees an xbox controller. and if you're using it through steam, don't use betterjoy, use steam's built in input system.

if i knew what program you were using, it'd be a lot easier to help you. next time, please write what game/emulator you're using in your issue.

DeeJayEX64 commented 1 year ago

Sorry should have specified. I'm using BetterJoyforCemu. I'm trying to use it on N64 Emulator Project 64, but the issue is is that the controller is working fine when my computer recognizes it as an Xbox 360 controller, but is also seeing it as an n64 controller and the button inputs are moving on their own. I recorded my screen to give you a better idea. Also if there is any discord that you know about that i can join to help trouble shoot this id love to be shown it. Also I have HIDGuardian installed. https://www.youtube.com/watch?v=oawWTIBs7pA

dude98 commented 1 year ago

okay, i see the bug already: when using a switch pro controller wired, windows sees weird data being sent, causing not double input, but random input from the directinput device, the only fix is to hide the controller using hidguardian (make sure it's enabled on betterjoy and then reconnect the controller) or, use steam as steam fixes it. another option is to hit they sync button while the controller is connected and it might fix itself, but then actual double input will happen because it'll read both the directinput and xinput. if windows can see the n64 controller, HIDGuardian IS NOT hiding it.