Bug 13356 - Keycodes problems with Logitech LX710
Summary: Keycodes problems with Logitech LX710
Status: RESOLVED DUPLICATE of bug 11227
Alias: None
Product: xorg
Classification: Unclassified
Component: Input/evdev (show other bugs)
Version: 7.2 (2007.02)
Hardware: All Linux (All)
: low minor
Assignee: Zephaniah E. Hull
QA Contact: Xorg Project Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2007-11-22 08:08 UTC by Marco Chiappero
Modified: 2011-09-19 00:12 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Attachments

Description Marco Chiappero 2007-11-22 08:08:00 UTC
A few weeks ago I received a brand new Logitech Desktop LX710, including one single USB receiver, one mouse and one keyboard with many extra and multimedia keys. I immediately discovered that many extra keys were non functioning (using the "kbd" driver and "pc105" as XkbdModel). After some tests I realized that these keys have a keycode > 255 and so X ignores them. So I tried modifing my xorg.conf in this way:

Section "InputDevice"
         Identifier      "Generic Keyboard"
         Driver          "evdev"
         Option          "Phys"          "usb-0000:00:02.0-1/input0"
         Option          "CoreKeyboard"
         Option          "XkbModel"      "evdev"
         Option          "XkbLayout"     "it"
EndSection

Section "InputDevice"
         Identifier      "Extra Keyboard"
         Driver          "evdev"
         Option          "Phys"          "usb-0000:00:02.0-1/input1"
         Option          "SendCoreEvents"
         Option          "XkbModel"      "evdev"
         Option          "XkbLayout"     "it"
EndSection

and now every single key is working. But unfortunately mapping keycodes > 255 into a 8-255 range with the formula X keycode = ((kernel keycode + 8) mod 256  -- is it right?) makes different keys share the same X keycode. So all the keys are now working but still some of them are unusable. This seems to be a problem for a growing number of today's keyboards. Is there any workaround? Is it possibile to make all the extra keys work without "colliding"?
However I think that developers should consider adding keycodes support for values grater than 255 without waiting for X12: such keyboards are now the standard for the high and medium level market.

Regards
Comment 1 Peter Hutterer 2008-02-28 19:14:08 UTC
(In reply to comment #0)
> the "kbd" driver and "pc105" as XkbdModel). After some tests I realized that
> these keys have a keycode > 255 and so X ignores them. 

the core protocol can't do more than 255 key codes. we only have 8 bit and this isn't gonna change until X12. 

> and now every single key is working. But unfortunately mapping keycodes > 255
> into a 8-255 range with the formula X keycode = ((kernel keycode + 8) mod 256 
> -- is it right?) makes different keys share the same X keycode. So all the keys
> are now working but still some of them are unusable. This seems to be a problem
> for a growing number of today's keyboards. Is there any workaround? Is it
> possibile to make all the extra keys work without "colliding"?

you need two keymaps and flick them arround appropriately. 
see also http://lists.freedesktop.org/archives/xorg/2007-December/031539.html
Comment 2 Jeremy Huddleston Sequoia 2011-09-19 00:12:00 UTC

*** This bug has been marked as a duplicate of bug 11227 ***


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.