v1993 / linuxmotehook

Cemuhook-compliant WiiMote motion provider for Linux
Apache License 2.0
14 stars 0 forks source link

Wiimote not recognised unless using direct input, gyro not working #4

Closed MHeisoku closed 3 years ago

MHeisoku commented 3 years ago

Have configured a Wiimote motion plus and tested using PadTest and moving mote shows movement of gyro. Not exactly sure how to derive last three values from PadTest so just set them all to -1. Cemu recognizes the provider and I can set by Slot for the mote. When I go to configure though as a Wiimote no device is recognised - I can only find a direct input device which I can map buttons to but can't set rumble strength and when playing a game the gyro doesn't register (only buttons).

Would really appreciate some help as I must be missing something obvious.

v1993 commented 3 years ago

UPD: I realized something while I was writing this reply: you wanted to use it as wiimote! Sadly, there is currently no way to use motion data with (emulated for game) wiimote in Cemu, it only works with wii u's gamepad. Yes, it's confusing. To have rumble you want to use XInput device, but I'm not sure they support rumble on emulated wiimote.

You are missing the fact that Cemu's "WiiMote" input is intended for Cemuhook-less usage of wiimotes and it works only on windows. Please ask on Cemu support how to use DSU input in Cemu, since there are two ways to do this now (either via cemuhook (old way) or directly with cemu itself (new way, less stable for now)). You probably should try cemuhook WITHOUT "use for buttons too".

As for last three gyro values, is there any reason you have them as -1's instead of 1's? They change the direction of individual gyro axles, which appears to vary from MPlus to MPlus or so internet told me. If they are set wrong, rotating around specific axles will produce wonky results both in PadTest and games. So far, all units I knew worked correctly with three ones, but your case might differ.

v1993 commented 3 years ago

Please reopen this if you feel your question was not answered properly.