Bug 7893 - Logitech Media Elite keyboard support
Summary: Logitech Media Elite keyboard support
Status: RESOLVED FIXED
Alias: None
Product: xkeyboard-config
Classification: Unclassified
Component: General (show other bugs)
Version: unspecified
Hardware: x86 (IA32) Linux (All)
: high enhancement
Assignee: xkb
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2006-08-15 14:06 UTC by Andre Smit
Modified: 2008-12-17 08:52 UTC (History)
2 users (show)

See Also:
i915 platform:
i915 features:


Attachments
output of xev (9.63 KB, text/plain)
2007-04-30 15:15 UTC, Paul Menzel
Details
scancode keycode mapping for linux kernel (955 bytes, text/plain)
2007-04-30 15:17 UTC, Paul Menzel
Details
Thue's xorg.conf, at the request of Paul Menzel (3.09 KB, text/plain)
2007-05-13 08:36 UTC, Thue Janus Kristensen
Details

Description Andre Smit 2006-08-15 14:06:12 UTC
Hello,

A few months ago i bought an Logitech Media Elite keyboard. The keyboard used 
before was well supported by X but this one is a "disaster". I would like to 
use the additional keys like volume and e-mail. Especially the volume settings 
are important for me cause i use the system for special parties.

Now the problem is that these keys simply don't work with the default Generic 
105 intl keyboard i have selected. The Media Elite keyboard is not in the 
supported list from "xorgconfig". With the upcomming 7.1 release of X.org it 
would be nice if there are some improvements in the support of media keyboards.

Thanks
Comment 1 Sergey V. Udaltsov 2006-09-05 15:41:30 UTC
First, you can try other Logitech keyboards in X. They have a lot in common - so
may be one of them will work for you. If not - ou are the only person who can
help (well, at least I cannot - I do not have that keyboard). 
Look at the format of symbols/inet file in XKB repository, look at the output of
xev utility while you press special keys - and try to figure out what would be
the keycodes and corresponding keysyms. It is not difficult indeed.
Looking forward to getting a patch from you:)
Comment 2 Andre Smit 2006-09-06 07:52:55 UTC
Thank you for your reply. I am not a developper so when you ask me to build a
patch it would be one full of bugs ;-). Is it possible to enter the keycoded in
some comment or do you prefer receiving it by mail?

I tried several other supported keyboards but it looks like this one differs
from the others. 

Comment 3 Sergey V. Udaltsov 2006-09-06 10:07:10 UTC
> Thank you for your reply. I am not a developper so when you ask me to build a
> patch it would be one full of bugs ;-). 
My patch would be even more buggy since I do not have your keyboard model:)

> Is it possible to enter the keycoded in some comment or do you prefer
receiving it by mail?
If you look at the output of xev, find keycodes and just put here all pairs
<keycode>-<key> - it should be enough I think.
Comment 4 Paul Menzel 2007-04-21 11:25:54 UTC
Hi there.

I reported this "bug" under Debian [1].

> If you look at the output of xev, find keycodes and just put here all pairs
> <keycode>-<key> - it should be enough I think.

To sum it up. For me the model logiinkseusb works for most of the keys. Unfortunately five keys are not working. But strangely

sudo showkey -s

does not show any event either for those keys.

Some people have already set this up and posted their keycodes. I will paste the URLs of these sites.

[2] https://bugs.launchpad.net/ubuntu/+source/xkeyboard-config/+bug/46586
[3] http://www.linuxinfusion.com/configuring-logitech-media-keyboard-elite-linux
[4] http://georges.roux.pacageek.org/WebPortal/tutoriels/logitech_media_keyboard_elite_linux.html  (french)

If this is not helpful, please tell me what else I should do.

Note: As I have reported in [1]. My "Startseite" (Homepage-Key) sends the keycode 130 in contrast to 178 at [3].


So far, thanks for your effort.

Paul

[1] http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=384801
Comment 5 Sergey V. Udaltsov 2007-04-21 13:16:27 UTC
> To sum it up. For me the model logiinkseusb works for most of the keys.
> Unfortunately five keys are not working. But strangely
> 
> sudo showkey -s
> 
> does not show any event either for those keys.
Did you try xev? If it does not show anything - XKB cannot help you :/
Comment 6 Paul Menzel 2007-04-21 13:55:36 UTC
Thank you for the quick reply.

(In reply to comment #5)
> > To sum it up. For me the model logiinkseusb works for most of the keys.
> > Unfortunately five keys are not working. But strangely
> > 
> > sudo showkey -s
> > 
> > does not show any event either for those keys.
> Did you try xev? If it does not show anything - XKB cannot help you :/

I did try xev and it did not show anything. Maybe I have to check out, if the keyboard is working correctly using a different computer.

Two more things.

1. Beside my problems. The other user from the websites appear to have those keys working, with the documented scancodes and then using setkeycodes. Does anybody know, who decides in what keycodes the scancodes have to be translated (man setkeycodes).

2. I found some wrong key mappings in logiinkseusb for the Logitech Media Keyboard Elite. Here are the "wrong" mappings, I found.

a) Play/Pause button 162 is mapped to XF86AudioNext
The right Forward button 153 is also mapped to XF86AudioNext

b) Calculator/Finance button 161 is mapped to XF86VendorHome


So when that "F Mode"-Key is working, some more keybindings will be available (see URL in my previous message).

Is there a chance to get this into xkeyboard-config?


Thanks.

Paul
Comment 7 Sergey V. Udaltsov 2007-04-21 15:55:01 UTC
> 2. I found some wrong key mappings in logiinkseusb for the Logitech Media
> Keyboard Elite. Here are the "wrong" mappings, I found.
> 
> a) Play/Pause button 162 is mapped to XF86AudioNext
> The right Forward button 153 is also mapped to XF86AudioNext
> 
> b) Calculator/Finance button 161 is mapped to XF86VendorHome
Could you please press these 3 keys in xev - and provide the results?

> Is there a chance to get this into xkeyboard-config?
Well, it depends on the results of your investigation - why these keys do not generate events and how to make them "visible".
Comment 8 Paul Menzel 2007-04-21 23:01:35 UTC
(In reply to comment #7)

Good Morning.

> > 2. I found some wrong key mappings in logiinkseusb for the Logitech Media
> > Keyboard Elite. Here are the "wrong" mappings, I found.
> > 
> > a) Play/Pause button 162 is mapped to XF86AudioNext
> > The right Forward button 153 is also mapped to XF86AudioNext
> > 
> > b) Calculator/Finance button 161 is mapped to XF86VendorHome
> Could you please press these 3 keys in xev - and provide the results?

Here you go.


Play/Pause button:

KeyPress event, serial 30, synthetic NO, window 0x1600001,
    root 0x187, subw 0x0, time 400251613, (167,-10), root:(1203,422),
    state 0x0, keycode 162 (keysym 0x1008ff17, XF86AudioNext), same_screen YES,
    XKeysymToKeycode returns keycode: 153
    XLookupString gives 0 bytes:
    XmbLookupString gives 0 bytes:
    XFilterEvent returns: False

KeyRelease event, serial 30, synthetic NO, window 0x1600001,
    root 0x187, subw 0x0, time 400251837, (167,-10), root:(1203,422),
    state 0x0, keycode 162 (keysym 0x1008ff17, XF86AudioNext), same_screen YES,
    XKeysymToKeycode returns keycode: 153
    XLookupString gives 0 bytes:


Forward button:

KeyPress event, serial 30, synthetic NO, window 0x1600001,
    root 0x187, subw 0x0, time 400362375, (170,-11), root:(1206,421),
    state 0x0, keycode 153 (keysym 0x1008ff17, XF86AudioNext), same_screen YES,
    XLookupString gives 0 bytes:
    XmbLookupString gives 0 bytes:
    XFilterEvent returns: False

KeyRelease event, serial 30, synthetic NO, window 0x1600001,
    root 0x187, subw 0x0, time 400362407, (170,-11), root:(1206,421),
    state 0x0, keycode 153 (keysym 0x1008ff17, XF86AudioNext), same_screen YES,
    XLookupString gives 0 bytes:


Finance/Calculator button:

KeyPress event, serial 30, synthetic NO, window 0x1600001,
    root 0x187, subw 0x0, time 400405566, (169,-11), root:(1205,421),
    state 0x0, keycode 161 (keysym 0x1008ff34, XF86VendorHome), same_screen YES,    XLookupString gives 0 bytes:
    XmbLookupString gives 0 bytes:
    XFilterEvent returns: False

KeyRelease event, serial 30, synthetic NO, window 0x1600001,
    root 0x187, subw 0x0, time 400405758, (169,-11), root:(1205,421),
    state 0x0, keycode 161 (keysym 0x1008ff34, XF86VendorHome), same_screen YES,    XLookupString gives 0 bytes:

 
> > Is there a chance to get this into xkeyboard-config?
> Well, it depends on the results of your investigation - why these keys do not
> generate events and how to make them "visible".

Could you maybe already add this keyboard model with the known keys into xkeyboard-config and add the other keys later, when someone (including me) finds the cause for those five other keys?

Thank you.

Paul
Comment 9 Sergey V. Udaltsov 2007-04-24 15:40:43 UTC
Ok, so what you want is

keycode 153 = <I19> to be mapped to XF86AudioNext
keycode 161 = <I21> to be mapped to XF86Calculator
keycode 162 = <I22> to be mapped to XF86AudioPlay, XF86AudioPause 

Am I right? Could you please try Logitech Cordless Desktop LX-300 (logiclx300)?
Comment 10 Paul Menzel 2007-04-24 23:52:47 UTC
(In reply to comment #9)
> Ok, so what you want is
> 
> keycode 153 = <I19> to be mapped to XF86AudioNext
> keycode 161 = <I21> to be mapped to XF86Calculator
> keycode 162 = <I22> to be mapped to XF86AudioPlay, XF86AudioPause 
> 
> Am I right? Could you please try Logitech Cordless Desktop LX-300 (logiclx300)?

You are dead right. Looking for the Logitech Cordless Desktop LX-300 on the Internet, the model looks exactly the same besides that the LX-300 is wireless and includes a mouse and the Media Keyboard Elite has an USB cable.

But reading /usr/share/X11/xkb/symbols/inet, you will see that the mode keys are not defined as for example in logiinkse. The bug report at

https://bugs.launchpad.net/ubuntu/+source/xkeyboard-config/+bug/46586

has those included. But I have not had time to test my keyboard on another PC.

So is there a README file, where these overlappings of models are documented?

I would not close this bug yet, until those extra keys are included. If there is another bug report concerning the LX-300, maybe those could be merged. Searching for logiclx300 in Bugzilla I found 6967 and 7095, both closed and not addressing this issue.


Sorry, that I have not figured this out by myself. Thanks a lot.

Paul
Comment 11 Sergey V. Udaltsov 2007-04-25 15:41:44 UTC
> You are dead right. Looking for the Logitech Cordless Desktop LX-300 on the
> Internet, the model looks exactly the same besides that the LX-300 is wireless
> and includes a mouse and the Media Keyboard Elite has an USB cable.
Good!:)

> So is there a README file, where these overlappings of models are documented?
No, there is no such thing. But there is a plan to put it on wiki.

> Sorry, that I have not figured this out by myself. Thanks a lot.
Ok I will leave it as NEEDINFO. If you have any update - feel free to append.
Comment 12 Sergey V. Udaltsov 2007-04-25 17:05:02 UTC
Just created:
http://www.freedesktop.org/wiki/Software_2fXKeyboardConfig_2fModelsCompatibility

Your model is added.
Comment 13 Paul Menzel 2007-04-30 15:15:59 UTC
Created attachment 9821 [details]
output of xev

This is the output of xev after utilizing the extra keys with setkeycodes.
Comment 14 Paul Menzel 2007-04-30 15:17:57 UTC
Created attachment 9822 [details]
scancode keycode mapping for linux kernel

commands for utilizing the extra keys for Logitech Media Keyboard Elite
Comment 15 Paul Menzel 2007-04-30 15:26:59 UTC
(In reply to comment #11)
> Ok I will leave it as NEEDINFO. If you have any update - feel free to append.

Ok. Creating an attachment does not preserve the comment I had already written, but not commited. Well, who wants to get sleep anyways?

So here the status. I contacted the guy from linuxinfusion.com and he told me, he was using an USB/PS/2 adapter. He also got the keyboard back, just to help me out. So I got an adapter too. After using setkeycodes, the output of xev is attached [xev-ps2.txt]. The Button A box is mapped wrongly, so maybe a new model has to be created, but I leave this to you. I also do not know, if by using different keycodes for setkeycodes the output of xev changes--I did not find good information for this topic on the internet. Therefore it is attached too [setkeycodes-ps2.txt]. Futhermore I do not know, if the output of xev is different when using the USB.


Thanks,

Paul

PS: Using USB, I had no luck to get the multimedia keys working. I tried using the evdev driver, but xev did not show the events. Could someone please post the input device section of /etc/X11/xorg.conf , please?

Comment 16 Thue Janus Kristensen 2007-05-10 03:08:13 UTC
I can't get some of the keys on my Logitech Media Keyboard Elite to generate xev events; I think it may be explained here: http://keytouch.sourceforge.net/
Comment 17 Thue Janus Kristensen 2007-05-10 07:59:54 UTC
(In reply to comment #15)
> I also do not know, if by
> using different keycodes for setkeycodes the output of xev changes--I did not
> find good information for this topic on the internet. Therefore it is attached
> too [setkeycodes-ps2.txt]. Futhermore I do not know, if the output of xev is
> different when using the USB.

I do get output with xev for (F1) help while the keyboard is attached via USB. However, the output is 
KeyPress event, serial 31, synthetic NO, window 0x1a00001,
    root 0x63, subw 0x0, time 1987766209, (-596,472), root:(242,501),
    state 0x0, keycode 245 (keysym 0x0, NoSymbol), same_screen YES,
    XLookupString gives 0 bytes:
    XmbLookupString gives 0 bytes:
    XFilterEvent returns: False

KeyRelease event, serial 31, synthetic NO, window 0x1a00001,
    root 0x63, subw 0x0, time 1987766337, (-596,472), root:(242,501),
    state 0x0, keycode 245 (keysym 0x0, NoSymbol), same_screen YES,
    XLookupString gives 0 bytes:

i.e. keycode 245. This is different from the PS/2 code you attached
 # e03b 187 (F1 )Help
and also different from the Ubuntu bug previously linked (https://bugs.launchpad.net/ubuntu/+source/xkeyboard-config/+bug/46586)
 # e03b 195 (F1 )Help

So I guess setting the keycodes via setkeycodes does make a difference.
Comment 18 Paul Menzel 2007-05-12 00:00:00 UTC
(In reply to comment #17)
> (In reply to comment #15)
> > I also do not know, if by
> > using different keycodes for setkeycodes the output of xev changes--I did not
> > find good information for this topic on the internet. Therefore it is attached
> > too [setkeycodes-ps2.txt]. Futhermore I do not know, if the output of xev is
> > different when using the USB.
> 
> I do get output with xev for (F1) help while the keyboard is attached via USB.
> However, the output is 
> KeyPress event, serial 31, synthetic NO, window 0x1a00001,
>     root 0x63, subw 0x0, time 1987766209, (-596,472), root:(242,501),
>     state 0x0, keycode 245 (keysym 0x0, NoSymbol), same_screen YES,
>     XLookupString gives 0 bytes:
>     XmbLookupString gives 0 bytes:
>     XFilterEvent returns: False
> 
> KeyRelease event, serial 31, synthetic NO, window 0x1a00001,
>     root 0x63, subw 0x0, time 1987766337, (-596,472), root:(242,501),
>     state 0x0, keycode 245 (keysym 0x0, NoSymbol), same_screen YES,
>     XLookupString gives 0 bytes:
> 
> i.e. keycode 245. This is different from the PS/2 code you attached
>  # e03b 187 (F1 )Help
> and also different from the Ubuntu bug previously linked
> (https://bugs.launchpad.net/ubuntu/+source/xkeyboard-config/+bug/46586)
>  # e03b 195 (F1 )Help
> 
> So I guess setting the keycodes via setkeycodes does make a difference.

I think so too.


Could you please post, the distribution, the linux kernel version and the X version you are using. And also attach your X.org configuration file xorg.conf.

And that there are no misconceptions, you connected your keyboard using USB and setkeycodes is working for you using USB?


Thanks.

Paul
Comment 19 Thue Janus Kristensen 2007-05-12 11:36:52 UTC
(In reply to comment #18)
> (In reply to comment #17)
> > (In reply to comment #15)
> > > I also do not know, if by
> > > using different keycodes for setkeycodes the output of xev changes--I did not
> > > find good information for this topic on the internet. Therefore it is attached
> > > too [setkeycodes-ps2.txt]. Futhermore I do not know, if the output of xev is
> > > different when using the USB.
> > 
> > I do get output with xev for (F1) help while the keyboard is attached via USB.
> > However, the output is 
> > KeyPress event, serial 31, synthetic NO, window 0x1a00001,
> >     root 0x63, subw 0x0, time 1987766209, (-596,472), root:(242,501),
> >     state 0x0, keycode 245 (keysym 0x0, NoSymbol), same_screen YES,
> >     XLookupString gives 0 bytes:
> >     XmbLookupString gives 0 bytes:
> >     XFilterEvent returns: False
> > 
> > KeyRelease event, serial 31, synthetic NO, window 0x1a00001,
> >     root 0x63, subw 0x0, time 1987766337, (-596,472), root:(242,501),
> >     state 0x0, keycode 245 (keysym 0x0, NoSymbol), same_screen YES,
> >     XLookupString gives 0 bytes:
> > 
> > i.e. keycode 245. This is different from the PS/2 code you attached
> >  # e03b 187 (F1 )Help
> > and also different from the Ubuntu bug previously linked
> > (https://bugs.launchpad.net/ubuntu/+source/xkeyboard-config/+bug/46586)
> >  # e03b 195 (F1 )Help
> > 
> > So I guess setting the keycodes via setkeycodes does make a difference.
> 
> I think so too.
> 
> 
> Could you please post, the distribution,

Debian stable (Etch, 4.0)

> the linux kernel version

2.6.18

> and the X version you are using. 

1:7.1.0-16, the default xorg version in Debian

>And also attach your X.org configuration file xorg.conf.

I am not at that computer right now, but it is a totally standard unmodified xorg conf file. The keyboard section is just an unmodified "Generic keyboard" section.

> And that there are no misconceptions, you connected your keyboard using USB and
> setkeycodes is working for you using USB?

No, setkeycodes is not working. showkey does not show output for some of the keys.

However, xev does show keycodes for some of the keys which it seems is redefined  in your (Paul Menzel) attachment. For example the modified F1 (help). I have not done anything for this to happen.

As mentioned above, http://keytouch.sourceforge.net/ seems to have knowledge of why some keys are not working in USB mode.


Slightly unrelated, shouldn't "Logitech Media Keyboard Elite" be added to base.xml using the same keycodes as the identical wireless "Logitect Cordless Desktop LX-300"? The it will automatically figure in for example the KDE control center with the correct name. We can then always add the missing keys for both keyboards later.
Comment 20 Paul Menzel 2007-05-12 23:59:14 UTC
(In reply to comment #19)

[...]
 
> I am not at that computer right now, but it is a totally standard unmodified
> xorg conf file. The keyboard section is just an unmodified "Generic keyboard"
> section.

Since you are using USB, it would be interesting for me how it is setup in xorg.conf.

[...]
 
> However, xev does show keycodes for some of the keys which it seems is
> redefined  in your (Paul Menzel) attachment. For example the modified F1
> (help). I have not done anything for this to happen.

I have to try this again. But I am pretty sure that xev did not show anything when the keyboard was connected with USB.
 
> As mentioned above, http://keytouch.sourceforge.net/ seems to have knowledge of
> why some keys are not working in USB mode.

It is due to the input driver in the kernel.
 
> Slightly unrelated, shouldn't "Logitech Media Keyboard Elite" be added to
> base.xml using the same keycodes as the identical wireless "Logitect Cordless
> Desktop LX-300"? The it will automatically figure in for example the KDE
> control center with the correct name. We can then always add the missing keys
> for both keyboards later.

That was my idea, too. I was hoping Sergey V. Udaltsov was going to help me (see comment 15). And I think, there should be a model for PS/2 and for USB.


So far.

Paul
Comment 21 Thue Janus Kristensen 2007-05-13 08:36:38 UTC
Created attachment 9956 [details]
Thue's xorg.conf, at the request of Paul Menzel  

Thue's xorg.conf. I don't think there is anything non-standard in here, but Paul Menzel asked to see it just in case.
Comment 22 Benjamin Close 2008-01-11 02:37:45 UTC
Bugzilla Upgrade Mass Bug Change

NEEDSINFO state was removed in Bugzilla 3.x, reopening any bugs previously listed as NEEDSINFO.

  - benjsc
    fd.o Wrangler
Comment 23 Sergey V. Udaltsov 2008-12-17 08:52:59 UTC
Now, there is "Media Elite Keyboard" in the list, so hopefully everyone is happy. If not - feel free to reopen the bug!


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.