cemu-project / Cemu

Cemu - Wii U emulator
https://cemu.info
Mozilla Public License 2.0
7.42k stars 608 forks source link

Pro Controller, difficulty to activate Use motion (Linux) #805

Open ghost opened 1 year ago

ghost commented 1 year ago

Good morning,

I don't speak English, I translate with Google.

3 weeks ago I built Cemu on POP_OS 22.04 following this link: https://github.com/cemu-project/Cemu/blob/main/BUILD.md My Pro Controller worked including gyro movements. Unfortunately, I had to reinstall the whole system and now I no longer have access to the gyroscopic movements.

For information I tried several AppImage versions. I also tried to rebuild old releases (https://github.com/cemu-project/Cemu/releases/), but the build fails.

Another question. Currently do we still need to install programs like evdevhook, joycond-cemuhook… to be able to use gyro movements?

Thank you for your help and for your work.

ghost commented 1 year ago

Sorry again for my bad English!

I managed to activated the gyroscopic motion control!

I installed the package steam.

sudo apt install steam

Lecture des listes de paquets... Fait Construction de l'arbre des dépendances... Fait Lecture des informations d'état... Fait Les paquets supplémentaires suivants seront installés : i965-va-driver:i386 intel-media-va-driver:i386 libavahi-client3:i386 libavahi-common-data:i386 libavahi-common3:i386 libcanberra0:i386 libegl-mesa0:i386 libegl1:i386 libigdgmm12:i386 libltdl7:i386 libmysofa1:i386 libpipewire-0.3-0:i386 libpipewire-0.3-modules:i386 libspa-0.2-avb:i386 libspa-0.2-modules:i386 libtdb1:i386 libudev1:i386 libva2:i386 libvorbisfile3:i386 libvulkan1:i386 libwebrtc-audio-processing1:i386 mesa-va-drivers:i386 mesa-vulkan-drivers:i386 pipewire:i386 steam-devices va-driver-all:i386 Paquets suggérés : i965-va-driver-shaders:i386 libcanberra-gtk0:i386 libcanberra-pulse:i386 Paquets recommandés : pipewire-aes76:i386 Les NOUVEAUX paquets suivants seront installés : i965-va-driver:i386 intel-media-va-driver:i386 libavahi-client3:i386 libavahi-common-data:i386 libavahi-common3:i386 libcanberra0:i386 libegl-mesa0:i386 libegl1:i386 libigdgmm12:i386 libltdl7:i386 libmysofa1:i386 libpipewire-0.3-0:i386 libpipewire-0.3-modules:i386 libspa-0.2-avb:i386 libspa-0.2-modules:i386 libtdb1:i386 libudev1:i386 libva2:i386 libvorbisfile3:i386 libvulkan1:i386 libwebrtc-audio-processing1:i386 mesa-va-drivers:i386 mesa-vulkan-drivers:i386 pipewire:i386 steam:i386 steam-devices va-driver-all:i386 0 mis à jour, 27 nouvellement installés, 0 à enlever et 95 non mis à jour. Il est nécessaire de prendre 21.4 Mo dans les archives. Après cette opération, 79.2 Mo d'espace disque supplémentaires seront utilisés. Souhaitez-vous continuer ? [O/n] o

It appears that one or more dependencies help Cemu enable gyroscopic motion control Maybe steam-devices ? https://packages.debian.org/fr/sid/steam-devices

Then in the POP_OS Bluetooth settings I removed my Pro Controller and activated it via the button next to the USB C port.

I launched Cemu-2.0-36-x86_64.AppImage.

In Cemu, options, Input settings. Emulated controller → Wii U GamePad

Controller, I deleted the old configuration by sectioning (-) and creating a new configuration (+) API → SDLController and Controller → Nintendo Switch Pro Controller, select Add

Then I click Settings and check Use motion.

With this method there is no need for program like evdevhook, joycond-cemuhook…

Long live Cemu!

sibwaze commented 1 year ago

_It appears that one or more dependencies help Cemu enable gyroscopic motion control Maybe steam-devices ?

I've figured out that it's game-devices-udev (https://codeberg.org/fabiscafe/game-devices-udev)

Thank you for the note

theofficialgman commented 9 months ago

SDL2.28.5 (used in CEMU 2.0-65) does not support reading event# separated IMU inputs.

HIDRAW based motion works but you need to be able to read that as regular user. Steam installs udev rules for many controllers (including switch pro controller) so that regular user can read them. See https://github.com/cemu-project/Cemu/issues/1097#issuecomment-1952626670 for a dump of that file, you can place it in /lib/udev/rules.d/ and restart and HIDRAW for those controllers will be able to be read by any standard user.