Closed Ssezra closed 4 years ago
The joycons should be vertical to be in joined mode. The colour indicates battery level.
You can select the DSU client for gyro and assign the xinput buttons in input settings! That way you get rumble too.
Davidobot,
Thanks for the response. Ideally I'm trying to get 4 Single joy cons to respond correctly. So if im interpreting you correctly vertical = solo joy con 1 and solo joy con 2 paired. Solo joy con 3 and solo joy con 4 paired. If horizontal all 4 solo joy cons unpaired.
I havent seen where I can use both DSU client and xinput buttons under the settings. (If i select controller api dsu client I only get DSU options.) could you please elaborate?
I actually got the DSUclient to work with all 4 controllers. In order for SL/SR and home to work i needed to map them in the BetterJoy button mapping menu. (though to be honest the mapping part in betterjoy is a little confusing and not all options seem to correspond to a button that cemu will recognize) I had to map SL to Minus, SR to Plus (for both left and right) and Home to stick in order for Cemu to see a button being pressed.
I assume you managed to get it working?
The horizontal position does indeed mean that each controller would be seen as an "Xbox" controller.
You can untick "also use for buttons/axes" and just go into input settings and select "XInput" under the Controller:
drop-down.
David,
What does the "use for buttons/axes" do when checked or unchecked?
I was able to get something working for all 4 Joy-Cons with the following: [In Cemu App] Input Settings Controller One Tab (Same for all 4 tabs except a different controller for each tab 1-4) Emulate Controller: Wiimote Controller API: DSUClient Controller: Client 1 [In BetterJoy App] Map Special Buttons Home: Stick SL Left Joycon: Minus SL Right Joycon: Plus SR Left Joycon: Minus SR Right Joycon: Plus
With these settings I am able to map all of the buttons on a Joycon to Cemu and have motion but no rumble. If I try this with Xinput I am unable to get motion but all buttons map correctly in Cemu without needing the extra mapping options in Betterjoy. example: [In Cemu App] Input Settings Controller One Tab (Same for all 4 tabs except different controller for each tab 1-4) Emulate Controller: Wiimote Controller API: Xinput Controller: Controller 1
I'm not sure if my setup is working how you intended but it is was the only way I could figure it out. If there is a better way to have this configured please let me know. For now it would appear that if I want motion i'll have to sacrifice rumble and need to use the DSUClient API. I haven't seen a way to incorporate Xinput with a motion source option. If you could elaborate if this is possible I know it would be appreciate by me and many others. Thanks.
use for buttons/axes
overrides the settings you have in your Input Settings
.
Oh, I see, you're using emulated Wiimotes. As by default, only the gamepad has motion on the Wii U. Yeah, I think you found the only way of getting it working in that case! That's a Cemu/UDPServer limitation, not BetterJoy's!
Im trying to get some clarification on how BetterJoy v6.1 interacts with Joy-cons and Cemu 1.19/Cemuhook. (The issue may be my lack of understanding even after trying to read through the documentation) I've been trying to connect multiple Joy Con Controllers to Cemu/(with cemuhook installed) via the BetterJoy application. The host PC has paired all Joy-Con controllers via Bluetooth in Windows 10. BetterJoy has been installed with the VigeMBus driver and can locate all devices. (All devices show up in the GUI and can be rumbled with the locate button) All devices show up with a green background though on occasion I have seen a yellow background. (not sure what this indicates) The controller icons have been toggled to horizontal. (I asume this is unpaired mode?) The console output isn't displaying any failures and all systems are go. When opening up Cemu input settings I am running into a couple issues. If I select controller emulate wiimote/Controller API DSUclient API, Cemu can detect all of the client controllers. The issue however is when assigning buttons on Client 1, Cemu cannot detect or map the shoulder buttons SL or SR. It also maps the Joy Con controller home button as L-stick input. If I try to configure a second client via DSUclient Api, Cemu is unable to detect the shoulder buttons (SL/SR) and also the home button. A,B,X,Y when assigned appear as Dpad Left, Dpad Down, Dpad Up, Dpad Right. It is almost as if Cemu thinks the Joycons arent seperated. Motion/Gyro on all controllers works.
If I setup the Joycons as XINPUT Api, Cemu can detect all button presses and map them correctly. The issue then becomes that motion/gyro will not work. Cemuhook can see the gamepad motion source as DSU1/slot and a mac address/device is detected according to the menu. (It also can see DSU2 - 4 devices) The cemuhook config file has [INPUT] with serverIP = 127.0.0.1; serverPort = 26760; motionSource = DSU1; motionSourceIsBtnSource = false. BetterJoy has the motion server enabled and is listening on 127.0.0.1:26760. No matter what ive attempted with the Xinput API, Cemu doesn't seem to see the motion server telemetry. Have I configured this incorrectly? Is this a possible bug with Cemu 1.19, Cemuhook, or Betterjoy? Where else can I look to troubleshoot? Are the communications between client and server bidirectional? Other than throwing wireshark on the interface and taking a look at the UDP packets i am kinda at a loss. Any help or insight would be appreciated. Thanks