[RFC][PATCH 0/2] HID: wiimote: proper joystick device support

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



The Wii Remote driver exposes three input devices for each connected Wii
Remote: a main device for buttons and rumble, the accelorometer and the
IR camera.

Since the main device exposes a BTN_A, it is considered to be a gamepad
from the input subsystem, and it gets handled as a joystick, accessible
via the appropriate /dev/input/jsN device. However, since the input
device itself does not expose any positional information, it appears as
a joystick with no axes (and 7 buttons).

The following two patches try to fix this problem by allowing buttons to
also be exposed via the Accelerometer input device. This way this device
also becomes a joystick, this time fully functional (three axes, 7
buttons).

The patchset is marked as RFC because I'm not 100% satisfied with the
solution. Although it does make the device usable as joystick in software
that does not have support for it otherwise, it presents two problems:

(1) button presses are reported twice, so one has to e.g. disable input
from the main device in software that supports both keyboards and
joysticks at the same time;
(2) the main device is still reported as a gamepad and caught by the
joydev driver.

A possible solution (not yet implemented in this patchset) for issue #1
would be to have a control (accessible via e.g. the /sys interface) to
select the device(s) for which the keys are reported.

For issue #2 there are two possible solutions: an explicit blacklist of
the the Wii Remote main device, or a fine-tuning of joydev_ids list.

Suggestions and critism welcome.

Giuseppe Bilotta (2):
  HID: wiimote: refactor key reporting
  HID: wiimote: report keys in Accelerometer too

 drivers/hid/hid-wiimote-core.c |   44 ++++++++++++++++++++--------------------
 1 file changed, 22 insertions(+), 22 deletions(-)

-- 
1.7.10.rc3.204.g95589

--
To unsubscribe from this list: send the line "unsubscribe linux-input" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Media Devel]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Linux Wireless Networking]     [Linux Omap]

  Powered by Linux