153373 n00b
![n00b n00b](/images/ranks/rank_rect_0.gif)
Joined: 03 Dec 2006 Posts: 8
|
Posted: Sun Jul 06, 2008 10:56 pm Post subject: Sony Ericsson as HID remote via bluetooth: wrong key mapping |
|
|
Hi there,
I use my Sony Ericsson W880i as a remote control for my gentoo. Most things work fine, but some of the keys are mapped to wrong keycodes.
One example. In one configuration I set button "1" on my handy to the arrow key left (via Sony Ericsson Bluetooth Remote Control, Windows Utility). Using this configuration, the usb hid debug messages for this key are the following:
drivers/hid/hid-core.c: report (size 9) (numbered)
drivers/hid/hid-core.c: report 1 (size = 00 00 50 00 00 00 00 00
hid-debug: input Keyboard.00e0 = 0
hid-debug: input Keyboard.00e1 = 0
hid-debug: input Keyboard.00e2 = 0
hid-debug: input Keyboard.00e3 = 0
hid-debug: input Keyboard.00e4 = 0
hid-debug: input Keyboard.00e5 = 0
hid-debug: input Keyboard.00e6 = 0
hid-debug: input Keyboard.00e7 = 0
hid-debug: input Keyboard.0050 = 1
drivers/hid/hid-core.c: report (size 9) (numbered)
drivers/hid/hid-core.c: report 1 (size = 00 00 00 00 00 00 00 00
hid-debug: input Keyboard.00e0 = 0
hid-debug: input Keyboard.00e1 = 0
hid-debug: input Keyboard.00e2 = 0
hid-debug: input Keyboard.00e3 = 0
hid-debug: input Keyboard.00e4 = 0
hid-debug: input Keyboard.00e5 = 0
hid-debug: input Keyboard.00e6 = 0
hid-debug: input Keyboard.00e7 = 0
hid-debug: input Keyboard.0050 = 0
So key 0x50 is pressed and released. According to the USB Usage Tables this hexcode is the correct code for "Keyboard LeftArrow".
But xev tells me that keycode 113 is received (I think that is F13):
KeyPress event, serial 30, synthetic NO, window 0x4800001,
root 0x13a, subw 0x0, time 4203859493, (969,352), root:(973,404),
state 0x0, keycode 113 (keysym 0xfe03, ISO_Level3_Shift), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False
KeyRelease event, serial 30, synthetic NO, window 0x4800001,
root 0x13a, subw 0x0, time 4203859554, (969,352), root:(973,404),
state 0x80, keycode 113 (keysym 0xfe03, ISO_Level3_Shift), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False
In the kernel source hid-input.c, hid_keyboard[0x50] = 105, so I don't really understand what's going on.
Can anyone help me?
Best regards
Stephan
[I] sys-kernel/gentoo-sources
Installed versions: 2.6.25-r6(2.6.25-r6)(01:22:33 02.07.2008)(-build -symlink)
[I] net-wireless/bluez-gnome
Installed versions: 0.26(18:50:12 26.05.2008)(gnome -debug)
[I] net-wireless/bluez-libs
Installed versions: 3.32(19:39:46 16.06.2008)(-debug)
[I] net-wireless/bluez-utils
Installed versions: 3.30(10:54:15 24.06.2008)(alsa cups gstreamer hal usb -debug -examples -old-daemons -test-programs) |
|