[maemo-developers] N810: shift+fn+N or M generate two keycodes each

From: Frantisek Dufka dufkaf at seznam.cz
Date: Tue Feb 12 17:17:11 EET 2008
Hi,

I have device with german keys. I've been playing with changing 
/usr/share/11/xkb/symbols/nokia_vndr/rx-44 and adding my custom 
keymappings. Mapped 'Tab' '`' '|' to Fn + 'space' ',' '.' with no 
problem. Also found that there is third and fourth column duplicated and 
one could in fact press left shift + fn quite easily with thumb (shift 
first) to access fourth column. Succesfully mapped 'K','L' which gives 
with fn only '(' ')' to give me '[' ']' with shift+fn. Then tried same 
trick with  'N','M' giving '<' '>' to give me '{' '}'  but each of them 
print "{}" instead of just '{' or '}'.

Switched to unmodified English layout to disable my changes but pressing 
N also print two characters instead of one - dollar and euro sign.

Verified also with xev and when I press shift+fn+N I see two key press 
and release events generated for N.

KeyPress event, serial 20, synthetic NO, window 0x1800001,
     root 0x3e, subw 0x0, time 237914792, (32,305), root:(112,365),
     state 0x0, keycode 50 (keysym 0xffe1, Shift_L), same_screen YES,
     XLookupString gives 0 characters:  ""

KeyPress event, serial 23, synthetic NO, window 0x1800001,
     root 0x3e, subw 0x0, time 237916134, (32,305), root:(112,365),
     state 0x1, keycode 216 (keysym 0xfe03, ISO_Level3_Shift), 
same_screen YES,
     XLookupString gives 0 characters:  ""

KeyPress event, serial 23, synthetic NO, window 0x1800001,
     root 0x3e, subw 0x0, time 237918277, (32,305), root:(112,365),
     state 0x81, keycode 57 (keysym 0x7b, braceleft), same_screen YES,
     XLookupString gives 1 characters:  "{"

KeyPress event, serial 23, synthetic NO, window 0x1800001,
     root 0x3e, subw 0x0, time 237918277, (32,305), root:(112,365),
     state 0x81, keycode 58 (keysym 0x7d, braceright), same_screen YES,
     XLookupString gives 1 characters:  "}"

KeyRelease event, serial 23, synthetic NO, window 0x1800001,
     root 0x3e, subw 0x0, time 237918430, (32,305), root:(112,365),
     state 0x81, keycode 57 (keysym 0x7b, braceleft), same_screen YES,
     XLookupString gives 1 characters:  "{"

KeyRelease event, serial 23, synthetic NO, window 0x1800001,
     root 0x3e, subw 0x0, time 237918430, (32,305), root:(112,365),
     state 0x81, keycode 58 (keysym 0x7d, braceright), same_screen YES,
     XLookupString gives 1 characters:  "}"

KeyRelease event, serial 23, synthetic NO, window 0x1800001,
     root 0x3e, subw 0x0, time 237918625, (32,305), root:(112,365),
     state 0x81, keycode 216 (keysym 0xfe03, ISO_Level3_Shift), 
same_screen YES,
     XLookupString gives 0 characters:  ""

I tried all other keys on keyboard and no other keys do it when shift 
and fn are pressed, just 'N' and 'M'. Can anyone with no modifications 
done on your device press left shift+fn+n and see if two keys are 
generated too?

Is this bug in mapping somewhere deeper than xkb or can this phantom key 
be some HW limitation when those 3 keys are pressed?

Frantisek

More information about the maemo-developers mailing list