Progress Continues
We've already had 21264 updates since Dolphin 5.0. Keep up with Dolphin's continuing progress through the Dolphin Blog: August, September, and October 2023 Progress Report. |
The Dolphin Emulator Wiki needs your help! Dolphin can play thousands of games, and changes are happening all the time. Help us keep up! Join in and help us make this the best resource for Dolphin. |
Motion evdev: Difference between revisions
m (Make it explicit that axies are for HID nintendo) |
m (DualShock4 and DualSense use the same axis) |
||
(11 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
Dolphin supports the motion [https://en.wikipedia.org/wiki/Evdev evdev] devices but setting it up is a bit awkward. Nintendo Switch controllers (Joy-Con and Pro controller) are supported through the hid-nintendo driver. Sony DualShock 4 and DualSense through hid-sony/hid-playstation. | |||
The HID kernel driver exposes 2 (or more) evdev devices, one for the buttons and another for the accelerators/gyroscopes. The hid-nintendo driver exposes the motion axis on an "IMU" device while hid-playstation named it "Wireless Controller Motion Sensors". Do note that Nintendo Joy-Cons will have 2 devices each (4 in total). | |||
You may need to add the users to a specific group to be allowed access. On Arch Linux this group is ''input''. | |||
It took me a bit of time figuring out which axis corresponds with the right motion control in Dolphin. '''These axis might change in the future when evdev standardizes them. | |||
''' | |||
{| class="wikitable" | {| class="wikitable" | ||
!Dolphin motion | !Dolphin motion | ||
! | !Switch controllers | ||
!Sony DualSense/DualShock4 | |||
|- | |- | ||
|Accel Up | |Accel Up | ||
|Accel Z+ | |Accel Z+ | ||
|Accel Y+ | |||
|- | |- | ||
|Accel Down | |Accel Down | ||
|Accel Z- | |Accel Z- | ||
|Accel Y- | |||
|- | |- | ||
|Accel Left | |Accel Left | ||
|Accel Y+ | |Accel Y+ | ||
|Accel X- | |||
|- | |- | ||
|Accel Right | |Accel Right | ||
|Accel Y- | |Accel Y- | ||
|Accel X+ | |||
|- | |- | ||
|Accel Forward | |Accel Forward | ||
|Accel X+ | |Accel X+ | ||
|Accel Z- | |||
|- | |- | ||
|Accel Backward | |Accel Backward | ||
|Accel X- | |Accel X- | ||
|Accel Z+ | |||
|- | |- | ||
|Pitch Up | |Pitch Up | ||
|Gyro Y- | |Gyro Y- | ||
|Gyro X+ | |||
|- | |- | ||
|Pitch Down | |Pitch Down | ||
|Gyro Y+ | |Gyro Y+ | ||
|Gyro X- | |||
|- | |- | ||
|Roll Left | |Roll Left | ||
|Gyro X- | |Gyro X- | ||
|Gyro Z+ | |||
|- | |- | ||
|Roll Right | |Roll Right | ||
|Gyro X+ | |Gyro X+ | ||
|Gyro Z- | |||
|- | |- | ||
|Yaw Left | |Yaw Left | ||
|Gyro Z+ | |Gyro Z+ | ||
|Gyro Y+ | |||
|- | |- | ||
|Yaw Right | |Yaw Right | ||
|Gyro Z- | |Gyro Z- | ||
|Gyro Y- | |||
|} | |} | ||
Line 54: | Line 65: | ||
[[File:Select_imu_device.png]] | [[File:Select_imu_device.png]] | ||
Select the corresponding Accel or Gyro axis, select it and click | Select the corresponding Accel or Gyro axis, select it and click OK. For example for ''Accel Up'' in Dolphin you need to select ''Accel Z+''. The end result should look like below. | ||
[[File:Advanced_config_result.png]] | [[File:Advanced_config_result.png]] | ||
Repeat this for every motion. | Repeat this for every motion. | ||
[[Category:Tutorials]] |
Revision as of 11:30, 14 May 2022
Dolphin supports the motion evdev devices but setting it up is a bit awkward. Nintendo Switch controllers (Joy-Con and Pro controller) are supported through the hid-nintendo driver. Sony DualShock 4 and DualSense through hid-sony/hid-playstation.
The HID kernel driver exposes 2 (or more) evdev devices, one for the buttons and another for the accelerators/gyroscopes. The hid-nintendo driver exposes the motion axis on an "IMU" device while hid-playstation named it "Wireless Controller Motion Sensors". Do note that Nintendo Joy-Cons will have 2 devices each (4 in total).
You may need to add the users to a specific group to be allowed access. On Arch Linux this group is input.
It took me a bit of time figuring out which axis corresponds with the right motion control in Dolphin. These axis might change in the future when evdev standardizes them.
Dolphin motion | Switch controllers | Sony DualSense/DualShock4 |
---|---|---|
Accel Up | Accel Z+ | Accel Y+ |
Accel Down | Accel Z- | Accel Y- |
Accel Left | Accel Y+ | Accel X- |
Accel Right | Accel Y- | Accel X+ |
Accel Forward | Accel X+ | Accel Z- |
Accel Backward | Accel X- | Accel Z+ |
Pitch Up | Gyro Y- | Gyro X+ |
Pitch Down | Gyro Y+ | Gyro X- |
Roll Left | Gyro X- | Gyro Z+ |
Roll Right | Gyro X+ | Gyro Z- |
Yaw Left | Gyro Z+ | Gyro Y+ |
Yaw Right | Gyro Z- | Gyro Y- |
As the default buttons are all wrong reset all buttons in the Wii Remote configuration. To configure the motion controls you have to use the advanced config window. Right click on each motion button in the Wii Remote configure window. Select the appropriate IMU device at the top in the device selection.
Select the corresponding Accel or Gyro axis, select it and click OK. For example for Accel Up in Dolphin you need to select Accel Z+. The end result should look like below.
Repeat this for every motion.