[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#372909: [Fwd: Bug#372909: Support for 'Cherry CyMotion Master LINUX' keyboard]



On Fri, 02 Feb 2007 16:33:12 +0100
Fabian Greffrath <fabian.greffrath@web.de> wrote:

> [...]
> 
> You see, there are still some issues left with the keyboard. Some keys
> are recognized wrongly, some are not recognized at all.
> 

You *need* the init script. The problem is that the kernel doesn't listen
to some of the keyboard scancodes. You have to add them by using
setkeycodes(8). X(KB) can't do much about that. Check the script in my
first post. These settings work for me, for all keys. They will likely
work for you too.

media:  state 0x10, keycode 129 (keysym 0x1008ff32, XF86AudioMedia),
home:   state 0x10, keycode 130 (keysym 0x1008ff33, XF86MyComputer),
reload: state 0x10, keycode 231 (keysym 0x1008ff73, XF86Reload),
play:   state 0x10, keycode 162 (keysym 0x1008ff14, XF86AudioPlay),
stop:   state 0x10, keycode 164 (keysym 0x1008ff15, XF86AudioStop),
prev:   state 0x10, keycode 144 (keysym 0x1008ff16, XF86AudioPrev),
next:   state 0x10, keycode 153 (keysym 0x1008ff17, XF86AudioNext),
eject:  state 0x10, keycode 204 (keysym 0x1008ff2c, XF86Eject),
...

(Don't mind any different KeySym names, I'm using my own definition, but
the XKB one has all the same keycodes now.)

Again, if you don't initialise the keycodes with setkeycodes, the kernel
will not send scancodes for some of the keys – like the ones on the side
– and X(KB) will not be able to recognise them.

My xorg.conf keyboard section:

Section "InputDevice"
    Identifier  "Generic Keyboard"
    Driver      "kbd"
    Option      "CoreKeyboard"
    #Option     "XkbRules"  "xorg"
    Option      "XkbModel"  "cherrycymoli"
    Option      "XkbLayout" "eu_intl"
    Option      "XkbOptions"    "grp:caps_toggle,grp_led:caps"
    Option      "XkbGeometry"   "pc(pc104)"
    #Option     "XkbVariant"    "nodeadkeys"
EndSection

If you have an extra "less/greater than" button in the lower left corner,
change pc104 to pc105. Change XkbLayout to the layout of your country
(eu_intl does not exist, it's something I wrote to get better support for
more European languages and UTF-8 punctuation characters in one single
keyboard definition). Change XkbModel to 'cymotionlinux'.

Apart from that, as you probably know, you need to bind the keys to
actions in KDE or Gnome, if they are not set already. Note that last time
I messed with keybindings in Gnome, it did not recognise some modifiers –
KDE's keybinding facilities are far better and more flexible.

What concerns X(KB), I don't think there are any problems left with the
keyboard definition in xkb/symbols/inet, which is what this bugreport is
currently assigned to.



Reply to: