Logitech Media Keyboard Elite not fully supported
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
xkeyboard-config (Ubuntu) |
Confirmed
|
Medium
|
Unassigned |
Bug Description
The media keys on the Logitech Media Keyboard Elite are not supported properly - the layout appears to be different than the others already included and the kernel does not recognise many of the media/extra keys. Currently I have the keyboard hooked up through the USB port.
I have made the following changes to my system to attempt to support this keyboard. Caution: Pressing the key I have mapped as XF86LaunchC (F11 with the F-mode light off) will reliably crash and reboot the system - I have no idea why.
At boot time, the following script is run to map the scancodes to the console level codes. I assume that this keyboard really requires fixes in the kernel code to recognise this keyboard without the use of extra scan codes.
# Kernel level keycode mappings for the Logitech Media Keyboard Elite USB
# 6a 190 Zoom In
# e004 191 Zoom Out
# 6b 192 Zoom Reset
# e011 193 Messenger
# e05a 194 Mode F (switch function keys)
# e03b 195 (F1 )Help
# e03c 196 (F2 )Word
# e03d 197 (F3 )Excel
# e03e 198 (F4 )Powerpoint
# e03f 199 (F5 )Undo
# e040 200 (F6 )Redo
# e041 201 (F7 )Print
# e042 202 (F8 )Save
# e043 203 (F9 )Box A
# e044 204 (F10)Box B
# e057 205 (F11)Box C
# e058 206 (F12)Box D
setkeycodes \
6a 190 \
e004 191 \
6b 192 \
e011 193 \
e05a 194 \
e03b 195 \
e03c 196 \
e03d 197 \
e03e 198 \
e03f 199 \
e040 200 \
e041 201 \
e042 202 \
e043 203 \
e044 204 \
e057 205 \
e058 206
# -------
I also made the following alterations to the symbols in /etc/X11/
--- inet.20060516 2006-05-16 20:44:30.000000000 -0400
+++ inet 2006-05-16 20:59:41.000000000 -0400
@@ -1244,6 +1244,39 @@
key <I2D> { [ XF86AudioRaiseV
};
+// Logitech Media Keyboard Elite
+partial alphanumeric_keys
+xkb_symbols "logimedelite" {
+ include "inet(logitech_
+
+ key <K5A> { [ XF86ZoomIn ] };
+ key <K74> { [ XF86ZoomOut ] };
+ key <I79> { [ XF86Clear ] };
+ key <I22> { [ XF86AudioPlay, XF86AudioPause ] };
+ key <I24> { [ XF86AudioStop ] };
+ key <I19> { [ XF86AudioNext ] };
+ key <K6D> { [ XF86Messenger ] };
+ key <K21> { [ XF86Calculator ] };
+ key <K6F> { [ XF86ModeLock ] };
+
+ key <I15> { [ XF86Help ] };
+ key <I16> { [ XF86Word ] };
+ key <I1A> { [ XF86Excel ] };
+ key <I1B> { [ XF86Finance ] };
+
+ key <I27> { [ XF86Back ] };
+ key <I28> { [ XF86Forward ] };
+ key <I29> { [ XF86Book ] };
+ key <I2B> { [ XF86Save ] };
+
+ key <I2C> { [ XF86LaunchA ] };
+ key <I2D> { [ XF86LaunchB ] };
+ key <I25> { [ XF86LaunchC ] };
+ key <I2F> { [ XF86LaunchD ] };
+
+};
+
+
partial alphanumeric_keys
xkb_symbols "logiultrax" {
include "inet(logitech_
Then the three rules files in /etc/X11/xkb/rules were updated as follows:
toby@nexus:
--- base.20060516 2006-05-16 21:00:45.000000000 -0400
+++ base 2006-05-16 21:01:43.000000000 -0400
@@ -38,7 +38,7 @@
ltcd logiaccess logicdp logicdpa logicdit logicink logiciink \
- logiinkse logiinkseusb logiitc logiik itouch logiultrax \
+ logiinkse logiinkseusb logiitc logiik itouch logimedelite logiultrax \
toby@nexus:
--- base.lst.20060516 2006-05-16 21:00:54.000000000 -0400
+++ base.lst 2006-05-16 21:02:59.000000000 -0400
@@ -78,6 +78,7 @@
logiitc Logitech iTouch Cordless Keyboard (model Y-RB6)
logiik Logitech Internet Keyboard
itouch Logitech iTouch
+ logimedelite Logitech Media Keyboard Elite (model Y-BN52)
logiitc Logitech iTouch Cordless Keyboard (model Y-RB6)
logiik Logitech Internet Keyboard
logiink Logitech Internet Navigator Keyboard
toby@nexus:
--- base.xml.20060516 2006-05-16 21:01:01.000000000 -0400
+++ base.xml 2006-05-16 21:06:56.000000000 -0400
@@ -2067,6 +2067,14 @@
</model>
<model>
<configItem>
+ <name>logimedel
+ <description>
+ <description xml:lang=
+ </configItem>
+ </model>
+ <model>
+ <configItem>
After all these changes are made, the appropriate keyboard layout can be selected in the GNOME keyboard layout chooser and used. It appears to function well (with the exception of the system crash for XF86LaunchC).
Changed in xkeyboard-config: | |
status: | Unconfirmed → Confirmed |
Confirming this. Solution looks Ok.